Просыпаешься, а твое приложение на главной в App Store

eba276e76b777c423a2d2ff215cf46e5.png

Вокруг нас достаточно разработчиков, которые хотели бы заняться своим проектом. Зачастую эти идеи так и пылятся в головах людей по самым различным причинам. Истории Вадима Смирнова из 2ГИС — как раз о том, как претворить их в жизнь. Потратив несколько выходных за год, он смог сделать пять разных проектов, не заработал миллионы, но при этом не разочаровался и не прекращает работать над pet-project’ами.

В основе публикации — доклад Вадима на AppConf 2017.

Я работаю в 2ГИС, но буду рассказывать не про опыт, который получил в стенах компании, а про то, как мы с ребятами пилим проекты.

8c049d30c5fcbd6274dfb7a315bb4fc6.png

Наверное, не все знают, что такое pet-project«ы. Это проекты, которые пилятся просто потому, что человек может и хочет, например:

  • потыкать в новую технологию;
  • не просто заниматься инжинирингом, а повлиять серьезно на продукт или даже сделать свой;
  • стать миллионером.


В общем причина у каждого своя.

1858bb2c7dc17835041fc27a878085ae.png

Года за полтора мы сделали порядка десяти проектов, из них четыре приложения. В App Store сейчас одно, а два из них попали на главную страницу App featured.

321eccc5acdd0686d1131c6347174122.png

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

3c3739dc21bea7ebc7e5898146761a6b.png

Второе приложение — «Такса». Это приложение, которое помогает найти среди готовых поставщиков такси самое дешевое, которое довезет вас из точки А в точку В.
Очень прикольно смотреть, как твое приложение, на которое ты потратил буквально несколько выходных, — под Яндекс-картами.

a7f5729a78946970036413d2d7419233.png

О чем буду рассказывать


Я расскажу о том, о чем меня чаще всего спрашивают в связи с тем, чем мы занимаемся.

  1. Про время


Самый частый вопрос, который мне задают: «Чуваки, сколько времени на это надо, и как вы вообще это делаете по времени?».

  1. Про идеи


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

  1. Про команду


Почему я говорю «мы», откуда взялись остальные ребята. Как мы собрались вместе.

  1. Про проект


На мой взгляд, это самая главная часть. Здесь я расскажу про то, как доделать проект, как не бросить его на полпути, а каким-то образом дотащить до финала.

f4f32c11c5cb548b642f94d8e820dfec.png

В результате если внутренний дядя Сэм у вас спросит: «Пилить или не пилить?» и вы ответите: «Да», то я посчитаю, что я готовил все это не зря.

Часть 1. Про время


Для меня это звучит как: «Сколько времени нужно потратить на проект, чтобы он получился?», или «Во сколько времени можно оценить проект?».

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

adc243c187926c69897e1d751a988aac.png

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

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

Для меня это было странно: все проекты разные, у всех разная функциональность — как можно за 2 недели сделать любой?

Расскажу, что у нас получилось, но до этого рассмотрим, в чем мы измеряем проекты.

f86af3a4c0eadc06d2e54934a472d2f8.png

Нам удобно измерять проекты в упоротых днях. Это такой день, когда я с утра просыпаюсь, открываю свой ноутбук, и в этот день он уже не закрывается. В моей физической неделе, когда мне надо ходить на работу, а потом по дороге домой купить продукты и вечером погулять с собакой, такой упоротый день только один. Я физически не могу больше найти времени на pet–project.

eac8fb9f01beef6b8de263a623eb9706.png

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

Так у нас родилась авторская классификация проектов. Мы поняли для себя, что их можно классифицировать по степени готовности.

Мы все — мобильные разработчики. Все знают, что это такое?

b3bd36444a22ee51593e3c1fa861b081.png


Это телефон, но кодить под него еще нельзя.

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

Пример — наш гео-чатик. Это приложение, которое:

  • Умеет запускаться;
  • 1 человек мог написать одно сообщение на одну точку, а приложение делает вид, что оно прочиталось.
  • Все!


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

