YOUNG

«Я написал скрипт, который мутным способом должен был всё починить». CTO — о своей первой работе

YOUNG
Дарья Бондаренко
Дарья Бондаренко

Журналист, PR-консультант

Мария Передок

Rusbase Young общается с представителями разных профессий, чтобы узнать, как они начинали свою карьеру: вдохновить вас историями и развеять распространенные мифы. 

В этой подборке — технические специалисты: четыре CTO и один архитектор направления. Все они начинали карьеру с написания кода, а теперь руководят командами программистов.

«Я написал скрипт, который мутным способом должен был всё починить». CTO — о своей первой работе

Александр Саликов, CTO банка Точка, 26 лет 

Я окончил Факультет Инноваций и Высоких Технологий (ФИВТ) МФТИ в 2017 году. Первые проекты по специальности были еще в начале учебы: мы с одногруппниками разрабатывали маленькие сайты и мечтали открыть свою веб-студию. Заказы находил через знакомых, за месяц работы на одном проекте получал 5 000-10 000 рублей.  Первая полноценная работа появилась в 2014 году: я отвечал за разработку интернет-магазина для «Дома Фарфора». Выходило 60 000 рублей за три рабочих дня в неделю: остальные дни я учился.

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

Как-то в одной из компаний мне предложили сделать вишлист для свадебных подарков — это была идея генерального директора. Был 2015 год, и все вишлисты к тому времени уже погибли. Я пришел к техническому директору и попытался объяснить ему, что нет смысла делать вишлист в 2015 году. Предложил ему сходить вместе со мной к генеральному, переубедить его и сделать что-то более полезное. На что получил ответ: «А кто будет оплачивать мою ипотеку? Я здесь не для того сижу, чтобы с директором спорить». Спустя неделю я ушёл из той компании, о чем не жалею до сих пор.

На одном из хакатонов мы с командой сделали бот для телеграма «РокетБанка», в результате чего о нас узнал банк «Точка». Так начали разрабатывать для «Точки» бота и другие продукты. Спустя некоторое время я ушёл в «Точку» насовсем. Сначала отвечал за разработку комплаенс-инструментов на основе машинного обучения — это когда банк следит за деятельностью клиента, предупреждает операции, которые могут нарушить закон, и подсказывает, как сделать правильно. Потом стал отвечать уже за все машинное обучение и весь комплаенс и в итоге был назначен на роль лид-линка круга IT — он же CTO. 

«Точка» работает по холакратии — это такой способ управления компанией, где нет жесткой иерархии, а вся работа ведется в командах, или «кругах». Лид-линк (Lead Link) отвечает за работу внутри круга и его связь с другими кругами.

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

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

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

Максим Чернухин, архитектор направления из 75 человек в «Альфа-Банке», 28 лет 

Я не сразу знал, что буду работать в IT — вначале мне просто нравились сложные и интересные задачки. Со временем я стал чаще находить такие в технических науках и в итоге оказался в МГТУ им Э. Н. Баумана на факультете информатики и систем управления.

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

Устраивался на свою первую работу я серьёзно. Посмотрел основные вакансии, которые мне были интересны в разработке, выписал неизвестные технологии, выбрал основные и изучил их. После нескольких собеседований я попал на интервью в Сбербанк-Технологии. Собеседование было с решением задач. До сих пор помню последний вопрос про бинарное дерево для индекса и просьбой разложить по нему числа от 1 до 15. 

Начал я с третьей линии поддержки: это те ребята, которым поступают проблемы с «боевой» среды, и они их решают 24/7. Там я прокачал стрессоустойчивость. Мне очень повезло с отделом и коллективом, так как желание развиваться приветствовалось и для этого тебе подкидывали интересные задачи. 

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

В итоге я проработал в Сбертехе пять лет, пройдя путь от инженера до руководителя разработки и развития IT-систем. После этого перешёл в «Альфа-Банк» на должность архитектора направления. Здесь я увидел проект, который был сложнее предыдущих, и это меня привлекло. Но желание делать сложные и интересные системы не существует отдельно без постоянного изучения новых технологий, чтения статей по ночам и сбора каких-то прототипов.

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

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

Александр Краснов, CTO DocDoc, 30 лет

Моя карьера началась в семнадцать лет с позиции системного администратора. Через год решились с другом делать стартап по хостингу сайтов и игровых серверов. Сейчас то предприятие я могу описать только как «слабоумие и отвага»: мы были явно не готовы по многим фронтам ведения бизнеса. Неудача меня не остановила, и я запустил портал firstblood.ru и лигу RDL по DOTA1, где игроки подбирались по уровню игры друг против друга и соревновались за очки рейтинга.

Когда я учился на третьем курсе ВМС (Вычислительные Машины и Системы) в МИРЭА, знакомый из Германии предложил разрабатывать приложения под iPhone с почасовой оплатой в 8 евро в час. Программировать на нескольких языках, включая C я умел, Objective-C был чем-то похож. Приходилось многое придумывать самому, поскольку опенсорс сообщества по этой платформе ещё толком не было, как и MacBook у меня: использовал «виртуалку».

