«Я наполовину разработчик, наполовину предприниматель. Если я могу построить что-то быстрое и эффективное, я делаю это сам», — презентует себя на своем сайте Никита Колмогоров. Летом 2021 года он продал бота-антиспамера за 329 000 $. Покупателем стал криптопроект 1inch.io. На момент сделки у бота было 20 703 474 пользователя в 190 621 чатах. Вместе с тем Колмогоров — автор почти трех десятков других проектов. По просьбе Мегаплана он рассказал об особенностях создания продуктов для Telegram и дал несколько советов начинающим предпринимателям.

Бот Shieldy

Идея родилась, когда в мое собственное активное и популярное сообщество в Telegram стало приходить много спама. Сначала я раздал админки активным участникам, но потом стало жалко их времени. Весь спам был однотипным, и баны можно было автоматизировать. 

За два дня написал первую версию Shieldy. Это было в 2018 году. Новички в чате либо проходили небольшую капчу, либо отправлялись в бан. Потом несколько лет я добавлял одну новую функцию за другой. Основная часть оставалась простой: добавил бота в чат, дал ему админку — забыл про спам. 

Никаких новых решений тут нет, я видел подобное в старых веб-чатах еще в 2007 году. 

Очевидные конкуренты ​​Shieldy — это ComBot Федора Скуратова, Controller Bot Олега, а недавно появился бот Miss Rosa. Конкуренты зачем-то пытаются сделать все-все-все в одном боте. Я придерживаюсь немного другой философии: каждый продукт с одной целью-функцией. 

На момент их запуска у Telegram был самый удобный API для разработчиков. Facebook Messenger ограничен, группы там редко используются, социальный рост бота обеспечивать тяжело. У остальных мессенджеров типа Viber и WhatsApp плохой API, не могу с ними работать.

Сегодня у меня еще 25 других проектов. Я хочу дойти до миллиарда пользователей, сейчас их более 60 миллионов. 

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

Идеи, польза и инвесторы

Идеи создания ботов возникают так же, как и для других продуктов. Вижу «боль» — записываю в длинный список идей, которые потом, может, и реализую. В списке есть даже самые безумные, ненужные, глупые или нереализуемые мысли.

В какой-то момент «мышца придумывания» развивается достаточно, чтобы мгновенно находить решения любой боли», которую замечаете. А когда появляется свободное время — открываю список, выбираю самую простую или интересную проблему и решаю ее.

Не нужно искать инвесторов или партнеров, готовых приобрести разработку. Создавайте продукты на пользу людям. Есть польза — будет спрос, а остальное придет. Главное — дать пользователям возможность получить пользу.

Продвигать бота нужно как и любой другой продукт: говорить о нем везде и всюду. У меня есть postyourstartup.com, по этому списку я пощу каждый свой запущенный продукт. Подробнее о том, как продвигать бота, я писал.

Особенности ботов в «телеге»

Одна из проблем ботов в Telegram: они не могут писать пользователям первыми. Поэтому капчу нельзя пройти в личке — только в общем чате. Бот может писать пользователю определенное количество сообщений в час. 

Bot API — это то, что мы видим в прямом смысле на bot.telegram.org/api. Это описание основных кейсов и методов работы с ботами в чате. 

User API используют все пользователи — телеграм-клиенты. Через него тоже можно делать ботов. Но нет удобных фреймворков под TypeScript или JavaScript, которые я использую. 

Поддержка Telegram по ботам не всегда работает быстро и эффективно. Есть ряд хардверных ограничений Telegram API (я так понимаю, что на Telegram API и Telegram Bot API работают две команды).

Каждый раз, создавая популярных ботов, я натыкаюсь на ограничения Telegram. Одно время ​​Shieldy слишком часто делал запросы к Telegram — потому что бот стал очень популярным, — и это давало сбой в работе мессенджера. Компания получает миллиарды долларов, и я — маленький, с серверами по 20 $ — довожу их серверы до 504-й ошибки.

Создаю разработчиков, а не ищу их

Везде использую TypeScript. Это универсальный язык разработки, я могу писать везде на одном языке, контролирую весь процесс. Если я сейчас открою большой проект на Go — буду рвать на себе волосы. Код на нем сложно читать из-за абстракций и ограничений типа отсутствия исключений. 

Код Shieldy в открытом доступе, любой может посмотреть на технологический стек. Это Node.js, TypeScript, Telegraf.js, Mongo. 