Этот факт подтверждает куча Хакатонов, где чуваки просто на энтузиазме, РедБулле и Дошираке делают вообще абсолютно страшные вещи, и у них что-то получается.

В принципе, кажется, что прототип — это все уже готово. Но если хочется этот прототип доделать до состояния, когда его можно показать людям, дать человеку и не бояться, что он нажмет не на ту кнопочку и все закрэшится, надо понимать, что на самом деле это только 20% работы. Это эмпирические цифры плюс-минус.

b3bd36444a22ee51593e3c1fa861b081.png


Чтобы довести прототип от состояния, когда он выполняет одну единственную функцию, до состояния, когда он хорошо выполняет эту функцию и его можно запушить в Store, нужно потратить еще 80% времени.

6d2e523f1d81a0175db2b38049e2d4c8.png


Но если два дня подряд еще можно найти — просто сесть в выходные с ребятами, запереться в субботу-воскресенье и сделать прототип, то восемь дней подряд никогда не получится. Таким образом это все трансформируется в восемь недель.

Получается, что за два дня можно запилить любой прототипчик, но чтобы его довести до состояния, когда его можно показать людям и запушить в Store, нужно потратить еще два месяца.
Если же из этого хочется сделать что-то совсем классное, например, в гео-чатик добавить слои, статистику, смайлики, плюсики, минусики, то кажется, что в принципе, первые 90% работы в прототипе уже сделаны. И чтобы довести прототип до этого состояния, надо потратить еще вторые 90% работы.

bee1fb988f9097feb17e64d9b693749c.png

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

У прототипа есть пара свойств:

  • Он может быть стремный.


Ты придумал какую-то идею, в голове она вообще классная. Мы пилили игрушечку — геозависимая игра, мы прямо срочно хотели в нее поиграть, как она у нас в голове звучала. Сделали — полный отстой, просто фигня.

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

  • Второй прикол в том, что прототип — это иногда самая подходящая форма существования проекта. То есть не надо ничего больше делать — прототип и так работает классно.


Для примера могу рассказать про наш проект «Music Bot». Идея такая. Мы все — мобильные разработчики, сидим в достаточно большой комнате, в одном углу которой стоят колонки. Все хотят слушать музыку, но чтобы ее включить, надо подойти к колонкам, взять Jack, воткнуть его в ноутбук и включить воспроизведение.

77b3b3856d76336f40bdf6079bc2edab.png

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

Все мы болтаем в Slack«е — это сейчас уже норма. Так как мы мобильные разработчики, естественно, у нас есть тестовые девайсы, которые мы подключили к колонкам. Очевидно, следующее, что можно сделать — написать бота, которым можно командовать из Slack«а. Он входит в какой-то музыкальный сервис и включает музыку. То есть задача решена.

Это все реально было сделано за два дня. Естественно, мы сразу же подумали: «Блин, это же надо вообще всем командам в мире. Мы сделаем сейчас стартап, подключим новых провайдеров, подтащим музло оттуда и оттуда, сделаем авторизацию».

Но ничего этого вообще не надо делать. Решение в виде прототипа в данном случае максимально адекватно поставленной задаче.

Если вернуться к состоянию MVP, когда мы можем показывать людям свою идею в App Store, то окажется, что мы потратили сначала два упоротых дня на прототип, потом улучшили его еще за восемь упоротых дней, получилось десять — это равно двум неделям того самого Бобука. На этом у нас уравнение сошлось.

d5da32417e7ef59df36a037dac65defc.png

Что получается?

  • Любой прототип можно сделать за два дня.
  • Чтобы довести прототип до состояния, когда его можно показывать людям, отдавать в массы, нужно потратить еще два месяца в рамках pet–project«а, когда мы занимаемся этим на выходных.
  • Лучше не браться за что-то большее, пока не готов прототип, потому что есть почти 100% вероятность, что он не дойдет до конца.


Часть 2. Про идеи


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

Как вы думаете, как зависит мотивация от времени в таком проекте?

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

a3b019e57642141263f5989d3ef5c619.png

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

