«Рынку нужны программисты»: братья-разработчики — о любви к профессии и преподаванию

Kate

Administrator
Команда форума
Найти любимое дело — мечта, пожалуй, каждого. Хорошо, если работа нравится и заряжает энергией. А решение сложной задачи — лучшая награда. Тогда развитие в профессии происходит быстрее. Наступает момент, когда хочется передавать знания другим. Готовить кадры, которые нужны отрасли, и помогать новичкам быстрее адаптироваться на работе.

Так Илья и Фёдор Сазоновы объединили свой опыт в разработке и создали курс по Java для людей без бэкграунда в IT. Основная задача их программы — за 11 месяцев дать новичку необходимый набор знаний, чтобы после обучения он устроился junior-специалистом. В статье братья рассказали, как сами пришли в программирование и почему хотят обучать других.

Илья Сазонов, 38 лет​

Руководитель backend-разработки во «Всегда.Да». Автор и преподаватель курса «Java-разработчик» в онлайн-университете Skypro

Фёдор Сазонов, 30 лет​

Руководитель направления Java-разработки ИТ сети продаж в Сбере. Техлид и преподаватель курса «Java-разработчик» в онлайн-университете Skypro

«Я хотел стать программистом, чтобы самому делать игры»​

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


Илья Сазонов: Мама работала программистом, и лет с пяти я тоже хотел этим заниматься. Когда поиграл в компьютерные игры, решил обязательно учиться на разработчика, чтобы самому делать игрушки. В моем детстве не было современной литературы по IT: в доступной описывали древние языки. Изучать программирование я начал с двенадцати лет — в школе нам преподавали Basic.

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

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

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

Но я понял, что патентоведение — не мой путь. Я хотел больше общаться с программистами, а не с юристами и теплофизиками. Тогда я ушел в американскую компанию и проработал в ней пять лет: занимался backend-разработкой и взаимодействием между командами. Потом сменил еще три места и оказался во «Всегда.Да» — стартапе в сфере FinTech.

Я руковожу backend-разработкой, настраиваю процессы. Мы занимаемся продуктовой разработкой: предлагаем сервис рассрочек как федеральным сетям, так и локальным магазинам — используем Java на backend, JavaScript на frontend, Kotlin и Swift для мобильных приложений.

«Когда поймешь, что свернул не на ту дорожку, я научу тебя программировать»​

Если Илья сразу выбрал профессию и другую даже не рассматривал, то Фёдор планировал стать энергетиком. Но в институте понял, что отрасль ему неинтересна. Илья рассказывал брату про программирование и ждал, когда тот захочет его изучать.


Фёдор Сазонов: В детстве я хотел быть программистом, меня привлекали компьютерные игры. Думал даже: «Буду хорошо учиться, чтобы стать программистом». Но когда пришло время поступать в институт, выбрал ядерную энергетику. Мой город Обнинск ориентирован на эту отрасль, к тому же папа — теплофизик. Я проходил стажировку по специальности, был на атомной станции, в конструкторских бюро. Тогда я понял, что профессия не для меня.

Илья периодически говорил о программировании, предлагал попробовать. На последних курсах я решился. Брат учил меня около года с перерывом на дипломный проект. В начале он помогал много, со временем я уже сам находил ответы на вопросы. Летом я занимался по восемь часов в день. Обычно сложно заставить себя учиться, это же скучный процесс. А мне нравилось. В дипломе я использовал навыки программирования, которые к тому моменту уже приобрел.

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

«Я всегда считал, что программист — лучшая профессия»​

Илья любил объяснять и делиться знаниями еще в школе. Родители уделяли много времени обучению и подробно разбирали с ним любые вопросы. Всем, кому интересно пообщаться на тему программирования, Илья с радостью рассказывает про свой опыт.

Илья: У меня в голове не укладывается, что кому-то неинтересно быть разработчиком. Я рассказывал брату, как круто им работать. Говорил, что научу программированию, как только у него появится желание. Оно появилось на последних курсах института.

Я проводил с Фёдором эксперимент. По своему опыту знал, что в первый год работы требуется только 10–20% знаний из всех, что мне дали в вузе. Если я ему расскажу эти 10%, он уже сможет работать. А остальное изучит в процессе, главное — желание.

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

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

