Метка: стартап

  • В IT с 2000 года

    В IT с 2000 года

    В IT с 2000 года. Заметки с консультаций, размышления о технологическом предпринимательстве и воспоминания о доисторическом IT.

    Чем полезен миру и могу быть полезен лично вам:
    🛠 Диджитал-агентствам — как ментор помогу выжить и вырасти в первые годы
    🚀 Стартапам — как CTO помогу со стеком, нанять подходящих программистов и наладить процессы в разработке
    💼 Фондам и инвесторам — как эксперт проведу технический due diligence аудит процесса разработки и продукта
    💻 Всем — карьерные консультации для разработчиков или вход в IT в любом возрасте

    11 фактов обо мне:
    🏆 Ментор года по версии Galera Awards 2024
    👨‍💻 Full-stack программист с 25-летним опытом. Мой первый сайт до сих пор онлайн, а я до сих пор пишу код
    🏗 4 раза строил диджитал-агентства и веб-студии
    🌍 Делал сайт 300-летия Петербурга, портал BBC на арабском языке и NFT-проект с Эрмитажем
    💥 Провалил стартап в стартап-инкубаторе
    🛒 Создавал, развивал, покупал и продавал интернет-магазины
    🏥 Создал и запустил интранет для медицинской IT-компании, который работает без меня уже 15 лет
    📀 Издал около 200 музыкальных альбомов с музыкантами из 45 стран. Сам не написал ни одного
    🪩 Организовывал концерты, вечеринки, рейвы и фестивали от 20 до 3000 человек в 5 странах
    🧢 Амбассадор клуба диджитал-агентств Galera
    🌲 Живу за городом, воспитываю собаку

    📬 Пишите: @vseznaika
    🗞 Читайте: @fullstack_founder

    ❤️ Буду рад вашим комментариям и сердечкам
    🖖 Давайте знакомиться! Напишите в комментариях, кто вы, и дайте ссылку на ваш канал

  • React vs Vue

    React vs Vue

    Сегодня получил замечательный вопрос, что выбрать — React или Vue для фронтэнда в стартапе. Кто не в курсе, это две доминирующие технологии для создания динамических интерфейсов. Их используют социальные сети или большие веб-сервисы.
    Замечательный он тем, что сегодня я на него отвечу по-разному, в зависимости от того, кто спрашивает.

    Спрашивает новичок-разработчик — выбирай Vue.
    – Он проще устроен, его легче изучить.
    – По отзывам нескольких команд и десятка разработчиков, на нём приятнее писать.
    – Он быстрее собирается и быстрее работает во время разработки. Разница не очень большая, но это приятно.
    – С ним проще начинать новые проекты.
    – Легче использовать повторно внутренние компоненты.
    – Vue-разработчиков меньше, чем у React. А значит меньше конкуренция и выше шансы попасть в хорошую команду.

    Спрашивает стартап — выбирай React.
    – На рынке больше разработчиков, значит конкуренция будет выше и будет проще найти хорошего сотрудника.
    – Как следствие — легче масштабировать команду.
    – Развитая экосистема — скорее всего, самые сложные технологические вопросы в экзотической области уже решены. Часто достаточно будет установить готовую библиотеку или плагин.
    – Реакт более узнаваемое слово, что может сыграть вам на руку при общении с инвесторами.

    Спрашивает опытный разработчик — он не спрашивает, он попробовал и сам вам расскажет почему нужно взять именно этот фреймворк.

    Правильного выбора здесь нет. React, Vue, Svelte, Ember, Preact, Solid, Alpine, Livewire, Angular, Backbone, Ext JS…

    Лучший фреймворк тот, который ваша команда уже знает и знает хорошо. Если у вашей команды есть ответ на чём писать — пишите на этом. Скорость важнее, а MVP в любом случае будет значительно переосмыслено и переписано через время.

    Посмотрите на цикл хайпа Gartner — он хорошо показывает, насколько технология готова к применению на практике. Не выбирайте самую новую технологию, не выбирайте самую хайповую. Берите ту, которая уже немного надоела и у которой очень высокая доля рынка. Выбирайте взрослое и популярное, это хотя бы безопасно. Именно скучные, хорошо знакомые технологии чаще всего приводят к выпуску продукта, а не к вечному рефакторингу.

  • План выхода на миллион

    План выхода на миллион

    Давно читал статью про движение успешных стартапов, которые не стали брать инвестиции. Один из самых известных таких проектов — Mailchimp. Компания с огромным оборотом осталась в руках основателей. Идея мне очень понравилась. Мысль окупаться и зарабатывать без внешних инвесторов засела в голове.
    Чтобы это получилось, мы (пока) не тратим время на привлечение инвестиций, а считаем, сходится ли экономика проекта. Сможем ли платить по счетам?

    Мы запустили новое направление, которое должно стать основой нашего процветания.

    Со средней покупки в этом направлении стартап зарабатывает 160 рублей — несколько процентов от сделки. Усилий по продаже практически нет, заказ оформляется клиентом без участия операторов и продавцов. Трафик условно бесплатный — мы уже получаем его через SEO. Чтобы заработать миллион, нам нужно продать 6500 заказов в месяц. Кажется, дохрена. Делим на 30 дней — примерно 220 заказов в день, теперь норм.

    Инвентарь для заказов поставляют партнёры, они же получают львиную долю выручки и приводят часть трафика в воронку.
    В данном проекте именно партнёры являются драйвером роста.

    По опыту и анализу средний партнёр приведёт 200-300 заказов за месяц. Это почти совпадает с расчётом выше — 220 заказов в день. Условно, прикинем, что нам нужно 30 действующих средних партнёров в каждом месяце.

    За прошлый год в нашей CRM было взаимодействие с 397 целевыми партнёрами, которым мы продали любую небольшую услугу. Задача ближайших месяцев — подключить 10% этой базы на новое направление.

    Выглядит всё реально. Пойду делать.

  • Как возглавить восстание машин

    Как возглавить восстание машин

    Небольшая памятка самому себе как внедрить AI в реальные процессы в проекте.

    Из-за хайпа вокруг AI и LLM складывается ощущение, что мы уже опоздали на их внедрение и нас уже обгоняют. Можно не тревожиться, роботы заведутся у всех. Нужно принять неизбежное и приготовить место для роботов в рабочих процессах.

    • В самом начале нужно забыть, что мы хотим внедрить AI. Думаем от задачи, а не от технологии.
    • Какой ценный конечный результат ожидается от этой роли?
    • Какие должностные инструкции мы для него создадим?
    • До компьютеров это решалось иначе. Продумать в точности по шагам, как бы это решал живой человек.
    • Ассистента нужно проектировать точно также, как проектируются компьютерные игры, финансовые автоматизации и учётные системы — на бумаге. В нашем случае — нарисовать блок-схему по шагам.
    • До того как втыкать везде AI, нужно разобраться где действительно нужен AI. Главный вывод всех AI-стартапов, пытающихся выполнять повторямые задачи реального мира — чем меньше участков с AI, тем меньше фронт ошибок.
    • Если можно обойтись без AI — лучше обойтись без AI: есть логика, весовые модели принятия решений, ML и даже участие человека. Подходить с умом.
    • Для каждого участка схемы выбираем подходящий способ автоматизации. Если принятое решение логическое (Да/Нет/И/Или/Если) — пусть принимает решение логический автомат с помощью прозрачного кода.
    • AI попадёт только в те участки, где нужно принимать осознанные решения. На практике это 1 из 5-10 действий.
    • Если разбить задачу на более простые участки, то некоторые участки могут выполнять более дешёвые и быстрые LLM-модели. Попробовать на практике, какая модель справится.
    • Также работает наоборот — самые чувствительные и сложные участки отдавать более умным и дорогим LLM-моделям.
    • Не забывать передавать полный контекст происходящего из памяти и прошлых шагов в агента.
    • Проверить, какие персональные данные в какие AI и API мы отдаём. Постараться не передавать ненужную для принятия решения чувствительную информацию.
    • Эксперименты демонстрируют, что LLM дает лучшие результаты, если его мотивировать. Поэтому в каждый промпт добавляем обещание денежного вознаграждения, повышения на работе и подчёркиваем значимость задачи в формулировке.
    • Исследования китайских учёных показывают, что наилучшие результаты дают топологии с участием нескольких AI-агентов.
    • Самый простой способ достичь качества — использовать на участке пару агентов Контролера и Исполнителя. Это эффективно устраняет нежелательные галлюцинации и другие сбои в ответах.
    • На каждый участок схемы нужна своя пара агентов.
    • Сложные топологии (звезда, дерево, mesh-сеть, рандом) улучшают качество, но в большинстве случаев можно ограничиться парой агентов.
    • Если нужно переводить результат — делать это на самом последнем шаге непосредственно перед отправкой пользователю. Так избежим каскадного накопления неточностей перевода при обработке на разных шагах.
    • Хранить все логи: сам запуск автоматизации, смена статуса, полученные после вставки переменных итоговые промпты (!), ответы AI. В общем, все шаги записывать.

    Вывод: до внедрения AI разложить процесс на шаги и понять в каком шаге нам нужен AI. И постараться обойтись без него.

  • Оргструктура для стартапа — как назначить всем должность

    Оргструктура для стартапа — как назначить всем должность

    Оргструктура для стартапа — как назначить всем должность.

    Пока компания небольшая и все делают всё, очень большой соблазн не проектировать структуру организации. Особо самоуверенные предприниматели игнорируют её годами. Грабли детские, поэтому бьют особенно больно ниже пояса.

    Я выписал всё, чем нам нужно заниматься. Разработкой всё не ограничивается. Огромное количество действий поглощает рабочие дни команды: продажи, редакция, партнёрская программа, маркетинг, PR, финансы, бухгалтерия, HR, секретарь, служба поддержки, продукт, разработка, дизайн, интеграции, тестирование, юридические аспекты, инвестиции.

    И попробовал рассортировать по кучкам. Потом на эти кучки можно будет приклеить ярлычки CEO, CFO, CMO, C3PO, R2D2…

    Через 40 минут сортировки на доске я понял, что у меня не стыкуется. Текущая команда и виртуальная структура с дырками… В общем, заставил GPT воображать себя венчурным инвестором и успешным предпринимателем, после чего скормил ему эту задачу. Описал всех участников, рассказал, кто чем занимается и дал список направлений деятельности.

    Такое распределение менеджмента получилось в итоге:
    1. CEO (Chief Executive Officer) + CTO (Chief Technology Officer). Генеральный + технический директор. Стратегия и руководство, технические вопросы, финансы, инвестиции.
    2. COO (Chief Operating Officer) + CRO (Chief Revenue Officer). Операционный директор + РОП. Продажи, управление редакцией, онбординг новых клиентов и сотрудников.
    3. Head of Design & UX/UI — Дизайнер.
    4. Head of Customer Support — Поддержка клиентов.
    5. Head of Marketing (потенциально CMO) — Маркетолог.

    Забавно, что AI назначает Head of, даже если в отделе один специалист. Но мы помним, что в стартапе карьерные ступеньки подставляют вниз. Ещё интересно, что не все участники команды получили позицию менеджера. Даже если этот участник в отделе один.

    Теперь дополнительная польза. Кого можно сейчас не нанимать?
    Chief Product Officer (CPO) — Директор по продукту. В нашем случае закрывается созданием продуктовой команды из CEO/CTO + COO + Design. Лучшее решение, спасибо искусственным мозгам! Что интересно — ровно так разработка у нас и происходит. Находка, что можно не выделять главного в этом процессе и продолжать работать коллективом.

    Chief Financial Officer (CFO) — Финансовый директор. Когда деньги появятся, тогда и возьмёте. Для меня отличным решением оказалось раннее выделение роли Chief Revenue Officer без довеса на эту роль функционала CFO. И правда, чем управлять? Продавайте пока и всё.

    HR-менеджер — Управление персоналом пока больше сводится к найму. Это закрывают сами CEO и COO, а что не смогут — отдать рекрутерам. Мы можем долго не нанимать выделенного HR, потому что оба фаундера много нанимали сами в других проектах.

    Юрист — аутсорсить на точечных консультациях (это мы уже начали) или взять агентство (а вот это пока навряд ли).

  • Как нанять разработчика: Вакансия

    Как нанять разработчика: Вакансия

    Данная инструкция отражает мой практический личный опыт.
    За последние 10 лет я нанял более 50 разработчиков на полный рабочий день. Описанное касается разработчиков категории Middle и выше. Вы можете делать всё совсем иначе и у вас тоже будет результат — это нормально.

    Основная задача — избегать прямого контакта с разработчиком как можно дольше. Разработчик не хочет, чтобы вы с ним разговаривали. Дайте ему подойти самостоятельно.

    Хорошая вакансия будет замечена в ходе регулярного обхода площадок с работой.

    Разработчик хочет прочитать вакансию и сразу для себя прояснить:
    – А можно ли на удалёнке? Можно ведь, да?
    – Описание архитектуры проекта одним предложением: “хайлоад екоммерс монолит на джанго с веб-мордой на реакте”.
    – В каком стеке и окружении работать, какой софт использовать.
    – Какого рода задачи он будет делать. Только честно, без украшательств.
    – На каком уровне требуется знать конкретные технологии.
    – Его место в команде — за что он отвечает, за что не отвечает.
    – Методологию работы: скрам, канбан, водопад, “молодой, динамично развивающийся стартап”.
    – Ритуалы: стендап, дейлики, покер-планирование, код-ревью, ретроспективы, багфикс-хакатоны и т.д.
    – С кем работать и контактировать, а с кем не контактировать (что не менее важно).
    – Количество и частота коммуникации.
    – Какую продуктивность ожидают. Как и в чём она измеряется?
    – Какая отчетность и зачем, кто её будет получать и проверять.
    – Какая реальная вилка оплаты на позиции и какие плюшки?

    Написав это, вы ответите на большую часть вопросов соискателя до первого личного контакта.

    В целом, больше ничего программиста не интересует 🙀

    Двух предложений о компании первым абзацом вполне достаточно.
    Миссия, ключевые клиенты, сколько человек использует продукт, место компании в рейтинге компаний, количество продажников, неизмеримые бонусы, корпоративная культура — программист слышит белый шум и видит пылинки на мониторе. Если вам нужно это написать для личного успокоения — напишите.

    Все отклики на такую вакансию будут двух типов:
    1. Осознанные отклики от целевых кандидатов
    2. Вдруг я проскочу и меня доучат как-нибудь

    Завтра покажу, как я отсеиваю первых от вторых.

  • Откуда трафик?

    Откуда трафик?

    Для большинства стартапов трафик — самая большая проблема. Без трафика нет клиентов. Реклама стоит денег, пиар стоит денег и усилий. Многие проекты не смогли отстроить математику привлечения клиентов: “воронки не сошлись”, а проекты закрылись.

    В агентстве я заметил, как в узких коммерческих нишах отлично работала стратегия SEO-продвижения через информационные запросы. То есть, не “купить синхрофазотрон”, а “какие бывают синхрофазотроны”. Хорошо продуманные публикации в течение года перекрывали по объёму трафика результаты команды по контекстной рекламе. Да, это были менее “горячие” клиенты. Но это были наши клиенты.

    SEO для стартапа обычно рассматривают не в первую очередь. Коммерческих запросов мало, трафика там тоже, до значимых результатов ждать месяцы. Запустили контекстную рекламу и норм. Ведь SEO — это не про быструю отработку гипотезы в рамках HADI-цикла.

    В своём проекте я никуда не спешил. Собрал черновое ядро, изучил конкурентов, нашёл “дырки” – запросы есть, а известные сайты в выдаче отвечают на эти запросы плохо. Легкая html-разметка, уважение к семантике, микроразметка, sitemap, open graph. Высокие показатели Google Page Speed, mobile-first. Первый сотрудник в редакции.

    Первые полгода было грустно…

  • Добро пожаловать в увлекательный аттракцион!

    Перезапуск формата: с сегодняшнего дня на этом канале я буду писать бортовой журнал и заметки по стартапу, который вырос из моего pet-проекта.

    Вводные следующие:
    – 30,000+ посетителей в месяц на сайте
    – 0 расходов на трафик
    – 0 денег фондов
    – Работает 13 человек (посчитал, удивился), все part time (!)
    – Месячный доход 100 тысяч рублей 😅, весь уходит на содержание штата.
    – Часть участников работает за 0 или за символические деньги на интересе уже больше года ❤️
    – Есть достижимый понятный план трансформации этой истории в SaaS на >1 млн дохода, в который я верю.
    – Я считаю, что мы можем обогнать всех конкурентов на этом рынке.
    – Конкурента в прошлом году купили за 1,000,000,000 (один миллиард) рублей 😳
    – Почти все моё время съедает диджитал-агентство заказной разработки и менторство других агентств и команд.

    PS: Пусть проект будет (пока) анонимным, это позволит мне не проводить посты через лишнего внутреннего цензора и палить внутрянку.

  • Сегодня бывшие коллеги прислали гифку

    Сегодня бывшие коллеги прислали гифку

    Сегодня бывшие коллеги прислали гифку с фейрверками. На ней почти ничего не видно, но в этом кадре очень многое.

    15 лет назад я написал первую строчку кода интранета для внутренних нужд компании, в которой работал. Сам придумал, что нам нужен интранет. Сам начал его писать и внедрять. На рынке был Sharepoint Portal, до выхода Битрикс24 было ещё полтора года.

    Прошло 15 лет – интранет очень мощно развивается силами внутренней команды.
    Почти 4000 активных пользователей – сотрудники, партнёры и клиенты. Все процессы и задачи компании происходят там.

    Я передал проект команде больше 10 лет назад и уволился делать стартапы.
    Смотрел пару недель назад на звонке актуальную версию интранета и удивлялся обновлениям.

    Интересное ощущение – продукт придумал и сделал ты, а он живёт свою успешную жизнь и ты слышишь про его успехи разве что случайно…

    Спасибо коллегам, что поддержали начинания 15 лет назад!