Поработал iOS разработчиком в нескольких компаниях — интересных задач дляменя в iOS становилось меньше, хотелось новых вызовов и профессионального развития. Я решил получать магистерскую степень и подал документы в несколько университетов США и Австралии. Благодаря высокому уровню английского сдал TOEFL iBT на 108 из 120 и получил много положительных откликов от университетов. Выбрал IT-факультет в UTS, как самый молодой и динамичный, к тому же этот университет зачел мне несколько предметов: плановая длительность учебы сократилась на полгода.

Мой главный внутренний драйвер по жизни — желание двигать глобальный прогресс вперёд. После защиты тезиса (дипломная работа в австралийских вузах) я вернулся из Сиднея в Москву и несколько лет был разработчиком и тимлидом в стартапах на разных стадиях развития. В 2016-ом через LinkedIn со мной связались из Apple. Спустя шесть интервью я получил оффер, и в 26 лет уехал в Кремниевую Долину работать над Siri.

Ещё один из моих жизненных мотиваторов — оказывать максимально положительное воздействие на жизни людей. Чувство «маленького винтика в огромном механизме» меня не устраивало. Через год после начала сотрудничества с Apple я получил предложение — запустить с нуля новые направления разработки в DocDoc, связанные с мобильной разработкой и телемедициной. Интуиция подсказала, что оказать значительное влияние на общество у меня получится именно в этой компании.

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

Тем, кто хочет стать инженером, советую держать баланс:

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

Павел Матвеев, CTO Skillbox, 27 лет

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

С этим же языком связано и мое первое официальное место работы в 21 год (до него я в основном делал проекты под заказ –– находил их на фриланс-биржах или через знакомых). Я тогда уже хорошо разобрался в PHP и решил попробовать промышленную разработку на Java. Устроился младшим разработчиком в крупную компанию (один из подрядчиков РЖД) и уже через восемь месяцев понял, что этот язык — не мое. Получился интересный опыт, но я вновь решил отдать предпочтение PHP. На первое место работы устроился даже без высшего образования, начинал с зарплаты в 40 000 рублей.

Потом разрабатывал серьезное веб-приложение для клиники и через полтора года вышел уже на более крупные проекты. Стал брать на себя функции тимлида, затем меня позвали в другую компанию работать с b2b-клиентами в e-commerce. 

В Skillbox пришел в 2017 сразу на позицию CTO, но по факту первые два месяца писал код, не поднимая головы. Нам нужно было разработать вебинарную платформу — это была важная маркетинговая задача. В отделе помимо меня работало «полтора» разработчика, но мы справились — платформа работает до сих пор. Спустя три года у нас пять отделов: команда, которая разрабатывает LMS (learning management system — система управления обучением), команда веб-разработки, инженерная команда аналитиков, команда DevOps-инженеров и отдел тестирования. Сейчас департамент насчитывает более 50-ти человек.

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

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

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

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

Антон Степаненко, CTO Ozon, 33 года

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

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

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

В 2011 году Леша Рыбак, руководитель разработки, пригласил меня в команду Badoo — там я прошел путь от программиста до руководителя команды разработки платформы. В какой-то момент мы проводили миграцию пользовательских данных между дата-центрами, и вот поздно вечером, когда мы переносили данные одной из азиатских стран, сломалась репликация данных пользователей между основными серверами Badoo в Праге и Майами — а это означало, что порядка 100 млн человек видят неактуальную информацию.

Так я познакомился со своим другом Ильей Раундсеппом, который тогда был совсем юным и работал в мониторинге. Он позвонил мне и предложил перезалить все данные заново, что заняло бы примерно месяц. За время спора с ним я написал какой-то скрипт, который мутным способом должен был все починить, как-то его потестировал и запустил в продакшен. Уверенности в том, что это сработает, не было, но скрипт помог, и за четыре часа нам удалось догнать все данные до консистентных. И это история не о достижении, а в первую очередь о риске, с которым сталкиваются разработчики, как говорится: «я отлаживаюсь на проде, потому что на девеле ощущения не те». 

В e-commerce я с 2016 года — перешел в команду южноазиатского онлайн-ритейлера Lazada, который позже купил Alibaba, в результате чего московский офис закрыли, а многие из разработчиков Lazada пришли в Ozon. 

С середины 2018 года я занимался разработкой платформы сайта и приложения Ozon, примерно через год возглавил разработку логистики, затем еще несколько крупных блоков IT и в феврале 2020 года стал CTO. 

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

Фото на обложке: Unsplash 

Нашли опечатку? Выделите текст и нажмите Ctrl + Enter

Материалы по теме

  1. 1 Как я в 18 лет ушел из VK и начал делать стартап в Лос-Анджелесе
  2. 2 «Мне хотелось влиять на бизнес, а не быть исполнителем». Продакт-менеджеры — о своей первой работе
  3. 3 «Маркетинг — это теория вероятности». CMO — о своей первой работе
  4. 4 «Понятие приватности нужно оставить в XX веке». Гендиректор NtechLab о технологии распознавания лиц и «внутренней кухне» компании

Актуальные материалы —
в Telegram-канале @Rusbase