«Если человек выбрал путь "я должен справиться сам", он будет постоянно в состоянии фрустрации»
28 апреля 2022
Текст:
Любовь Карась
Сфера IT стремительно растет, порог входа в нее снижается, при этом специалистов по-прежнему не хватает. Можно ли научиться программированию самостоятельно? Какие ошибки совершают новички и в чем разочаровываются, попадая на работу? О развитии в IT-сфере и обучении мы поговорили с основателем и CEO образовательного проекта для разработчиков «Хекслет» Кириллом Мокевниным.
Идеологи просвещения
Кирилл Мокевнин
ЛЮБОВЬ КАРАСЬ
Редактор «Теории и практики»
Сооснователь и CEO «Хекслет»
— Как вы начали развиваться в IT?
— В 2007 году, сразу после службы в армии, я попал на первую работу программистом в веб-студию. Мы сидели в московской квартире и делали веб-сайты на заказ. С тех пор я работал программистом в разных компаниях, был тимлидом, стал техническим директором. Примерно в 2011 году вернулся в родной город, в Ульяновск, где создал с нуля и возглавил подразделение московской компании Undev, которая в числе прочего обеспечивала трансляцию президентских выборов. Нам требовалось много разработчиков, поэтому внутри компании мы постоянно учили вновь приходящих ребят. Со временем мы активно влились в социальную жизнь города, начали организовывать митапы, конференции, дни открытых дверей. Я начал преподавать в университете.

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

В какой-то момент стало понятно, что наш опыт хочется масштабировать. Так я присоединился к недавно появившемуся проекту «Хекслет», организованному Рахимом Давлеткалиевым. Изначально Рахим пытался сделать аналог «Курсеры» на русском языке, но постепенно мы трансформировались в авторскую школу, специализирующуюся на программировании.
— Почему вы решили отказаться от формата Coursera?
— «Курсера» — это площадка для размещения курсов, фактически просто платформа плюс огромная организационная работа за сценой. Мы попробовали работать по такой схеме, привлекли нескольких авторов, но в итоге только один из них записал полноценный курс. Стало понятно, что у нас не получается. Да и я уже хотел попробовать себя в онлайн-обучении как автор, преподаватель и наставник.
— Как изменилась первоначальная цель «Хекслета»? Во что она превратилась?
— Я начал записывать курсы, работать со студентами, проверять их код и помогать трудоустраиваться. Нас было буквально 5 человек, и мы в таком режиме проработали много лет. За это время я создал несколько десятков курсов и обучил сотни человек. Многие из тех ребят сейчас уже технические директора, ведь прошло около 6 лет.

Сейчас «Хекслет» — это школа программирования, в которой ежемесячно учатся около 10 тысяч человек. В самой компании работает 65 человек внутри, и мы работаем с несколькими сотнями наставников, которых постоянно набираем и обучаем. Школа известна своей экспертностью и высоко ценится в среде профессионалов. Компании в своих вакансиях указывают прохождение наших курсов как плюс при трудоустройстве на начинающие позиции.
— Можете подробнее рассказать про инженерную культуру?
Работать программистом и быть хорошим программистом — это две большие разницы
Современное онлайн-образование сильно сдвинуто в сторону обучения только тем вещам, которые помогут быстрее пройти собеседование. На первый взгляд это логично, люди просто хотят поменять работу и зарабатывать много денег. Только уровень получающихся специалистов оказывается очень низким, что потом сказывается и на качестве работы, и на том, как человек растет. А много денег платят только хорошим специалистам.

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

Стоит сказать, что наша платформа практически полностью автоматизирована. Наши курсы записаны в текстовом виде. Вся практика, которую мы даем, проверяется автоматизированными системами, что, например, позволяет людям быстро получать фидбэк. То есть платформа сама по себе достаточно технологична. Так, сама платформа становится источником материала о том, как разрабатывать классные технические решения. Экспертиза «Хекслета» идет изнутри.
— А наставники?
— Курсы и задания — это хорошо, но ничто не заменит опытного человека рядом. Наставники — те самые опытные разработчики, которые делятся своей экспертностью — помогают со сложными моментами, что-то разжевывают, проводят мероприятия, например тренировки собеседований, и проверяют студенческий код на качество. С помощью наставников студенты значительно улучшают свои навыки кодинга и подходы к решению сложных технических задач. Еще наставники нередко нанимают своих же студентов к себе на работу.

С наставниками работает целая команда специалистов, которая учит их правильно работать со студентами. Для этого они проходят внутреннюю школу наставников. Эта школа помогает им не только в работе со студентами, но и в управлении командами программистов в своих компаниях.