fd3b139008954565c34a80954d9a78a2.png

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

Расскажу вкратце, как эта штука работала (и работает) у нас.

7ffa35307bfa21268bbef5c6ad61d0ab.png


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

Потом мы разошлись и добавили еще слой, подтянули для Новосибирска интересные места из 2ГИС — просто по фану.

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

Другое наше приложение — для алкоголиков — оно тоже про мотивацию. Это приложение (там внутри Big Data, хитрые алгоритмы) подсказывает пользователю следующий бар, который ему понравится.

3c52a7441fb0de5d90c96431989d1118.png

507bea62d4449466e63f3733572027bf.png

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

Дизайн приложения делала команда 2ГИС, он прикольный, странный. Очень простая механика: пользователь находится в баре, трясет телефон и приложение подсказывает ему следующий бар, где ему реально понравится, еще и маршрут построит.

Мы взяли кучу данных 2ГИС, построили онтологические связи, и каждый следующий бар выбирается реально из предпочтений пользователей, которые сидели в предыдущем баре. То есть он подсказывает реальные бары, которые понравятся человеку. Получилась прикольная штука. В конце, если ты упал и не дошел, еще и Uber можно вызвать из приложения.

Мы сделали прототипчик, он работал еле-еле. Пошли с ним в бары, пропили первые инвестиции, даже я. Поняли, что идея прикольная. Посмотрели, какие есть конкуренты — они вообще отсутствуют. Посмотрели, можно ли это как-то реализовать, модифицировать.

В общем, уже готовый прототип показал, во-первых, крутость идеи, а во-вторых, ее как-то начали прокачивать, проводить конкурентный анализ. Этой мотивации хватило, чтобы сделать готовый продукт, который сейчас находится в Store.

88114dcb6e3b35ecd32784abae2e2631.png

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

Так было с «Таксой» — идея принадлежит продуктовой команде 2ГИС. Они просто пришли и предложили нам что-то сделать для любимой компании. Так как они продуктовая команда и им платят за то, чтобы они генерили клевые идеи, они и сгенерили такую. Идея была прикольной изначально. В Москве приложение тоже работает.

Это суперпростое, тупое приложение — не знаю, почему до нас его никто не сделал: выбираем стартовую и конечную точку. Приложение показывает всех поставщиков такси и цены для каждого из них — такой агрегатор такси.

Мы его сделали, нам оно понравилось. Плюс ребята сами, своими силами провели конкурентный анализ, графики и прочее.

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

2788e252f92a047640484047aa5bf679.png

Когда приложение попало в featured, у нас мотивация вспрыгнула так, что нам сразу срочно захотелось что-то сделать, выбрать комплектации Гелендвагенов, например.

ab12c0a19b43746b91a827f42d9bf429.png

Что можно вытащить из всей этой бравады?

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


Часть 3. Про команду


Не секрет, что время таких приложений, как архаичный тетрис, уже прошло.

3f2b366bae572fdd9d8570f24eecca84.png


Скорее всего, сейчас нужно делать современные проекты, которые выглядят по-другому.

88b5d0fc3e90fd09e975fc0271e4048b.png

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

d6ae88489e52b55e522ecd078c597dea.png

Но лучше, например, такой.

4215ffbf8aa4719c13a2225bd51333a3.png

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

Но как найти таких ребят?

Решение тоже простое. У нас прослеживается паттерн, как люди присоединяются к нашей маленькой команде. Как раз на примере «Таксы» — он, как мне кажется, более говорящий.

5f4f7b00b759eddcc730992543828c3f.png

К нам пришли ребята и сказали: «Чуваки, у нас есть идея — вы же что-то делаете — сделайте приложение! Вы же iOS-разработчики!». У нас как раз было два iOS-разработчика, и мы примкнули друг к другу.