«Мы хотим готовить людей, которые нужны индустрии»​

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

Съемки видеоурока
Фёдор: Я уже шесть лет в профессии. Даже работал Java-разработчиком в игровой индустрии — исполнил детскую мечту. Сейчас руковожу направлением Java-разработки в одной из команд ИТ сети продаж в Сбере. В том числе нанимаю junior-специалистов и знаю, что им не хватает практических навыков. Мы с Ильей и раньше обсуждали, чему важно научить программиста за короткий период. Он постоянно учит людей, я с этими людьми работал. Илья обучал меня, и его способ помог мне устроиться на первую работу.

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

Илья: Мы с Фёдором собеседуем junior-специалистов и знаем, что компании ждут от них. На курсе готовим людей, которые нужны индустрии. А сейчас востребованы Java- и backend-разработчики, которые программируют с использованием технологии Spring. Если взять 100% IT-рынка Java программистов, то мы готовим не под 20%, а по моим ощущениям, под 80–90%.

Я сталкивался с разработчиками, которым не хватало практических навыков. Им давали базу, но то, что каждый день понадобится в работе, не объясняли. В результате человек не умеет решать простые задачи. Это происходит потому, что на курсах берут институтскую программу за все пять лет и пытаются дать весь материал за полгода. Например, говорят про многопоточность — моя отдельная боль. Считается, что начинающему разработчику обязательно уметь писать многопоточный код, но на практике junior-специалисту такие задачи не доверят.

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

«Мы ориентируемся на тех, кто ничего не знает в программировании»​

Подготовка курса — командная работа. Илья и Фёдор отвечают за программу и уроки. Методист проекта рассказывает им про подходы к обучению и помогает правильно распределить нагрузку между модулями. Наставник готовит практические задания, проводит консультации и отвечает на вопросы студентов.

Фрагмент видео урока курса «Java-разработчик»
Фрагмент видео урока курса «Java-разработчик»

Фёдор: В короткий срок невозможно рассказать очень много. Но можно подготовить специалиста, который выполняет типовые задачи. На рынке требуются такие разработчики. В том числе мне они нужны.

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

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

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

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

Конечно, junior-разработчику нужно проходить собеседования. А на них спрашивают не только то, что человек будет делать на работе. Поэтому знания, которые понадобятся на интервью, мы тоже даем. Материал объясняем на реальных примерах из жизни. Я знаю, что про объектно-ориентированное программирование обычно рассказывают на примере классификации: животные, млекопитающие, птицы. А я объясняю на примере чертежей и конструкторской документации, на мой взгляд, это понятнее и ближе к тому, что люди будут делать в разработке.

«Софт-скилы и навык собеседований тоже надо развивать»​

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

Фёдор: Разработчикам важны софт-скилы. Если человеку тяжело общаться, он не сможет хорошо работать. Я знаю ситуации, когда перед junior-специалистом ставят задачу. А он, вместо того чтобы ее решать, три дня стесняется и ничего не спрашивает. В итоге время потеряно. Когда только осваиваешься в профессии, нужно задавать вопросы. Всем будет от этого лучше.

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

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

«Мы хотим делиться накопленным опытом: это полезно для индустрии»​

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

Фёдор: Мне повезло: я люблю то, чем занимаюсь. Мне нравится решать рабочие задачи. Для меня курс — возможность поделиться знаниями. Я могу рассказать, как справлялся с трудностями в обучении и работе. Тогда человеку не придется тратить много времени, он получит результат быстрее, чем я.

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

Фрагмент видеоурока курса «Java-разработчик»
Фрагмент видеоурока курса «Java-разработчик»

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

Мне нравится преподавать, я обучил многих программистов. Рассказываю про свой опыт не только на работе, еще участвую в конференциях. Сейчас мы с Фёдором готовимся к Java-конференции Joker. Для меня это возможность поделиться своими идеями и узнать мнение других разработчиков. В будущем хочу еще создавать курсы: это очень интересно и полезно — готовить специалистов для IT-отрасли.

 
Сверху