За что (и надо ли) платить СТО?
Что отличает Технического Директора от тимлида или просто крутого разработчика? Дополнительные шестизначные надбавки к зарплате или что-то большее? Сейчас разберемся
На старте энтузиазм плещет через край, а денег наоборот — обычно не хватает. Мысль сэкономить на руководителе разработки и взять техническую часть на себя многим кажется притягательной. Вот только это — огромная ошибка, которая может похоронить весь проект.
Поэтому пара советов тем, кто прямо сейчас задумывает свой стартап:- Еще до запуска найдите своего ГТ
- Оцените запуск вместе с ГТ, а не самостоятельно
- Найдите деньги на содержание ГТ
Это удовольствие не из дешевых, но оно стоит того. Ведь такой дармоед как технический директор, он же СТО, он же Гога, он же руководитель разработки или просто Главный Технарь (далее ГТ) отвечает за следующее:
Стратегия
Именно ГТ знает, где проект окажется через 3-8-15 лет и как он туда попадет. Командир (Фаундер) может лишь рассказать, мечтательно покусывая карандаш, о 10-30 вариантах развития проекта. А ГТ должен ухватить из этого розового бреда все возможные и невозможные варианты, умножить их на 10 и подстраховаться на случай наступления любого из них. Потому что случится именно самый хреновый и менее вероятный.
Тактика
Надо не только видеть цель и знать, как до нее добраться. К этой цели нужно ползти — каждый день, час, секунду. В условиях ограниченных ресурсов команды и неограниченных фантазий командира надо умудряться делать итерации, смотреть по сторонам и показывать результат.
Архитектура
Сначала все выглядит просто — сайт, форма заказа, пара табличек. А потом снежным комом накручиваются километры кода. Бек, фронт, админка, лендинги, сервера, лежим, переделываем, эквайеры-мерчанты, интеграции, лежим, мобильные аппы, адаптив, встраиваем сервисы, накручиваем лайки. комменты, срм, телефония, счетчики, аналитика, API. А базы-то стали большими — еле ворочаются. А сущности так перемешались, что не разобраться. А готовые фреймворки-то уже не подходят, приходится костыли городить. DDoS, хостеры — козлы, мейлчимпы, мандрилы, свои рассылки, sms рассылки, хромпуши, контакты, SEO требования, микроразметка, твиттер кардс, своя CMS, блог, хелпдеск, тикеты...
Вот это все лучше спроектировать заранее.
Отказоустойчивость
То, что описано выше, должно работать. Как часы. Нельзя «просто взять и все зарезервировать». Надо реально понимать, где что работает и как это может сломаться. Во время «ахтунга» (а он обязательно наступит в самый неподходящий момент) именно ГТ должен знать, куда копать, что делать и как спасать ситуацию.
Стрессоустойчивость
Стрессов будет много и, скорее всего, косяк обнаружится в «технической части». Копнув глубже, вы можете обнаружить, что начинали строить велосипед, а закончили надувным крокодильчиком, который за секунду до релиза случайно проткнула спица, оставшаяся от первоначального проекта. Как бы ни хотелось, заплакать и убежать к маме — нельзя. Нужно взять пластырь, заклеить рот крокодильчика и вернуться к началу.
Любопытство
В ИТ технологии меняются очень быстро. Конкурент, стартовавший через полгода, уже не тратит сотни человекочасов на написание фичи. Он качает ее бесплатно в виде стабильного фреймворка. Обидно за бесцельно потраченное время, но в этот момент лучше забыть про гордость и перейти на новые, дешевые и удобные технологии. Во имя эффективности.
Терпимость
Придется заранее принять за данность тот факт, что несмотря на всю предусмотрительность, люди, железо или собственная голова будут косячить. Суметь перебороть себя и продолжать переделывать, чинить, восстанавливать или пилить в пользу проекта — это не просто. Особенно когда «ты же говорил».
Владение языком
Выхватить в бессвязных криках командира рациональное зерно, разбить на куски и делегировать разработчикам в виде четких и понятных задач — основная задача ГТ. Управление хаосом в чистом виде
Жадность
Крутой ГТ обязан быть жадным. Он должен побить проект на такие подробные и мелкие задачи, чтобы справиться с ними мог любой студент. Так проект не будет зависеть от каждого из нишевых разработчиков, что сэкономит ресурс и сейчас, и в перспективе. При хорошем СТО рядовые программисты могут быть совсем плохонькими и дешевенькими.
Пошел и сделал
Случается всякое: пожар, понос, потоп. Как бы разработчики ни рожали, увольнялись и умирали, ГТ должен быть в состоянии подхватить задачу, разобраться и выполнить ее. Даже если придется посидеть ночку-другую.
Кадры
С людьми работать вообще тяжело, а с людьми технического склада ума — особенно. А еще тяжелей работать людям технического склада ума с людьми технического склада ума. Решать капризы, понимать срок перегара, резервировать. Ну вот все вышеперечисленные пункты — и тактика, и стратегия, и архитектура — они есть и в области кадров. И это — та еще морока.
Хорошие новости, ребята
Даже если вы не можете потянуть собственного ГТ, не обязательно ставить крест на всем проекте. Всегда можно отдать стратегию или вообще всю разработку на аутсорс. Во многих случаях такой вариант гораздо экономичней и целесообразней. По крайней мере, я знаю немало примеров, когда такая связка давала хорошие результаты.
В статье описан опыт колл-трекинга Callibri, а как у вас? Согласны или хотите поспорить? Вы ГТ и вам не доплачивают? Знаете обратные примеры? Все в каменты!