А там надо бэкенд, а iOS-приложение — это же только фронтенд! Мы смекнули и сделали весь бэкенд просто во фронтенде. У нас приложение ходило на какие-то API, что-то там делало, вытаскивало, считало само, делало абсолютно все, в том числе поиск проезда — много всяких штук. Но без бэкенда все равно обойтись нельзя, потому что надо, чтобы данные попадали в приложение. Ок, положили JSON«ку в Dropbox, но по факту мы получили готовое приложение.
На самом деле пользователю вообще все равно, какие технологии там используются. Он вводит точку, а приложение должно показать, как ему доехать за 100 рублей. И все.

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

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

3edede6f674421054f565b19ec74d51c.png

Если вы с утра видите, что команда выглядит так и проект готов, то скорее всего все получится.

c8438652bd0cd74c6ccdf92e6b49aaf6.png

  • Даже если нет компетенции в бэкенде, во фронтенде, в чем-то еще, мы просто максимум делаем там, где знаем, как делать, и минимум — там, где не знаем.


В принципе, даже когда я делал «Music Bot», я вообще понятия не имел, как писать под бэкенд, но разобрался с CoffeeScript за два часа и кое-как все сделал.

  • Второе — делаем прототипчик и ходим, показываем его.


Все думают, что ты хвастун (или молодец), а на самом деле ты ищешь себе чуваков. Кто-то его увидит и предложит свою помощь просто потому, что ему понравилась идея: «Вроде бы что-то готово, давай помогу».

  • Хакатон — это реально прикольная проверка, где в боевых условиях можно проверить, сработаешься ты с ребятами или нет.

Часть 4. Про проекты


Самая главная часть — как получается (или не получается) доводить проекты до конца.
Эта черная коробка — тоже мой проект. Я его пилил давным-давно. Это штукенция для музыкантов, которая превращает питшифтер в арпеджиатор, что бы это не означало.

f0776290775ed1f06983b680f1600e1b.png

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

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

Это круто потому, что сделать можно все что угодно.

В команде все немножко по-другому.

Например, это архитектура сервиса, который мы сейчас делаем.

6efc4c6832d6507e69a386048712b888.png

Можно попробовать посчитать, сколько здесь ролей:

  • Backend;
  • Web;
  • iOS;
  • Android;
  • Build Node


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

Если хотя бы один говорит: «Чуваки, я, наверное, всё», то весь проект может оказаться под вопросом. У меня больше всего болит душа, как бы кто из чуваков не свалил.

Небольшая ремарка про ответственность
Когда пилишь проект один, ты сам отвечает за свое время, которое ты посвящаешь ему. Это абсолютно очевидно.
Но что происходит, если в проекте несколько человек, которые посвящают ему время?

35ae71014ddbad84ffe26560648e48c4.png

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

48eacf0ca7486350ad99308e43debce3.png

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

Вернемся к графику мотивации.

d901ebdd79d3528addde8813350f4eab.png

Что можно сделать, если, например, проект по ощущениям лежит где-то далеко справа? Можно попробовать либо поработать над мотивацией, чтобы она уходила куда-то вдаль и в бесконечность, либо притянуть на себя притянуть. То есть сделать так, чтобы проект выполнился быстрее, чем нужно.

То есть по сути надо научиться управлять временем (скоростью исполнения проекта) и мотивацией.

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

Если эти разноцветные мужики –

4d4cbf695f537a7638fb9971e0e5bd55.png

захотят сделать этот проект –

dd0fbfbcc21e525665cc51c9b271d7e1.png

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

da001e4ce3f125f980e3bcbc46f045cb.png

Потом надо выставить приоритет каждой задачки, чтобы у них появились цифры:

3ac9e281bf6696d7fda16c8704afd197.png

После выстроить эти цифры в порядке выполнения. Тогда у каждого человека будет очередь задач, которые он будет делать.

ba9ae4963ad78462c3153718051465a6.png

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

Для этого мы используем Google-доки. Так как мы пилим pet-project«ы — это не рабочая атмосфера, и непонятно, когда чувак будет заниматься кодингом.

Например, у человека выдался свободный час, но нужно понимать, что он должен очень быстро попасть в контекст. Для этого у нас есть Google-доки, где все задачи приоритезированы. Человек просто открывает Google-док, переходит по ссылке, открывается ТЗ, и каждый член команды всегда понимает, что ему нужно сделать.

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