Кроме наставников, у «Хекслета» есть команда менторов — около 10 человек, которые дополнительно перепроверяют за наставниками. Например, наставник дает ревью, отвечает кому-то, как он сделал, и так далее. Методисты и менторы могут посмотреть, как было дано ревью, насколько оно понятное. Так мы повышаем качество работы со студентами, хотя про существование менторов они не знают.
— Спасибо! Давайте поговорим немного о самой сфере IT и о том, как в нее входить. Сейчас в IT очень низкий барьер для входа. Согласны ли вы с этим?
— В целом да. Несмотря на то что в вакансиях действительно пишут больше страшных слов, недостаток программистов настолько огромный, что, в общем-то, берут всех, кто умеет соображать. Умеет соображать — остальному научим.
— При этом работодатели постоянно говорят о том, что специалистов мало. Почему так происходит?
— Потому что мало специалистов. Те, кто приходит с нуля, — это далеко не специалисты. И здесь возникает вопрос: а насколько они легко и далеко потом вырастут?
Мало тех, кто сильно растет. Многие ребята останавливаются на достаточно базовом уровне. Они годами топчутся практически на месте и не растут. Я считаю, что для того, чтобы стать настоящим профессионалом, особенно в программировании, нужно примерно лет пять.
— Какие ошибки совершают новички в сфере IT (вот джуниоры те же, когда они начинают работу)?
И речь идет не просто о пяти годах работы где-то. Речь о пяти годах в профессиональной команде, где идет постоянный рост.
— Люди действительно думают, что IT — легкий заработок, что там много денег. Но это заблуждение. В самом начале платят не так уж и много, и, чтобы выйти на какие-то серьезные цифры, придется приложить немало усилий.

Помимо зарплат, неправильно представляют объемы работ. Как правило, когда люди учатся на курсах, они жалуются, что много задач. А потом на реальной работе выясняется, что во время обучения было в сто раз легче. Студент делал проект, в котором 500 строчек кода, а когда пришел на работу, перед ним появилось 500 тысяч строчек кода. И люди впадают в полную фрустрацию.
— В процессе обучения любой студент, необязательно в IT, проходит этап отчаяния, когда ничего не получается, а усилий приложено немало. В этот момент легко потерять мотивацию. Можете дать какие-то советы, как это преодолеть?
— Здесь на самом деле все просто. Иногда достаточно отдохнуть и поспать. Иногда же у человека копится непонимание, зачем ему вообще развиваться дальше в этой сфере. Дело в том, что научиться принципиально новому самостоятельно практически нереально. Даже если человек учится самостоятельно, он все равно у кого-то спрашивает, с кем-то советуется.

У многих людей есть установка «я все должен сам». Получается, эти ребята, например, что-то читают, какой-то фрагмент неверно понимает, после этого читают следующий кусок, который связан с предыдущим. Так у них растет непонимание. Либо они начинают видеть проблему где-то в другом месте. А на самом деле они просто не поняли одну конкретную вещь. Основной способ справиться с такими трудностями — обратиться к наставнику, который поможет и направит. Тогда таких затыков практически не будет.

Речь идет не только об обучении. У меня, например, на работе с этой проблемой часто сталкиваются молодые сотрудники. Например, если ты не можешь решить задачу в течение двух часов, не видишь выхода, не продвигаешься вперед, нужно об этом обязательно сказать. Если человек за два часа этого не сделал, это значит, что он потом так же будет сидеть один день, два, три. И у него ничего не получится.
Если человек выбрал путь «я сам должен справиться», он будет постоянно в состоянии фрустрации
— Спасибо! Можете перечислить мягкие навыки, которыми должен обладать IT-специалист?
— Это довольно стандартные вещи для всех. Есть история про командную работу, ведь современная разработка — это командная игра.

Также важны терпимость к чужим решениям и способность договариваться. Как это обычно в бизнесе? Если мы видим какое-то другое решение, которое работает, то бизнесмену будет интересно. Если в программировании кто-то делает не так, как делаешь ты, то тебе говорят: «Да ты просто не умеешь». При этом сложно проверить, действительно ли оно эффективно. Потому что если в бизнесе все меряется деньгами и уровнем удовлетворения клиентов, то здесь сложнее. Не с чем сравнивать.

Вторая вещь (я бы сказал, самая важная) — это способность докопаться до истины, понять причину и следствие. Это похоже, кстати, на работу врачей. Мы иногда приходим к врачу с предположениями о том, что у нас, возможно, такая-то болезнь. А он останавливает и говорит: «Вы пока не делайте выводы, молодой человек, расскажите про симптомы, а я уже подскажу, что и как». Здесь то же самое. Когда приходит заказчик, он, как правило, идет уже с каким-то решением. И чаще всего оно неправильное. Задача программиста — докопаться до сути и предложить другой, лучший вариант. Это не всегда возможно, но имеется в виду, что то решение, с которым пришли, например, маркетологи, продавцы, продакты, может быть ошибочным, потому что они не учли миллион других факторов. А программисты, которые этого не делают, быстро заводят систему в такое состояние, что ее становится невозможно нормально развивать, любые изменения начинают требовать огромных усилий. И это, действительно, самая важная история, когда ты с ними работаешь, потому что иначе нельзя доверять человеку. Если он будет молча соглашаться со всем, что ему говорят делать, то через пару месяцев проект просто встанет.
— Спасибо, Кирилл! И последняя просьба — посоветовать нашим читателям книги.
Made on
Tilda