Это для тех из вас, кто рассматривает возможность прохождения курса веб-разработки в Digital Career Institute. Я не пытаюсь делать здесь рекламу или антирекламу. Просто здесь не так много отзывов, которые рассказывают все важные вещи о курсе (и это не спонсорские отзывы), поэтому я надеюсь, что моя запись здесь поможет.
Годичный курс против буткемпа
Я прошел 14-месячный курс Full-Stack Web Development в Digital Career Institute gGmbH: очно и дистанционно. Я воздержался от прохождения более короткого курса, например, такого, как предлагают Ironhack или le wagon, потому что, как я слышал, эти курсы не стоят своих денег. Возможно, вы сможете создать какое-то веб-приложение с React после 9 недель буткемпа, но вам определенно будет не хватать более глубокого понимания, и вам придется учить себя многим дополнительным знаниям после этих курсов. Также, как утверждается, найти работу в сфере web dev сразу после таких курсов не так просто, как они обещают в своих объявлениях.
Таким образом, участие в более длительном курсе — как предлагает DCI — определенно кажется лучшим вариантом по сравнению с буткампами кодирования. WBS Coding School и Wild Code School предлагают курсы длительностью около полугода, и они тоже могут быть хороши, но у меня нет никаких дополнительных сведений об их курсах. Я наткнулся на пару отзывов на Facebook и Reddit, несколько постов в блогах и несколько историй на Linkedin. Но я бы определенно рекомендовал поговорить с кем-то лично, кто прошел там курс. Конечно, сами учебные заведения предлагают вопросы и ответы, имеют обзоры и информацию на своих сайтах, но лучше получить менее предвзятую информацию, поговорив с реальными учениками.
В любом случае, проверив учебные программы разных школ и учебных заведений, я обнаружил, что набор ваших навыков будет довольно узким в любой из этих школ — даже при 14-месячном курсе, как в DCI. В частности, в DCI вы будете изучать так называемый стек MERN (MongoDB, Express, React, Node). Вы действительно изучаете его с нуля, что очень хорошо — и это действительно хорошая отправная точка. Оттуда вы сможете (более или менее) легко изучать другие фронтенд- и бэкенд-фреймворки и развивать свои предыдущие знания. Кроме того, вы увидите, что многие компании ищут разработчиков React. Так что с этими навыками определенно есть над чем работать. (Даже несмотря на то, что изучение React становится все более популярным. Так что конкуренция на рынке труда точно есть).
Преподавание и удаленное обучение
Огромная часть вашего опыта в DCI будет зависеть от преподавателей, у которых вы будете проходить модули. Обычно в вашем классе один классный руководитель и один ассистент преподавателя. Педагогические возможности преподавателя довольно сильно различаются. Наш преподаватель по JavaScript и React был очень, очень хорошим и компетентным преподавателем и дал нам всем хорошее понимание программирования, и это одна из причин, почему я бы рекомендовал такой курс вместо самообучения. С другой стороны, у нас был преподаватель, который совсем не справлялся с занятиями по CSS, и которого в итоге пришлось заменить другим преподавателем по этому модулю (который был лучше, но и не самым квалифицированным для этой работы). Это что-то вроде «попади или не попади», но даже с не очень хорошим или опытным учителем, как класс, вы все равно сможете извлечь из этого максимум пользы. При этом DCI всегда открыт для обратной связи, и, похоже, они серьезно относятся к жалобам. В начале курса вы выбираете представителя класса, который будет вашим представителем и передавать отзывы сотрудникам DCI. Кроме того, когда я сам писал электронные письма сотрудникам, они всегда казались заинтересованными в моем мнении и пытались предложить решения.
Наши учителя следили за тем, чтобы все могли следовать за ними, и никто не оставался позади. Иногда мне хотелось, чтобы занятия делились на две группы — для тех, кто учится быстрее, и для тех, кому требуется больше времени, потому что занятия могли быть довольно утомительными при таком количестве проблем. Я не очень обрадовался, когда выяснилось, что наш класс состоит из 22 учеников, хотя при поступлении мне сказали, что их будет около 15. Я думаю, что такие курсы, как в DCI, сейчас действительно на подъеме, и, возможно, не хватало персонала или преподавателей, чтобы классы были меньше.
Обычно DCI предлагает курсы в кампусе, но из-за COVID они приостановили их и в настоящее время предлагают только дистанционные (онлайн) курсы. У них есть кампусы/офисы в Берлине, Лейпциге и других городах, и, судя по всему, вы можете заехать туда и даже воспользоваться рабочими местами. Но я этим так и не воспользовался, потому что кампус в Лейпциге открылся совсем недавно.
Онлайн занятия проходят в программе Zoom, которая работала на удивление хорошо в течение всего года. Вы обязаны входить в систему во время занятий, иначе преподаватель может сообщить об этом, и вам придется заполнить форму о своем отсутствии. Я думаю, что вы должны посещать не менее 50% занятий, иначе вы провалитесь.
Основной канал связи — Slack. Он тоже хорошо работает, хотя немного подвело то, что они не предлагают тарифный план Pro или Business, что означает, что вы не можете получить доступ к сообщениям старше 90 дней и должны сохранять важные сообщения или материалы курса, чтобы они не потерялись.
Мне очень понравился тот факт, что весь курс проходит онлайн. Кривые обучения студентов в вашем классе будут довольно сильно различаться, и я полагаю, что в условиях классной комнаты трудно сделать занятия увлекательными для всех. Так что в зависимости от вас самих вы можете быть либо «недозагруженным», либо «перегруженным». Когда мне становилось скучно или хотелось поучиться в одиночестве, я просто выключала камеру, что показалось мне очень удобной возможностью.
Учебный план
Насколько я помню, структура курса в DCI была примерно такой:
- Основы цифровой грамотности (1 месяц)
- HTML, CSS (2 месяца)
- Основы программирования / JavaScript (2,5 месяца)
- React (3 месяца)
- Бэкенд (2 месяца)
- Финальный проект (1,5 месяца)
- Фаза приложения (2 месяца)
Структура дня была примерно следующей
- «livecoding» до полудня, где преподаватель(и) показывал вам содержание, кодируя материал в прямом эфире с общим экраном, а вы кодили вместе с ним и задавали вопросы;
- Затем был перерыв на обед, после чего вы получали задание, которое нужно было закончить после обеда (или в ближайшие пару дней — зависит от ситуации).
Как я уже говорил, в DCI вы действительно учитесь всему с нуля. Поэтому первые пару недель вы будете просто изучать базовые вещи в Ubuntu, Github, Visual Studio Code и т.д. После этого у вас будет 2 месяца или около того только HTML и CSS. Это очень низкоуровневый курс и, честно говоря, немного скучный, если вы уже немного занимались этими вещами. Но на самом деле, потратить столько времени на это полезно, и я чувствую, что это дало мне твердую хватку в структурировании HTML-документов и стилизации с помощью CSS. К сожалению, такие вещи, как CSS Frameworks (Bootstrap, Tailwind) и препроцессоры CSS (SASS), будут затронуты очень кратко. У меня было время изучить эти вещи более подробно, когда позже я стал выполнять задания по веб-разработке. После этого вы будете изучать основы программирования, что означает изучение JavaScript путем выполнения классических упражнений, таких как манипулирование массивами, использование условий и других управляющих структур и т.д., позже — манипулирование DOM и функциональное программирование в JS. Здесь есть много возможностей для решения проблем и задавания вопросов преподавателям. Мне задания показались довольно легкими, но другим ученикам было сложнее. Однако в итоге все получили базовое представление о JS.
В модуле React вы узнаете, как создавать одностраничные приложения с помощью React. Не всегда было легко сразу понять содержание, если вы раньше не работали с фреймворками, и я думаю, что большинству из нас пришлось после уроков читать документацию по React. Задания показались мне не очень интересными, что несколько снизило мою мотивацию. Я бы посоветовал заранее собрать несколько идей, какого рода SPA вы хотели бы сделать для себя, иначе в итоге вы сделаете тот же старый ресторан или страницу портфолио, или приложение для ведения дел, или приложение-калькулятор, как в каждом учебнике по React.
(Примечание: На нашем курсе мы лишь вскользь рассмотрели компоненты классов в React и сосредоточились почти исключительно на функциональных компонентах. Я бы с удовольствием узнал больше о классах, методах жизненного цикла и тому подобных вещах, но, думаю, это не совсем обязательно).
Бэкенд-часть курса была очень запутанной. Казалось, что нашим преподавателям было очень трудно вывести всех на один уровень и научить всему, чему они хотели научить всего за два месяца. Я уверен, что есть преподаватели, которые более структурировано знакомят вас с NodeJS, ExpressJs, MongoDB, mongoose, REST API и т.д., но вы должны быть готовы к тому, что вам придется приложить некоторые дополнительные усилия, чтобы разобраться в этих вещах. Я прошел видеокурс «Full Stack for Front-End Engineers», который мне очень помог. Как я уже упоминал, преподаватели были очень открыты для обратной связи и старались адаптироваться к пожеланиям и предложениям студентов. Но все же, я думаю, почти всем нужно было дополнительно почитать о бэкенде.
На заключительном этапе проекта вы разрабатываете приложение с полным стеком примерно с тремя другими людьми с курса. На это у вас есть 7 недель, и преподаватели всегда готовы помочь вам во время занятий, чтобы вы могли задать вопросы или получить обратную связь. Финальная презентация будет проходить перед преподавателями, сотрудниками DCI и некоторыми людьми из других классов.
Этап подачи заявления и помощь в карьере
После этого начинается этап подачи документов (который в учебном плане несколько некорректно называется «этапом стажировки»). На самом деле, вы должны пройти двухмесячную стажировку в какой-либо компании, что, в общем-то, не имеет смысла, поскольку стажировки продолжительностью менее трех месяцев в Германии по закону не оплачиваются — к тому же, составляя резюме и сопроводительное письмо, вы можете претендовать на какую-либо постоянную должность, срочную работу или более длительную оплачиваемую стажировку. На этом этапе вы можете проконсультироваться с сотрудниками Службы карьеры DCI, которые проверят ваше резюме и сопроводительное письмо, дадут вам обратную связь и вообще помогут вам с подачей документов. Кроме того, они сказали, что передадут ваше резюме компаниям-партнерам, и те в итоге свяжутся с вами по поводу вакансий. Однако я не знаю, насколько хорошо это работает. Служба карьеры также предлагает онлайн-лекции и Q&As с историями успеха, советами по карьере и тому подобными вещами. Я не посещал многие из них. Вы можете узнать о некоторых компаниях, а также о фрилансе и жизни веб-разработчика. DCI также предлагает онлайн-совещания по трудоустройству и speedhiring, которые я тоже не посетил, потому что они были отложены, а я к тому времени нашел работу.
Активы и бонусы
Немного о дополнительных активах, которые предлагает DCI:
Перед началом курса (в идеале) вам высылают техническое оборудование для курса, которое включает в себя ноутбук, монитор, мышь, клавиатуру, гарнитуру и т.д. (монитор и ноутбук вам придется вернуть после окончания курса). Мне очень понравилось то, что мне не пришлось использовать свой собственный ноутбук для учебы, и я счел это полезным.
Еще одна полезная вещь — это то, что вы получите доступ к пакету Github Students Developers Pack (плюс аккаунт Github PRO). Это дает вам некоторые скидки на определенные продукты и доступ к инструментам, учебникам и т.д.
Поиск работы
Как уже упоминалось, DCI предлагает свою помощь на этапе подачи заявки, что я очень оценил. Для меня все прошло очень гладко. Я отправил заявки в две компании, получил два приглашения и сразу же устроился на работу (на определенный срок, с частичной занятостью) — мне даже не пришлось предъявлять сертификат DCI. Однако другим людям из моего класса было труднее найти работу. Думаю, это зависит от того, что вы ищете и где вы живете. Хорошее сопроводительное письмо — ключевой момент. Хорошее понимание IT-технологий и основных алгоритмов помогло мне на собеседованиях.
Что касается зарплатных ожиданий: это действительно зависит от федерального округа, в котором вы находитесь. Но примерно я бы сказал, что если вы будете работать 40 часов в веб-деве, то 35.000 евро брутто в первый год — это реальная зарплата; при 20-часовой работе вы можете получить только 15.000 евро брутто в год. Но проработав 1-2 года в web dev, вы сможете претендовать на большее. Впрочем, я не эксперт по зарплатам и могу ошибаться.
Кроме того, у вас будет много друзей, которые будут просить вас сделать для них сайт :).
Язык и мягкие навыки
Курсы DCI также включают еженедельные языковые курсы (немецкий или английский), которые являются обязательными. Я не знаю, как будет, когда обучение в кампусе возобновится, но для дистанционного обучения DCI сотрудничает с платформой онлайн-обучения под названием Lingoda, которая, на мой взгляд, не является хорошим местом для изучения английского языка. (Они также предлагают курсы немецкого языка, о которых я не могу говорить). Я думаю, что мы были первой когортой DCI, которая участвовала в этих курсах Lingoda, и что у DCI еще не было большого представления о том, насколько хорошо работает Lingoda. Были жалобы на платформу, и DCI попытался немного скорректировать языковые классы, но это не слишком помогло. Занятия по английскому языку казались плохо продуманными, и, несмотря на то, что рекламировалось перед началом курса (т.е. языковые занятия, ориентированные на нашу профессиональную область), содержание уроков и занятий было действительно общим. Я не исключаю, что курсы Lingoda могут подойти другим (например, начинающим или изучающим средний уровень), но мне совсем не подошел курс английского языка C1, потому что я ожидала, что меня подготовят к экзаменационному тесту по деловому английскому C1, а этого не произошло.
Резюме
Когда я начинал заниматься веб-разработкой, эти курсы и буткемпы казались мне какими-то загадочными местами, в которые ты входишь, а выйдя, получаешь все те навыки и знания, которые, казалось бы, так трудно приобрести. Но я понял, что на этих курсах вы не узнаете ничего такого, чему не смогли бы научиться сами — например, изучив учебники, бесплатные онлайн-курсы и все такое, или связавшись с друзьями-кодерами. Если у вас достаточно мотивации. Но, конечно, очень полезно иметь учебный план, структурированное обучение и слушать о веб-разработке от людей, которые работают в этой области и могут дать вам действительно полезную обратную связь. Так что все зависит от ваших преподавателей и вашей собственной мотивации. Я думаю, что DCI вооружит вас определенными навыками и знаниями, которые легко помогут вам найти работу. Но я думаю, что есть еще некоторые улучшения в структуре занятий и во всем остальном.
Как бы то ни было, я бы сказал, что годичный курс, подобный курсу DCI, является хорошей и «быстрой» альтернативой стажировке или изучению ИТ, чтобы получить работу в области веб-разработки. Более того, порог в DCI очень низкий, и кажется, что они нацелены на то, чтобы вы получили работу. Однако если вы уже знакомы с JavaScript и/или React и NodeJS, возможно, вам стоит поискать что-то другое. Кроме того, курс довольно дорогой, если вам придется платить за него самостоятельно (что-то между 10 000 и 20 000 €, я думаю), и есть определенно лучшие способы потратить свои деньги. Конечно, легче найти работу, когда у вас есть сертификат, но если вы целеустремленный и хорошо учитесь самостоятельно, и, возможно, среди ваших друзей есть программисты или веб-разработчики, вы также можете пойти по пути самообразования. Но если центр занятости оплачивает все это, вы, вероятно, не пожалеете о своем выборе.