Как мы сделали бесплатную программу обучения веб-разработке и трудоустроили 60 выпускников

Привет! Меня зовут Сергей Черепанов, я технический директор студии разработки MetaLamp. Как и все IT-компании, мы постоянно испытываем дефицит кадров — на рынке не хватает специалистов, а перекупать людей с зарплатой ×3-×4 мы не можем. В конце концов, мы не условный Facebook и даже не огромный банк.

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

Четыре абзаца о том, как все появилось

Мы сделали компанию MetaLamp, когда учились в Томском государственном университете систем управления и радиотехники, еще в 2014 году. Тогда это были небольшие проекты на фрилансе, командой из 3-4 человек. Чтобы расширять бизнес, нужны были новые кадры, а денег на специалистов не было.

Поэтому я искал студентов, которые интересовались веб-разработкой, и давал им ресурсы для обучения — искал источники информации, придумывал задачи. Так команда разрослась до 10–12 человек, они и стали костяком MetaLamp.

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

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

Что за программа обучения и зачем она нужна

В работе мы используем довольно узкий стек технологий: связку Typescript+React и Haskell. Поэтому программу строили так:

  • Frontend — обучаем разработке на JavaScript. Мы считаем, что сразу учить какому-то фреймворку не эффективно. Ведь если человек глубоко разобрался в JavaScript, условный React|Angular|Vue он поймет очень быстро.

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

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

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

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

Из обучающихся, которые прошли первый этап рефакторинга, мы формируем команды по 4-6 человек. И выдаем им разработку проекта с нуля на React, который займет 2 месяца. На этом этапе мы симулируем реальные условия разработки, с опытным практикующим разработчиком в качестве тимлида, проектным менеджером, который обеспечивает работу по Agile методологии, со спринтами и демо промежуточных результатов проекта «заказчику» раз в две недели.

Мы рассчитывали, что обучение займет около 600-1000 часов, но в среднем выходит чуть больше — 8-12 месяцев при 30 часах занятости в неделю. Если у человека есть базовые знания программирования, будет проще и быстрее. Если нет, не проблема, разобраться с циклами, переменными и функциями можно в процессе.

Программа обучения полностью бесплатная

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

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

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

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

Как обучающиеся находят нашу программу

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

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

Вакансия на HeadHunter все еще размещена, и по ней мы уже получили 27.5 тысяч заявок на фронтенд направление и больше 9 тысяч заявок на бэкенд направление — это те, кто заполнил анкету и получил доступ к задачам.

Результаты образовательного проекта

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

Сейчас в первом чате фронтенда у нас 4500 человек — это те, кто проходит первое теоретическое задание. Во втором — 1650 человек. В чате третьего и четвертого задания 310 участников. На пятое задание вышли 160 человек. По изучению Haskell есть только один чат, в нем 1200 участников.

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

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

Что за люди приходят на работу и почему мы гарантируем трудоустройство

Программа обучения — это наш основной рекрутинг-канал. У нас был опыт найма со стороны, но это было не совсем то, что нужно. А выпускникам программы мы всегда рады по следующим причинам.

  • Это люди с сильной волей. Когда ты в среднем год выделяешь каждую неделю по 30 часов на обучение, значит, у тебя все в порядке с волей, у тебя есть сумасшедший энтузиазм.
  • Это люди, которым интересна разработка. В отличии от коммерческих онлайн-курсов по программированию, мы не стремимся сделать программу так, чтобы обучающийся ее точно закончил к определенному дедлайну. У нас все построено на интересе к разработке. Причем знания фундаментальные, это сложно. Поэтому те, кто закончил нашу программу обучения, на деле доказали, что любят айти и программирование.
  • Это люди, лояльные к компании. Программа обучения бесплатная, мы гарантируем трудоустройство, долго взаимодействуем с обучающимися, помогаем им реализоваться. Результат этого — условный кредит доверия к нашему агентству. Закончившие программу понимают, что мы не просто обещаем что-то, а соблюдаем договоренности.

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

Две причины, почему мы гарантируем трудоустройство каждому, кто закончит программу и пройдет собеседование

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

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

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

Еще одна причина - трудоустройство для многих является важным мотиватором в прохождении программы.

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

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

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

Сколько стоит сделать и содержать такую образовательную программу

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

Самые активные ревьюеры тратят на ревью по 4-6 часов в неделю, остальные намного меньше. Менеджер проекта ведет обучающихся на заключительном этапе по Agile методологии - это нужно для шестого, командного задания программы. Сейчас на образовательную программу мы тратим примерно 200 000 рублей в месяц.

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

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

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

Кратко. Как сделать образовательную программу и трудоустроить 60 отличных специалистов в IT

Вот несколько выводов, которые я сделал из работы над нашей программой:

  • Образовательная программа может стать «кузницей кадров» для IT-компании. Сейчас это наш основной HR-канал.

  • Гарантировать трудоустройство, возможность войти в IT — это отличный способ мотивировать талантливый людей начать и не бросать обучение.

  • Сделайте обучение тестом на энтузиазм. Если студент прошел все задания, значит, ему действительно интересна разработка. Тем более, что программа полностью бесплатная, поэтому мотивации «заплатит и поэтому закончит» нет.

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

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

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

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

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

0
41 комментарий
Написать комментарий...
Аккаунт удален

Комментарий недоступен

Ответить
Развернуть ветку
Ренат Лотфуллин

