Найти тему

Как я заработал 1 000 000 $ без опыта и связей, а потом потратил их, чтобы сделать свой переводчик

Оглавление

Как все начиналось

Эта история началась 15 лет назад. Работая программистом в столице, я накапливал деньги и увольнялся, чтобы потом создавать собственные проекты. Для экономии средств уезжал домой, в небольшой родной город, где работал над сайтом для студентов, программой для торговли, играми для мобильных телефонов. Но из-за отсутствия опыта ведения бизнеса это не приносило дохода, и вскоре проекты закрывались. Приходилось снова ехать в столицу и устраиваться на работу. Эта история повторилась несколько раз.

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

Единственное, что я умел делать, это приложения для iOS. Несколько лет работы в ИТ-компаниях позволили накопить определенный опыт, и было решено сделать много простых принципиально различных приложений (игры, музыка, рисование, ЗОЖ, изучение языков) и протестировать, в каких нишах будет небольшая конкуренция. Был подготовлен набор классов и библиотек, которые позволяли быстро создавать простые приложения на различную тематику (2d игры, gps-трекеры, простые утилиты и т.д). В большинстве из них было несколько картинок, 2 кнопки и всего одна функция. Но этого было достаточно, чтобы проверить идею и то, насколько легко будет на ней заработать. Например, приложение для бега отслеживало скорость человека, пройденное расстояние, а также подсчитывало калории. На создание сотен простых приложений я потратил полтора года. Такая скорость стала возможной благодаря покупке графики на стоках, а также повторному использованию исходников.

-2

Сначала приложения были бесплатными. Потом я добавил рекламу и встроенные покупки, подобрал ключевые слова и яркие иконки. Приложения начали скачивать.

Когда доход достиг 30 тыс $ / месяц, я решил рассказать товарищу, который работал в большой продуктовой компании, что на тестовых приложениях я смог достичь такой цифры, и предложил создавать их вместе. Он ответил, что у них всего 1 приложение — игра с доходом в 60 тыс $ и 25 тыс пользователей в месяц, против 30 тыс $ выручки и 200 тыс пользователей у меня. Это полностью изменило мои взгляды. Выяснилось, что лучше создать одно качественное приложение, чем сто некачественных

Я понимал, что на качественных можно заработать в десятки раз больше, но я был один в маленьком городе без опыта и команды дизайнеров и маркетологов. Мне требовалось платить за аренду квартиры и зарабатывать на жизнь. Тестовые приложения нужны было просто для проверки рыночных ниш и рекламных стратегий, чтобы научиться, какие приложения и как именно создавать. Просто сложилось, что некоторые из них начали приносить неплохой доход. Сейчас тема простых приложений давно умерла, и там больших денег уже не заработать.

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

Тестируя различные виды игр, я понимал, что игры с большой длиной сессии и вовлечением пользователей (типа “2048”) способны приносить много денег на длинном интервале времени. Но поначалу это было неочевидно. Поэтому я создавал тестовые аппы типа GPS- трекеров для лыжников и в ключевых словах ставил название популярных лыжных курортов типа Куршавеля. А потом радовался, что клик по рекламе приносил 2$. Но это была краткосрочная немасштабируемая стратегия.

Потом я заметил, что буквально за месяц переводчики скачали более 1 млн раз. И это при том, что они находились примерно на 100-й позиции в рейтинге категории.

Музыкальные приложения принесли столько же скачек, но с учетом привлечения пользователей они были менее перспективны. Пользователей для них нужно привлекать по высокочастотным ключевым словам, а их в этой нише не много: тот, кто ищет приложения для гитары, вводит в поиске — «гитара», «бас-гитара», «аккорды» и т.д. Сложно подобрать много синонимов для такой тематики. Таким образом, пользователи сконцентрированы на высокочастотных запросах, и рано или поздно их привлечение будет стоить дорого. В переводчиках все по-другому.

Языков в мире сотни, и люди вводят запрос не только общим словом «переводчик», а несколько слов как решение своей проблемы: «перевести на французский», «переводчик с китайского». Если запросов много, привлекать пользователей можно просто по среднечастотным ключевым словам (ASO). Ниша оказалась перспективной, тем более, сама тема переводов мне нравилась.

Позже было создано около 40 простых переводчиков, где использовался перевод, который предоставлял Google API. Его стоимость была по $ 20 за 1 млн переведенных символов. Постепенно появились улучшенные версии приложений, где я добавил рекламу, встроенные покупки, функцию перевода голоса.

Заработав денег, я переехал в Минск и купил жилье. На то время у меня было 50−70 приложений для перевода и 5 млн скачиваний. Но с ростом пользователей увеличивался расход на платный Google Translate API. Прибыльность бизнеса серьезно снизилась. Платящие пользователи переводили блоки от 1 тыс символов за раз, что заставило ввести лимиты на запрос. Когда они упирались в лимит на перевод, писали плохие отзывы и возвращали деньги. Настал момент, когда 70% выручки уходило на расходы. При больших объемах перевода этот бизнес оказался не такой перспективный. Чтобы окупить расходы, в приложения нужно было добавлять много рекламы, а это всегда отпугивает пользователей. Требовалось сделать свое API для перевода, а это скорее всего будет не дешево.

Я пробовал просить совета и инвестиций у стартапов и ИТ-сообщества, но поддержки не встретил. Большинство людей не понимали, зачем работать на рынке, где уже есть лидер — Google-переводчик.