Разрабатываю софт с 2011–2012 годов и не люблю писать код (хотя хорошо умею это делать). Каждый раз, когда у меня получается писать меньше кода, я радуюсь. Поэтому постоянно ищу фреймворки, позволяющие почти не писать. Использую именно этот стек технологий, удовлетворяю свою лень. 

К тому же всегда могу найти разработчиков, которые будут писать код с первого дня работы на TypeScript. Им не нужно разбираться в большом проекте на Ruby, например. 

Когда мне нужен новый разработчик в команду, я могу найти джаваскриптера. Их много на рынке, и их работа стоит недорого. Обучу за пару суток, а через две недели они будут писать такой же чистый код, как и я. Поэтому не использую, например, редкий Haskell на сервере. Я могу написать на нем функциональный код, но не найду за разумные деньги разработчика, который смог бы поддерживать его после меня. 

В моем боте Temply реализованы 4 шага: пройти джаваскрипт-курсы, пройти курсы по NodeJS, разобраться в TypeScript, написать определенный код в определенном репозитории. Эти шаги я выдаю постепенно: один шаг закончен — я даю следующий. 

Обучение занимает от 2 до 16 недель. После него новички могут устроиться джуниором в какую-нибудь контору, но их не берут без опыта. А я предлагаю неоплачиваемую интернатуру у меня.

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

За два года преподавания в местном буткемпе в Ванкувере я научился быстро выращивать хороших разработчиков из начинающих и нашел себе самые лучшие кадры. На других технологических стеках это было бы невозможно.

Расходы и инвестиции

Я вложил в регистрацию компании в Канаде сумму в 350 $. Она называется Borodutch Labs Inc. Через нее оплачиваю работу контрактерам. 

Я выступил соучредителем еще в одной компании. Недавно в нее инвестировали Samsung, Slow Ventures (они вкладывали в CoinBase, Robin Hood, Citizen) 655 000 $. Эта компания развивает псевдонимную социальную сеть Dosu. Там нет привязки к личности, но можно использовать социальный капитал других площадок. 

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

На оплату их труда в основной компании в месяц уходит около 2500 $. Если сравнивать с рынком, это сопоставимо с зарплатами одного сеньора или мидл+ в Европе или СНГ. А у меня четыре сотрудника, некоторые из них на частичной занятости. Стараюсь делать так, чтобы все работали не более 40 часов в неделю. У всех должна быть личная жизнь. 

На серверы трачу примерно 250 $ в месяц, на все проекты. Это копейки. Компания, конечно, зарабатывает гораздо больше. 

Shieldy хостился на DigitalOcean на дроплете за 20 $ до покупки 1inch. Где он хостится сейчас и на каком сервере, лучше спрашивать у команды покупателя. Масштабировал тоже просто: в Node.js и в Mongo есть отличные встроенные инструменты как вертикального, так и горизонтального масштабирования. Минут 20 можно почитать документацию — и быстро все развернуть.

Токсичность в России и критика на глобальном рынке

Первое правило ведения IT-бизнеса: не надо делать его в России. Русскоязычная аудитория не любит платить, но очень любит ненавидеть. Если вы не собираетесь обманывать и строите честный бизнес — переводите продукт на английский и начинайте с зарубежных рынков.

Когда я постил что-нибудь на VC, то сталкивался с большим количеством хейта. Научился использовать этот гнев, не принимать близко к сердцу. Отвечал на каждый комментарий, так хейтеры только повышали популярность текстов. 

Посмотрим на Reddit: у меня там есть критические комментарии, но они не токсичны. Человек может спокойно объяснить, где есть ошибки. Он не говорит: «Ха, лохонулся, у тебя ошибка, ахаха». 

Хотите запускаться на русском комьюнити — пожалуйста. Но обязательно переведите бота хотя бы на английский. Voicy отчасти стал популярным, потому что на старте его перевели на 20–25 языков. Первые 50 тысяч пользователей пришли из Ирана. Для понимания: персидского языка в боте не было, потому что один из бесплатных движков отключил его у себя. Изначально в Voicy был персидский, что дало первых 50 тысяч пользователей из Ирана. Спустя примерно год, в 2018-м, движок бесплатного распознавания речи отключил персидский. В 2021 году у Voicy уже 12.6M+ пользователей.

Главный совет: не пилить продукты месяцами или годами, а запускать за 1–2 недели. Слишком много людей пишут что-то гигантское и комплексное, выпускают на рынок, а это оказывается никому не нужным. 

Нужна польза, которую продукт будет приносить. Малую пользу большому количеству людей, либо огромную пользу малому количеству людей.