интересно, а выпускники скилбокса, гигбрейнс и т.д. к вам трудоустраивались и каков уровень?

Ответить
Развернуть ветку
Аккаунт удален

Комментарий недоступен

Ответить
Развернуть ветку
Timon

У нас в провинциальной жопе зп джуна на php плавает в границах 20-30 тыс, ни о каком килобаксе и речи быть не может, это уровень мидла

Ответить
Развернуть ветку
Sergey Furtaev

Как будете действовать, когда огромный банк перекупит всех ваших вчерашних выпускников?

Ответить
Развернуть ветку
Oleksii Stupin

Так они потому Хаскелю и обучают чтобы не перекупили :)

Ответить
Развернуть ветку
MetaLamp
Автор

Это риски агентского бизнеса, мы будем работать дальше

Ответить
Развернуть ветку
Sergey Furtaev

Ааа, так вы - галера, а не продуктовая компания? Простите, не узнал в гриме.

Ответить
Развернуть ветку
Аккаунт удален

Комментарий недоступен

Ответить
Развернуть ветку
Aleks B

Бозе-Эйнштейна ( ͡° ͜ʖ ͡°)

Ответить
Развернуть ветку
Всвиторе

Слишком умно, шутканите по простому.

Ответить
Развернуть ветку
Aleks B

не могу себе позволить ( ͡° ͜ʖ ͡°)

Ответить
Развернуть ветку
Alena Dzhukich

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

Ответить
Развернуть ветку
Константин Приветов

Так в любой сфере. Это только маркетологи по продаже курсов всем с**т в уши, что каждый может и т.д. Ну и инфомошенники, что, собственно, одно и то же.

Ответить
Развернуть ветку
Екатерина Попова

Чтобы чего-то добиться надо работать, это не новость как бы.

Ответить
Развернуть ветку
Артём Сергеевич

Суть не в работе а в таланте, ты мышление человека не переделаешь, если у него от природы ну нет способности к программированию

Ответить
Развернуть ветку
Nik N

Если долго мучаться, что-нибудь получится)

Ответить
Развернуть ветку
Tatyana

Айти это не только программирование) вопрос времени и мотивации. А вообще круто что можно бесплатно попробовать. И понять надо ли тебе, можешь ли

Ответить
Развернуть ветку
Александр Максимов

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

Ответить
Развернуть ветку
MetaLamp
Автор

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

Ответить
Развернуть ветку
Вячеслав Чулкин

Потому и Haskell) Куда они пойдут, 3.5 компании его используют, переучиваться на другой стек требует времени

Ответить
Развернуть ветку
Sergey Sergeev

Haskell только на бэкенде, и его изучает гораздо меньше людей. Основная масса идет на фронтенд, там JS, TypeScript.

Ответить
Развернуть ветку
Миша Магадан
когда огромный банк перекупит всех ваших

немного чёрного юмора - бабы новых нарожают

Ответить
Развернуть ветку
Константин Приветов

Это не черный юмор.

Ответить
Развернуть ветку
Александр Королёв

Согласен, он уже коричневый

Ответить
Развернуть ветку
Ekaterina Ekaterin

какая начальная з/п после обучения?

Ответить
Развернуть ветку
MetaLamp
Автор

Смотря куда трудоустроитесь. У нас 40к на время испытательного, после прохождения - пересматриваем. У партнеров иногда выше

Ответить
Развернуть ветку
Ekaterina Ekaterin

испытательный срок сколько обычно длится?
а после испытательного срока можете сказать "вы нам не подходите"?

Ответить
Развернуть ветку
MetaLamp
Автор

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

Ответить
Развернуть ветку
Аккаунт удален

Комментарий недоступен

Ответить
Развернуть ветку
Dmitry Ilyin

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

Ответить
Развернуть ветку
Руслан Ніколаєнко

это уже давно так делают как лидера, так и аутсайдеры)

Ответить
Развернуть ветку
Андрей Паскарь

Забыли подметить что эта тема работает только до первого крупного банка

Ответить
Развернуть ветку

Комментарий удален модератором

Развернуть ветку
Павел Гейт

Люди у вас на удаленке или все в офисе работают?

Ответить
Развернуть ветку
MetaLamp
Автор

У нас бОльшая часть штата на удалёнке. Офис есть в Томске, но для томичей он тоже опционален)

Ответить
Развернуть ветку
Alexander Shakun

MetaLamp это экс FSD?

Ответить
Развернуть ветку
MetaLamp
Автор

Да, раньше мы назывались Fullstack Development (FSD)

Ответить
Развернуть ветку
Roman Tyan

Трудоустройство только для граждан РФ, Казахстан не рассматриваете?

Ответить
Развернуть ветку
MetaLamp
Автор

В данный момент трудоустраиваем только граждан РФ. На входе в программу мы предупреждаем обучающихся об этом условии

Ответить
Развернуть ветку
Art.Spark

спс, а то я человеку из Донецка хотел вам порекомендовать

Ответить
Развернуть ветку

Комментарий удален модератором

Развернуть ветку
Дмитрий Медведев

Доброго времени суток! Вы писали что на обучение примерно уйдет 8-12 месяцев при 30 часах занятости в неделю! Работающему и семейному человеку такое время взять негде... Это маловероятно...

Ответить
Развернуть ветку
38 комментариев
Раскрывать всегда