Помимо Google было еще несколько компаний, которые предоставлял API для перевода. Я был готов заплатить $ 30 тысяч за их лицензии технологий перевода на 40 языков. Это позволило бы мне переводить неограниченное количество раз за фиксированную цену и обслуживать любое количество пользователей на своих серверах. Но мне в ответ называли сумму в несколько раз выше. Это было слишком дорого. Было решено попробовать сделать свою технологию для перевода. Я пробовал привлечь друзей для разработки, но к тому времени у большинства из них уже были семьи, маленькие дети и кредиты. Все хотели стабильности и жизни в свое удовольствие на хорошую ЗП, а не идти в стартап. Также они не понимали, зачем создавать переводчик, если есть Google с крутым навороченным приложением для перевода и API. У меня не было опыта публичных выступлений, харизмы и крутого прототипа приложений, чтобы заинтересовать людей. Аналитика по заработку 300 тыс $ на тестовых приложениях для перевода никого не удивляла.

Я обратился к знакомому, который владеет аутсорс-компанией в Минске. В конце 2016 года он выделил для меня команду. Я рассчитывал, что решу задачу за полгода на базе open-source проектов, чтобы не зависеть по API от Google.

-3

Продолжаем работу

Весь 2018 год я потратил на решение проблемы качественного перевода на основных европейских языках. Думал, что ещё полгода — и всё получится. Я был очень ограничен в ресурсах, задачами по Data Science занималось всего 2 человека. Нужно было двигаться быстро. Казалось, что решение проблемы в чем-то простом. Но светлый момент всё не наступал, я не был доволен качеством перевода. Было потрачено уже около 450 тыс $, заработанных на старых переводчиках, и требовалось принимать решение, как быть дальше. Запуская этот проект в одиночку и без инвестиций, я понял, сколько управленческих ошибок совершил. Но решение принято — идти до конца!

В это время я заметил, что  в нашем сообществе начали говорить про новую архитектуру для нейросетей — Transformer. Все бросились тренировать нейронные сети на базе этой Трансформер-модели и стали переходить на Python (Tensorflow) вместо старой Lua (Torch) Я решил тоже попробовать.

Также мы взяли новый токенизатор, сделали препоцессинг текста, по-другому стали фильтровать и размечать данные, иначе обрабатывать текст после перевода, чтобы исправлять ошибки. Сработало правило 10 тысяч часов: было много шажков к цели, и в определённый момент я понял, что качество перевода уже достаточно для того чтобы использовать его в API для собственных приложений. Каждое изменение добавляло 2-4% качества, которых не хватало для критической массы и при которой люди продолжают пользоваться продуктом, не уходя к конкурентам.

Потом мы начали подключать различные инструменты, которые позволяли и дальше улучшать качество перевода: определитель именованных сущностей, транслитерацию, тематические словари, систему исправления ошибок в словах. За 5 месяцев этой работы качество переводов на некоторых языках стало значительно лучше и люди начали меньше жаловаться. Это был переломный момент. Ты уже можешь продать программу, и из-за того что у тебя есть свое API для перевода, можно сильно сократить расходы. Можно наращивать продажи или количество пользователей, ведь расходы будут только на сервера.

Для обучения нейронной сети нужен был хороший компьютер. Но мы экономили. Сначала мы арендовали 20 обычных компьютеров (с одной GTX 1080) и одновременно запускали на них 20 простых тестов через Lingvanex Control Panel. На каждый тест уходило по неделе, это было долго. Чтобы добиться лучшего качества, нужно было запускать с другими параметрами, которые требовали больше ресурсов. Требовалось облако и больше видеокарт на одной машине. Мы решили взять в аренду облачный сервис Аmazon 8 GPU V100 x 4. Он быстрый, но очень дорогой. Запустили на ночь тест, а утром — счёт на 1200 $. В то время было очень мало вариантов аренды мощных GPU сервероров, кроме него. Пришлось отказаться от этой идеи и искать варианты дешевле. Может, попробовать собрать свой?

Обзвон компаний заканчивался тем, что мы сами должны были прислать детальную конфигурацию, а они его соберут. Что лучше с точки зрения «производительность / цена» для наших задач, никто не мог ответить. Попытались заказать в Москве — наткнулись на какую-то подозрительную фирму. Сайт был качественный, отдел продаж — в теме. Но банковский перевод они не принимали, и единственным вариантом оплаты был скинуть деньги на карту их бухгалтеру. Стали совещаться с командой и решили, что можно самостоятельно собрать компьютер из нескольких мощных GPU и ценой до 10 тысяч долларов, который будет решать наши задачи и окупится за месяц. Комплектующие буквально скребли по сусекам: звонили в Москву, что-то заказывали в Китае, что-то в Амстердаме. Через месяц все было готово.

В начале 2019 у себя дома я наконец-таки собрал этот компьютер и начал проводить много тестов, не беспокоясь, что нужно платить за аренду. На испанском языке я начал замечать, что перевод близок к переводу Google по метрике BLEU. Но я не понимал этот язык и на ночь поставил тренироваться модель англо-русского переводчика, чтобы понять, в какой точке нахожусь. Компьютер всю ночь гудел и жарил, спать было невозможно. Нужно было следить, чтобы не было ошибок в консоли, так как периодически все зависало. Утром я запустил тест на перевод 100 предложений с длинами от 1 до 100 слов и увидел, что получился хороший перевод, в том числе на длинных строках. Эта ночь изменила всё. Я увидел свет в конце тоннеля, что все же можно когда-нибудь добиться хорошего качества перевода.