Зачем статья с отзывом о курсе на Хабре? Большая часть аудитории скорее всего уже работает в it, но у многих есть знакомые, которые интересуется вопросом “входа в айти”, и я пишу эту статью для того, чтобы её можно этим знакомым скинуть. На Хабре недавно был отзыв на Яндекс.Практикум, автор учился со мной на том же направлении и даже на том же потоке. Там я оставлял комментарий, где обещал написать свой отзыв. В общем, вот он.
Меня интересовала веб-разработка, потому что у меня был релевантный опыт (верстка, написание плагинов для wordpress, простеньких скриптов для связи апишек на php, python, node). Я пробовал изучать java: читал “Head First Java”, “Философия Java”, прошел половину курса Java Rush. И понял, что мне интереснее именно веб, именно фронтэнд, потому что видно наглядный результат работы, а вот с бекэндом такого нет, не чувствую удовлетворения после проделанной работы, не на что полюбоваться.
Почему из всего многообразия курсов я выбрал именно Яндекс.Практикум? Я внимательно смотрел программы, и у Практикума была адекватная в плане того, сколько технологий планировалось изучить за срок обучения (10 месяцев). Конкуренты, входящие в состав mail.ru (которая теперь ВК) не рассматривались мною из-за предвзятого отношения к компании, курсы остальных конкурентов (и самого Практикума) я скачал с сайтов со складчинами и пролистал по диагонали. То, что я увидел у Яндекса, понравилось мне больше всего.
В июне 2020 года оплатил полностью (90 000 рублей на тот момент) весь курс, чего я делать не рекомендую. Платите помесячно, если решите бросить через 3-4 месяца, не нужно будет оформлять возврат. У меня нет точных чисел, сколько людей начало учиться и сколько дошло до окончания курса, потому что я сам 3 раза брал академический отпуск и сменил 3 потока, но по ощущениям, до конца курс проходят где-то 1/3 студентов. Но опять же, могу ошибаться, это моя субъективная оценка “на глаз”.
Программа обучения - это 15 двухнедельных спринтов и дипломная работа на 5 недель в конце. Изучаются HTML/CSS, JavaScript и MERN-стек. Предусмотрена возможность 2 или 3 раза уйти в академ (зависит от потока, у меня было 3, на новых потоках вроде 2). В одном спринте есть теория, задания в тренажере и практическая работа, которую проверяют ревьюверы, и которую надо сдать со всеми исправленными замечаниями до конца спринта. Если вы не успели - то уходите в академ, если академы у вас закончились - отчисляетесь. Не все дедлайны жесткие, есть и мягкие, но тоже зависит от потока, “жесткость” дедлайнов меняется. Готовый дипломный проект выглядит так.
Про ревью практических работ. На мой взгляд, это то, за что и платится стоимость обучения. Ваш код смотрят, внятно (чаще всего) комментируют, говорят, что исправить. Для меня наибольшую ценность в обучении несли именно практические работы и их проверка. 2 раза пришлось брать академ, так как не успевал уложиться в дедлайн. Ещё 1 раз брал академ по состоянию здоровья, и тут должен поблагодарить куратора потока за то, что мне пошли навстречу и разрешили взять академ на 2 месяца, потому что за 1 месяц я мог не успеть восстановиться. Кстати, часть ревьюверов мне удалось загуглить, это были в основном выпускники Практикума.
Теория. Дана текстом, может быть похуже, чем написано на learn.javascript.ru, но зато с юмором и не скучно. Для поддержки по теории была куплена книга “JavaScript: The Definitive Guide” Дэвида Флэнагана + несколько курсов на udemy, которые я обычно смотрел заранее, то есть перед началом новой темы я уже старался почитать/посмотреть про неё, так материал усваивался лучше, чем если ограничиваться теорией Практикума.
“Уделяйте занятиям в среднем 15 часов в неделю” - это я скопировал с лендинга программы, и это моя главная претензия к Практикуму. Потому что это НЕПРАВДА. Первые 2 спринта я смог уложить в 15 часов в неделю, потому что они простые, и последние 3 спринта тоже (там основы бекэнда для фронтэнд-разработчиков, у меня был опыт работы с node, express, БД, nginx), хотя многие другие студенты на них испытывали проблемы и брали академы. А вот все остальные спринты занимали у меня 20-30 часов в неделю, спринты 8 и 9 (“JavaScript — непростые концепции”) - это вообще полноценные 40 часов в неделю, именно с них я в академ и уходил. И как эти спринты должны проходить люди с нулевым опытом и fulltime-работой?
И тут есть интересный вопрос: а можем ли мы обвинять Практикум в том, что на изучение программы по факту нужно больше 15 часов в неделю? С одной стороны - да, потому что на лендинге заявлено именно 15 часов. Но с другой стороны - а это вообще реально, освоить востребованную рынком профессию за 10 месяцев по 15 часов в неделю? Я считаю, что нет. Нужно или тратить больше часов в неделю, или 2-3 года самостоятельно учиться в более низком темпе. “Войти в айти за 10 месяцев” звучит как “выучить английский за 12 недель”, но для целевой аудитории таких курсов это неочевидно. Хорошо разобраться в js+react за 10 месяцев, имея перед этим нулевой или околонулевой опыт разработки, получится у единиц, и это скорее всего те люди, у которых хорошо получается всё, потому что они достаточно трудолюбивые и целеустремленные. И я предположу, что у них это получилось бы и без курсов, может быть ушло бы больше времени, может быть было бы сложнее, но у них бы всё равно получилось. Это наверно самый важный абзац поста для тех, кто хочет войти в айти. Задача в разы сложнее, чем то, как её пытаются преподнести маркетологи Яндекса и их коллеги из других образовательных проектов. Обучение на Практикуме будет почти настолько же самостоятельным обучением, как и обучение без Практикума, то есть по книгам, по видео на youtube и по дешевым видео-курсам с udemy и аналогов. Знания и навыки в голову никто не положит, дадут некоторую структуру для этого и мотивацию в плане того, что уплачены немалые деньги и есть риск отчисления. Ну и ревью будут в случае с Практикумом, это тоже полезно.
Онлайн-тренажер. Разработчики учебной программы пытались сделать задания интересными, хотя бы в рамках их формулировки, если уж само задание интересным сделать не получалось. НО! За 15 спринтов мне попалось в сумме заданий 10, к которым я писал правильное решение, но валидатор их не принимал. Я тратил иногда по несколько часов, чтобы понять, что не так, переписывал по-разному решение, к концу курса пришел к тому, что просто скидывал в Slack решение, которое валидатор не принимал, а наставник говорил, что исправить, чтобы валидатор принял. Если бы курс стоил дешевле, я бы закрыл на это глаза, но за 90к это провал, таких проблем нет на бесплатном freeCodeCamp и дешёвом Java Rush. Практикум писал у себя в блоге, что они анализируют, сколько времени в среднем тратится учениками на каждое задание, и редактируют те, на которые уходит слишком много времени, но я учился на 26-ом потоке, и за 26 потоков они не успели исправить всё. Плюс ещё были моменты, когда тренажер у меня просто не работал, общение с саппортом в чате ни к чему не приводило, тренажер “оживал” сам спустя некоторое время. Так же ложился бекэнд для проектных работ 7-12.
Наставник, старший студент, куратор, Slack. Всё общение в рамках процесса обучения проходит в Slack. Многим студентам он не нравится, люди жалуются, что всё плохо структурировано, но мне было в общем то удобно. Наставник - это вторая причина заплатить за курс. На каждую группу в 60-80 человек дается наставник, с ним создается отдельный канал в слаке. У моей группы наставник был хороший (Сергей Константинов), старался оперативно отвечать на вопросы. Иногда отвечал ссылками на stackoverflow, но на корректно сформулированные вопросы отвечал нормально. То есть наставник не будет искать ошибку в коде студента и не будет исправлять её сам (это иногда делал я, когда меня в лс просили помочь с кодом), но скажет, в какую сторону смотреть, скинет, что почитать. У наставника можно спросить, что от тебя хочет ревьювер, если ты этого не понимаешь сам по его комментариям, также можно через него связаться с ревьювером, если не согласен с чем-то. В общем, это полезный человек в процессе обучения. Старший студент тоже иногда отвечал на вопросы в Slack. Через куратора идут академы, выторговывание дополнительных дней к дедлайну, потому что тренажер или сервер проектной работы лежал, общие организационные вопросы. Претензий к куратору у меня нет, всё ок.
Вебинары. По большому счету бесполезны, один из наставников рассказывает теорию, показывает примеры кода по ней, иногда что-то подсказывает по проектной работе. Смотрел полностью только на спринтах 7-9, потому что было трудно с проектной работой.
Карьерный трек. Полезная информация о том, как искать работу, составить резюме, оформить портфолио.
Из плюсов отмечу еще то, что Практикум активно собирает обратную связь от учащихся и вносит изменения в программу.
Итого. Лично я доволен обучением в Практикуме. У меня была специфическая цель: я оплатил обучение исключительно для мотивации самого себя к изучению js + React: 90 тысяч плюс очень не хотелось отчислиться. С этой задачей Практикум справился.
Если у вас нулевой опыт в разработке, вы до этого не пытались купить какой-нибудь курс на udemy и сделать все задания из него, не успели понять, что возможно it - это не ваше, и работаете на fulltime-работе, при этом хотите уйти с неё в it с высокими зарплатами - я не рекомендую вам учиться в Яндекс.Практикуме или аналогах. Вы скорее всего разочаруетесь и у вас не получится.
Попробовать можно с дешевых курсов на Udemy, поделать проекты вслед за преподавателем, потом попытаться сделать этот проект заново, но уже не заглядывая в курс или в готовый код, а пользуясь только гуглом и документацией. Вот если после этого желание учиться дальше не отпадет, то можно рассматривать Практикум и другие дорогие курсы.
“Войти в айти с нуля за 15 часов в неделю за 10 месяцев” - это сложная задача, и платный курс вам в ней поможет, но не то что бы сильно. Я бы сравнил это с изучением английского языка - нужно сильное желание и много времени. Впихнуть объём работы за несколько лет в 10 месяцев трудно.
После курса искать работу я не пробовал. Во-первых, я ещё не решил, хочу ли работать в it, во-вторых, прежде чем ходить по собеседованиям, надо основательно подготовиться. Помимо того, что было в программе Практикума, нужны ещё как минимум redux, typescript, надо подтянуть теорию по основам языка и вопросы по es6.
Надеюсь, мой пост был вам полезен, спасибо за внимание.