Баннер мобильный (1) Пройти тест

Я сам научился программировать и стал тимлидом

Преподаватель SkillFactory рассказывает о карьере программистов и дает советы новичкам

Обзор профессии

29 февраля 2024

Поделиться

Скопировано
Я сам научился программировать и стал тимлидом

Содержание

    Никита Ульшин учился на специалиста по электронике, но всегда интересовался программированием. Теперь он руководит разработчиками в компании, которая применяет искусственный интеллект в гифтинге (ниже объясняем, что это), и учит новичков на курсе Skillfactory «Frontend-разработчик». Никита рассказал, какие карьерные пути бывают у программистов. 

     Читайте до конца: Никита советует, какой язык выбрать для изучения с нуля.

    Как я сам учился программированию

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

    Рынок онлайн-курсов тогда только зарождался, и я пошел в офлайн-школу программирования в Луганске. Я проучился два года и, чтобы оплачивать курсы, брал первые заказы на фрилансе: верстал сайты на HTML, CSS и JavaScript. Тогда я освоил языки C и C++, платформу .NET, занимался JavaScript.

    Читайте также: Какой язык программирования мне выбрать?

    В 2015 году из-за военного конфликта школа закрылась: я уехал из Луганска и уже шесть лет живу и работаю в Санкт-Петербурге. Я мечтал переехать сюда еще в детстве. Было много приключений с документами, но город мне очень нравится.

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

    Что делает .NET-разработчик?

    .NET-разработчик работает на платформе .NET от Microsoft для создания корпоративных и веб-приложений для Windows. Например, на .NET разрабатывают внутренние системы распределения заказов в службах доставки.

    Пути в карьере

    В первую большую компанию — EPAM — я пришел уже на синьор-позицию, и через три месяца мне предложили стать тимлидом на другом проекте. Он длился год, у нас было пять команд: в каждой было по три-четыре frontend- и backend-разработчика, несколько QA-инженеров (инженеров отдела качества) и аналитиков.

    Мы делали платформу для учета лабораторных мышей для научной компании. Система позволяла контролировать их количество и «участие» в экспериментах. Мне понравилось быть тимлидом, поэтому я решил уйти из разработки в менеджмент.

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

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

    Как я руковожу командой разработчиков

    Уже полтора года я работаю на должности Product Owner в компании Alyce — руковожу командой разработчиков и немного участвую в технической части. Компания занимается гифтингом — подбором подарков, которые бизнес дарит клиентам при заключении крупных сделок. Мы используем искусственный интеллект, чтобы делать презенты персонифицированными.

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

    Я управляю командой разработчиков и вижу, что в профессию можно попасть разными путями. В команде есть backend- и frontend-разработчики и тестировщики: у многих есть техническое образование, как и у меня. Фундаментальные вещи вроде матанализа и статистики действительно помогают в работе. Но программированию почти все учились сами — в целом это доступно и людям с гуманитарным образованием. Например, одна из наших тестировщиц по образованию — учитель. Главное — не бояться ошибаться, учиться на ошибках и быть любознательным: это помогает разбираться в новых инструментах.

    В будущем я хочу продолжать заниматься менеджментом в IT и углубляться именно в продакт-менеджмент — создавать и развивать технологические продукты. Мне нравится заниматься исследованиями продукта и аналитикой поведения пользователей, тестировать разные гипотезы. Для управления проектами я использую методологию Scrum — мы делим проект на небольшие циклы (спринты) и выполняем их поэтапно.

    Как преподавание помогает в работе

    Когда я начинал карьеру, хороших онлайн-курсов еще не было. Но когда я стал заниматься JavaScript, они появились: я обучался конкретным вещам, которые были нужны в работе, например функциональному программированию. Сейчас я беру онлайн-курсы по менеджменту, например по фреймворку Jobs To Be Done (JTBD) и продуктовым исследованиям. Также я стал преподавать сам.

    JTBD — это фреймворк, согласно которому продукт, который создает компания, должен решать проблему пользователя — «выполнять работу». Поэтому, создавая новое решение, нужно отталкиваться от проблем покупателя.

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

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

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

    Советы

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

    Если говорить о том, с чего начинать учиться программированию, я бы посоветовал C++. Если вы уже осваиваете другие языки, посвятите C++ хотя бы полгода в фоновом режиме. С этим знанием JavaScript, да и все остальное становится простым и понятным.

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

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

    Учтите, что по ходу карьеры собеседования на новые позиции будут становиться сложнее. Если на первом собеседовании меня спрашивали о теории JavaScript, то на последнем уже давали нетривиальные задачи, которые можно решить только имея опыт работы.

    Во время работы у вас будут разные сценарии развития. В такие моменты главное — выбрать то, что действительно интересно. Например, я думал: оставаться в .NET или идти во frontend на JavaScript. У меня была возможность попробовать обе области, и я быстро понял, что frontend мне нравится больше. Там, где больше интереса, будет больше стимулов учиться и развиваться.

    Скопировано
    0 комментариев
    Комментарии