Очень важно еще, что красный человек делает только красные задачки. У нас бэкендщик не должен думать о дизайне, фронтендщик — о бэкенд-задачах. Если есть какие-то вопросы, которые не связаны с прямой профессиональной экспертизой людей в команде, я их забираю себе.
Я стараюсь так делать, чтобы чуваки делали только свои профильные задачи, непрофильные я забираю себе и пытаюсь как-то сделать потому, что лучше сделаю я, чем они будут тратить свое время. Таким образом можно сократить время выполнения проекта.

Это вещи простые, но без них не работает ничего.

Так как ответственности у меня больше всего, то я:

  • инициирую всегда декомпозицию, оценку и приоритезацию, чтобы каждый человек в любой момент времени понимал, что ему надо делать;
  • пишу ТЗ. Так как время фрагментировано по неделям, очень много времени у ребят тратится на вход в контекст. Пытаешься вспомнить — что же ты там делал? А так — в ТЗ написано все красиво;
  • забираю все непрофильные задачи.


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

5a37004551e8433f636fb7d7212477bb.png

Наверное, самый главный вопрос — вопрос мотивации — как же вообще заставить чуваков кодить? Они с утра до вечера занимаются этим на работе, а тут ты говоришь: «Давайте, вы будете то же самое делать, что и на работе, только платить вам не будут?». Это странно.

Что с этим можно сделать?

  • Первый рецепт — предложить долю в компании.


Но это полная фигня, она не работает, потому что компании нет, идея стоит ноль, компания стоит ноль, все стоит ноль. Ты предлагаешь процент от нуля, чувак на тебя смотрит: «Клево, да… давай, завтра приходи».

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

Когда мы делали гео-чатик, самое, наверное, главное, что я сделал в этом проекте — просто постоянно шевелил чуваков: «Эгей, ребята, давайте соберемся, сделаем то, сделаем это, сделаем так и сяк», и сам писал код, который могу делать.

Кажется, именно это сработало, и мы доделали всю эту историю.

  • По факту, нужно просто не сидеть на месте, генерить движение в проекте.


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

  • Человеческий фактор.


Примеры


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

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

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

Вторая история. Абстрактная команда ребят-разработчиков поехала на абстрактный Хакатон из абстрактного Новосибирска в абстрактную Москву. Один из разработчиков начал жестко стебать второго разработчика — очень смешные шутки были, прямо офигенные. Но отличного фронтендера у нас теперь нет.

Что из этого можно извлечь? Что нужно пытаться следить за атмосферой взаимопонимания внутри команды. По такой тупой причине, что один смеялся над другим, ушел человек из проекта. Я постараюсь в своей жизни больше никогда такого не допустить.

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

Выводы


Что из этого можно вытащить?

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


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

  • Дружеские отношения очень важны.


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

b873ef0b558472fcfe5626523f1b12a9.png

Напоследок »Just one more thing…», как сказал Коломбо.

9b1a78370082a389bb87d4654b16e3c3.png

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

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

Потом я тоже, как все люди перегораю, но мне становится дико жалко времени, которое я на него уже потратил, и уже хочется его доделать. На этом топливе я стараюсь его довести до финала.
Желаю всем клевых команд и веселья.


Для тех, кому не хватило деталей, мы предлагаем ответы докладчика на вопросы из зала.

Их мы спрятали под спойлер
 — Кто ушел — тот, кто шутил, или над кем шутили?

— Над кем. Тот, кто шутил, до сих пор в команде.

 — Второй вопрос касается Вашего приложения «гео-чатик». Мир оно не завоевало. Где брать мотивацию, когда все поняли, что потратили на это кучу времени, но не зашло. Что делать дальше? Откуда взять мотивацию на дальнейшую жизнь в этой команде?

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

 — Какие в итоге профиты вы поимели с этих приложений, сколько заработали? Реализовывали ли вы внутри какие-нибудь механизмы перетекания трафика из одного приложения в другое, подключали ли рекламные сети?

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

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

© Habrahabr.ru