Работают ли курсы в IT: разбираемся вместе с выпускниками и экспертами
В чатах кодеров считается хорошим тоном ругать курсы, мол, понаехали тут всякие. А как к онлайн-образованию относятся на рынке?
mohamed_hassan / pixabay
Программистом можно стать тремя путями: отучиться в университете, разобраться во всём самостоятельно или окончить курсы. Первые два варианта кажутся благородными и надёжными, а вот курсы в IT-тусовке обычно жёстко хейтят. Мы поговорили с выпускниками, рекрутерами, тимлидами и другими участниками IT-рынка и выяснили, каковы шансы стать хорошим программистом после онлайн-курсов и что для этого необходимо.
Кто участвовал в обсуждении:
- Антон Назаров — iOS & C++ разработчик в Grid Dynamics, спикер AppsConfRussia и Moscow Python.
- Анна Оглузина — рекрутер в «Мегафоне», отвечает за подбор разработчиков.
- Александр Максимкин — джуниор-веб-разработчик, выпускник «Яндекс.Практикума».
- Валентин Домбровский — сооснователь в MoscowPython и Geekfactor.io, CEO Drylabs, сооснователь курсов программирования LearnPython.
- Дмитрий Карпов — Python-разработчик, выпускник Skillbox.
- Николай Мельников — руководитель Sebbia.
- Илья Космачев — джуниор-веб-разработчик, выпускник «Яндекс.Практикума».
- Юрий Иванов — руководитель группы подбора и адаптации, HR-менеджер в «Симбирсофт».
— Помогают ли курсы сменить профессию, особенно когда тебе за 30?
Дмитрий Карпов: Я хотел стать Python-разработчиком, и это получилось — хотя у меня семья, дети, ипотека и мне 36 лет. До курсов я десять лет проработал в 1С. Учиться начал с бесплатного интенсива в январе 2020 года. После этого начал искать более серьёзную программу — чтобы освоить профессию за четыре-пять месяцев. Выбрал Skillbox.
Александр Максимкин: Я отучился на пиарщика — но в итоге не проработал по специальности ни дня. А в 34 года решил кардинально поменять свою жизнь. Последние годы я занимался колеровкой красок — в этом направлении я вырос максимально, не осталось ничего, что я мог бы выучить, чтобы продвинуться по карьерной лестнице и начать зарабатывать больше. Я начал искать в интернете и понял, что хочу в IT — возможности для развития там почти безграничны. Но вариант снова пойти в вуз и потратить ещё пять лет меня не радовал. Поэтому я проанализировал рынок и выбрал курсы веб-разработки.
Илья Космачев: Программистом я хотел стать ещё в школе — но тогда меня запугали. Мол, это сложно. В итоге получил среднее специальное, работал автомехаником, менеджером по продажам — даже побывал предпринимателем. Спустя шесть лет таких мытарств решил, что всё-таки надо отучиться на разработчика. Высшее образование — это круто, фундаментально, но долго. А мне хотелось стать программистом быстро и комфортно. Сначала пробовал учиться сам, но вышло не очень — слишком много информации, технологии быстро меняются. Мне не хватало системы и опытного наставника. Сейчас я уже работаю джуниором.
Дополнение редакции
Если вам не 30, а 50 — это тоже не проблема. Барбара Страук из New York Times в своей книге «Тайны мозга взрослого человека» пишет, что пик способностей мозга приходится на 40–60 лет. А на vc.ru есть целая подборка историй западных айтишников, которые поменяли специальность после 50 лет.
— Как работодатели относятся к IT-курсам и как выбрать правильную онлайн-школу?
Антон Назаров: Сейчас IT-курсов на рынке — как грязи. Хорошо, когда это курсы от компании, которая проводит их, чтобы закрыть свой кадровый вопрос: вырастить своего специалиста дешевле, чем перекупить. Спрос на рынке бешеный. Если ты взял человека на работу и вырастил из него специалиста, он будет тебе благодарен и, скорее всего, не сбежит в другую компанию за большей зарплатой.
Дополнение редакции
Конечно же, двух занятий в неделю маловато, чтобы стать разработчиком. Профи советуют обращать внимание на репутацию компании, учебную программу и её длительность, состав преподавателей.
Анна Оглузина: В общей массе кандидатов выпускников курсов немного, но они есть. Например, двух человек после курсов мы приняли на стажировку iOS-разработчиками. Требования были несложные: способность самостоятельно написать простое приложение на Swift или Objective-C. Оба стажёра только что окончили курсы, но в резюме у них были собственные мобильные приложения. Благодаря этому мы их и взяли — причём обоих, хотя искали только одного. За год они сильно выросли, и мы взяли их в штат. Они выпускники технического вуза, хорошо учились в школе, но разработкой до курсов никогда не занимались.
Николай Мельников: Опыт работы с курсами я не могу отнести ни к положительному, ни к отрицательному. Но то, что благодаря курсам больше людей приходит в IT, — это, наверное, хорошо. Тем более, что после курсов приходят более зрелые люди, чем выпускники вузов: у них уже есть жизненная позиция, опыт, установки. Они в IT осознанно — с ними проще найти общий язык. А вот с молодёжью есть проблема: многие ринулись в IT не по призванию, а кризис образования только усугубляет ситуацию — средний уровень профессионализма сильно упал.
— Можно ли ограничиться информацией с курсов или придётся многому учиться самостоятельно?
Николай Мельников: Стандарты в компаниях отличаются — из-за этого сильно разнятся и программы курсов. И большой вопрос, насколько правильно составлена программа конкретного курса. Но вообще-то сотрудников всё равно приходится переучивать — требования к клиентской разработке всюду очень разные. И так будет в любой компании. Например, все приходят со знанием JavaScript, а надо учить и TypeScript.
Лет двадцать назад вебмастер глубоко понимал всё, с чем приходилось работать. Сейчас появилось разделение на узкие специализации: фронтенд, бэкенд, iOS, Android. В результате специалист не понимает, что происходит вокруг, как работает технология, с которой он сталкивается, как она взаимодействует с другими технологиями. И если вы пришли в профессию, придётся разобраться в устройстве систем. Например, надо понимать, что фронтенд — это лишь маленькая часть всего.
Дополнение редакции
Восполнить пробелы в образовании — не сложно. Старший управляющий Egnyte, Грег Нойштеттер, советует всем начинающим разработчикам прочитать книги по дискретной математике, шаблонам проектирования и проектированию алгоритмов.
Дмитрий Карпов: Мне материалов курса было недостаточно, чтобы устроиться на работу. Пришлось дополнительно изучить Docker, Linux, систему автоматизации развёртывания приложений Ansible, Kubernetes, базы данных PostgreSQL и MySQL, фреймворки Flask, Django, REST API.
— Что лучше: вуз с профильным образованием, стажировка или курсы?
Николай Мельников: Из Skillbox мы взяли 1 человека из 4 — то есть 25%. И хотя выборка довольно маленькая, по опыту других наших эйчар-активностей это хороший показатель. Например, мы активно сотрудничаем с вузами, но там только 1 подходящий соискатель из 10. Был небольшой опыт работы с «Яндекс.Практикумом» — там показатель 1 из 7.
Дополнение редакции
Вуз не спасёт, если есть пробелы в знаниях. Высшее образование не всегда учит работать с современным стеком технологий, да и уровень выпускников-программистов зачастую весьма посредственный. Большинство технических директоров считает, что высшее образование для соискателя совсем не обязательно. Обязательны только знания и навыки.
Юрий Иванов: Профильное образование — не ключевой фактор. У нас сеньором фронтендеров работал человек с дипломом психолога-педагога.
Антон Назаров: Если вы уже что-то знаете, можно попробовать стажировку. Я сам начинал со стажировки. Преимущество — взрослые опытные специалисты, которые помогут и научат. Если базовых знаний нет, стоит пойти на курсы. Но тут как с годовым абонементом в фитнес-зал «с 1 января»: можно его купить, а в итоге посетить только пару тренировок. Поэтому лучше отдавать предпочтение курсам с балльной системой, геймификацией, постепенным открытием доступа к материалам и жёсткими дедлайнами. Курсы, на которых нужно только смотреть видео, лучше обходить стороной. Хорошо, когда есть ментор, который ответит на вопросы и направит.
— Кому легко учиться на курсах и как добиться результата?
Александр Максимкин: Всё, кроме HTML и CSS, будет даваться трудно. Поэтому не советую приходить с завышенными ожиданиями. Например, в JavaScript, Node.js даже сами концепции сложные. Сначала мозг вообще отказывался воспринимать информацию — только через три недели мышление подстроилось. Важно проявить терпение и не сдаваться, когда всё сложно.
Антон Назаров: В первые полгода я держал открытыми около 40 вкладок в браузере. Конечно, половину из них я так и забросил, а ещё часть просто не усвоил. Но всё равно потреблять как можно больше профессиональной информации — единственный способ понять, как всё работает.
Легче всего, если есть наставник — друг или знакомый, который знает больше, чем ты. Этим хороши курсы и стажировки с менторами. Когда ты один, становится очень сложно — повышается риск сдаться и всё бросить.
Дополнение редакции
Чтобы учиться эффективно, лучше уделять время занятиям каждый день и избегать длительных перерывов. Ставьте чёткие цели: чтобы понять, куда двигаться, смотрите требования к интересующим вакансиям и включайте упомянутые там технологии в свой учебный план.
Валентин Домбровский: Хороши те курсы, которые сфокусированы именно на практике. Я считаю, что любой навык необходимо отрабатывать. В IT теория без практики не нужна, а практика без теории опасна. Это как сесть без инструктора за руль и поехать по Москве — проедешь недолго.
Для учёбы будет достаточно часа в день. Главное — двигаться планомерно, не делать больших перерывов. Нельзя неделю не садиться, а потом пытаться сделать всё за один день. Без постоянной практики знания быстро теряются.
Дмитрий Карпов: Уроки на курсах не показались мне сложными — в них рассказывали о понятных вещах простым языком. А я уже был знаком с программированием — занимался разработкой под 1С. Базовые концепции — циклы, массивы, структуры данных — похожи во всех языках. Так что бэкграунд мне помог.
— Как найти работу после курсов, если нет опыта в программировании?
Александр Максимкин: Мало кто после курсов сразу находит работу — сначала придётся прокачать навыки. На поиск работы новичку без опыта понадобится полгода-год. Отсутствие опыта — не какая-то непреодолимая преграда, опыт легко получить на фрилансе и в собственных проектах во время обучения и поиска работы.
Я окончил учёбу два месяца назад и сейчас дополнительно прохожу курс по React — это самый популярный фреймворк. Ещё планирую сделать несколько своих проектов, чтобы потренироваться и пополнить портфолио. Когда освою React, начну более активно искать работу.
Дмитрий Карпов: В мае я составил резюме по образцу с курса и стал откликаться на вакансии — причём не только джуна, но и мидла. Получил около 40 отказов. Я не огорчался: на первых порах отказы — это нормально. К тому же было и два предложения — но они мне не подошли.
Ещё я отправил резюме в программу трудоустройства Skillbox. Они переслали мои контакты в эйчар-отдел Group-IB, международной компании, которая занимается кибербезопасностью. И меня пригласили на собеседование. После технического интервью я получил тестовое из двух задач. На него дали всего восемь часов. Потом оказалось, что я многое сделал неправильно. Я уже думал, что меня не возьмут, — а мне прислали оффер. Теперь я — младший Python-разработчик в Group-IB.
Дополнение редакции
Отказы — нормально. Рано или поздно начнут поступать и предложения. Не стоит соглашаться на первый же оффер, вакансия должна понравиться. Также вам могут дать совет подучить какие-то технологии и прийти на собеседование в следующий раз. Так что получать обратную связь полезно для роста.
Илья Космачев: Найти работу непросто — сейчас большая конкуренция среди джунов. Курсов на рынке много, и они ещё не завоевали доверия у работодателей. На собеседованиях я не раз слышал, что всем всё нравится, но не хватает уверенности в моих знаниях: есть моменты, где я плаваю. Но это неудивительно — всю информацию на курсе приходилось усваивать в сжатые сроки.
Мне порекомендовали ещё полгода попрактиковаться на собственных проектах, чтобы в голове всё улеглось, а потом прийти снова. Советую больше общаться, быстрее входить в тусовку, набирать знакомства, следить за топовыми экспертами в сфере и много практиковаться.
— Как готовиться к собеседованиям?
Анна Оглузина: У нас был и позитивный, и негативный опыт собеседований с выпускниками курсов. Например, аналитику и Big Data многие изучают, потому что это модно. Такие люди занимаются не очень старательно и проваливают собеседования. Попадались соискатели, которым не хватило понимания SQL или теоретических знаний. Я рекомендую перед собеседованием перечитывать теорию, чтобы освежить основы.
Многие обещают выполнить и прислать тестовое к определённому сроку — и не присылают. Если кто-то выслал его вовремя — это уже хороший показатель. Джунам важно продемонстрировать обучаемость, усидчивость, способность организовать свою работу. Это касается всех новичков — на первом месте работы придётся многому учиться.
Ещё важна здоровая уверенность в своих силах. У нас одна из кандидатов в iOS-разработчики пришла из финансов и без технического бэкграунда. Мы её не взяли только потому, что она проявляла неуверенность. Всё время упоминала, что у неё нет технического бэкграунда, извинялась за прошлый опыт. Если бы не это, у неё были бы все шансы — она соответствовала требованиям и хорошо справилась с тестовыми.
Дополнение редакции
Для трудоустройства важны уверенность в себе и софт-скиллы: терпение, пунктуальность, обучаемость и способность к самоорганизации. На них смотрят не меньше, чем на технологический стек.
Юрий Иванов: Какой-то процент сотрудников мы нанимаем после курсов. Основные критерии: скорость обучения, горящие глаза и желание развиваться в IT. Стажёры с сильной мотивацией могут делать очень много. И если мы видим, что человек готов инвестировать время в развитие, новые знания, — мы его возьмём. Конечно, не обходится и без печальных кейсов — когда у людей во время стажировки пропадает энтузиазм. С такими мы прощаемся, но не внезапно — сначала даём фидбэк и ставим срок для исправления ситуации. Мы предлагаем соискателям углублённую оплачиваемую стажировку. На ней даже те, кто пришёл с минимальным опытом, достигают хороших результатов.
Дополнение редакции
Работодателям требуются ваши навыки и опыт, а не корочки и сертификаты. Поэтому лучший способ подготовиться к собеседованию — решать тестовые задания и проводить работу над ошибками.
Антон Назаров: Если тебя позвали на собеседование, когда у тебя в резюме только курсы, ты уже молодец. Потому что многие смотрят прежде всего на опыт. Для новичков попасть на собеседование и есть главная задача. И если позвали на одно, то, скорее всего, позовут ещё на три-четыре. Ходить по собеседованиям надо, пока не перестанешь ошибаться.
У меня так и работало. На первом собеседовании я был полным нулём. Потом потренировался и в итоге на третьем уже ответил на все вопросы. Задача на собеседовании — показать, что ты не просто прослушал курсы, а добился результата: вот мой проект, вот код, вот ссылка на GitHub-профиль.
Не нужно пугаться негативных реакций. Я писал в Twitter тред о том, как проходил собеседования на российском рынке — причём уже будучи сеньором. Так вот, отношение рекрутеров преимущественно было очень токсичным и неприятным. Поэтому расстраиваться не надо, нужно записывать вопросы и навёрстывать пробелы. Много отказов происходит даже не из-за отсутствия знаний, а потому что вы не сошлись характерами с работодателем. Такие отказы — это отлично, потому что вы не будете надоедать друг другу на работе.
Валентин Домбровский: Если за спиной есть техническое образование, будет легче. Одного нашего выпускника, который очень хорошо знал математику, пригласили работать над проектами в сфере Big Data. Но его знания Python были скорее приложением к математике. Далеко не всегда от кандидата требуется всё, что описано в вакансии. Работодатель нередко готов пойти на компромисс и взять человека, который соответствует требованиям только на 70%. Главное — не засиживаться в стадии «я ещё не готов». Если вы действительно не готовы — вам скажут об этом на собеседовании и даже могут дать рекомендации, что именно надо подкачать. Ищите любую возможность получить обратную связь.
Илья Космачев: Если просто читать теорию, ничего не выйдет. Самый действенный способ прокачать практику — рассылать резюме и выполнять тестовые задания. Ещё можно загуглить проекты для новичков и начать их делать. Чтобы попрактиковаться на реальных задачах, можно попробовать и фриланс. Тренажёры — вещь полезная, но они не заменят практику. Хотя некоторые работодатели смотрят статистику на Сodewars.
Что дальше?
Похоже, курсы — не волшебная таблетка, которая автоматически сделает вас выдающимся разработчиком. Придётся перестроить мышление и освоить множество сложных концепций. На поиск первой работы понадобятся время и терпение. Зато она позволит быстро прокачать свои навыки и профессионально вырасти.
После оффера всё равно придётся много учиться — уже самостоятельно. И скорее всего, этот процесс никогда не закончится. А ещё пригодится практика: работа над собственным проектом или тренировки в игровом формате в CodinGame, SoloLearn, CodeCombat, HackerRank и других тренажёрах.