Этот текст для тех, кто планирует обучение любой айтишной специальности — веб, бэкенд, дата, аналитика и т. д. Попытаемся ответить на четыре вопроса:
- Что значит «Выучить какую-то технологию»?
- Можно ли «выучить» что-то, если заниматься по вечерам, совмещая с основной работой?
- Сколько на это нужно времени?
- Достаточно ли этого будет, чтобы найти работу?
В конце этого текста будет реклама нового формата «Практикума» под названием Bootcamp — это короткие интенсивные курсы по нужным вам технологиям.
Что значит «выучить программирование»
Есть упрощённое представление: «сейчас я не владею такой-то технологией, но я сделаю что-то там и овладею»:
Это представление неверное, потому что даже в элементарных навыках типа «быстрая печать на клавиатуре» есть не два состояния, а некая градация: сначала ты не умеешь ничего, потом умеешь немного и постепенно умеешь всё больше. Причём по мере изучения ты всё время открываешь для себя новые горизонты, поэтому конца и края изучению нет:
Но это тоже неполное представление. Даже в простом навыке типа «печатать на клавиатуре» есть варианты навыка, например печатать по-русски или по-английски; бегло ставить типографские знаки препинания или программистские скобки; бегать по тексту горячими клавишами и пользоваться макросами; использовать автозамены и автоподстановки. Можно представить, что любой навык — это на самом деле древо навыков:
Мы считаем, что мы овладели навыком, когда его достаточно для нашей задачи. Возьмём на примере фронтенд-разработчика:
- Для простой черновой работы в роли джуна достаточно знать HTML, CSS, основы JavaScript и Git.
- Если ты претендуешь на уровень middle, помимо этого нужно будет глубоко знать JavaScript, новшества HTML5, а также принятый в компании фреймворк (например, React, Angular или Vue).
- А сеньору помимо этого нужно лично знакомиться со спецификациями новых версий браузеров; погружаться в нюансы оптимизации движков; иметь насмотренность; быть хорошим менеджером для своей команды и многое другое. Чем выше уровень, тем длиннее этот список требований.
Нельзя сказать, что вот сейчас ты что-то выучил. Но можно предположить, что ты владеешь чем-то в достаточной степени, чтобы выполнять такую-то задачу.
Можно ли учиться программированию по вечерам и совмещать с работой?
В теории совмещать работу и учёбу можно. На практике, чтобы это получилось, нужно учесть нюансы.
Сколько времени нужно в неделю: чтобы был хоть какой-то прогресс, нужно заниматься не менее 12 часов в неделю. На длинных курсах «Практикума» рекомендуют 15–20 часов в неделю.
Лекции или практика. Бывает пассивная форма обучения — когда смотришь видеоуроки или лекции. Это полезно для расширения кругозора, но навыки так не развиваются.
Чтобы развивать навыки в сфере ИТ, нужно делать три вещи:
- Решать какие-то задачи — учебные или практические.
- Использовать справочники, документацию и живых советчиков — если ты не знаешь, как подступиться к проблеме, кто-то должен тебе помочь.
- Получать обратную связь по своему решению — чтобы алгоритм или живой человек сказал тебе, где у тебя ошибка и как её исправить.
И всё это желательно делать с какой-то целью — например сменить профессию в этом году. Не «когда-то в будущем», а именно сейчас, как можно скорее.
Непрерывное время за один заход. Золотая середина — заниматься по два часа непрерывно, делать перерыв и так один-два раза в день.
Нет смысла заниматься менее полутора часов за один заход: сначала нужно время, чтобы вспомнить прошлое занятие; потом ты начинаешь что-то делать и сталкиваешься с проблемой; эту проблему нужно решить и получить результат. Тогда будет ощущение прогресса. Если ты выделил себе 40 минут на занятие, то ты просто не успеешь «раскурить» возникшую проблему.
Есть другая крайность — когда человек решает, что засядет в выходные. Сначала он планирует позаниматься в субботу; потом суббота переносится на воскресенье, а в воскресенье появляются дела. В итоге человек ожидает, что позанимается 8 часов; по факту — 3 часа; из них 2 продуктивных, 1 — прокрастинация.
Что не работает
А вот эти вещи в отрыве делать бесполезно:
❌ Просто читать документацию и запоминать учебник — ну будешь ты знать типы данных, и что? А применять кто будет? Эти знания не закрепляются без практики.
❌ Пытаться всё решить своим умом. Большая часть проблем в программировании давно решена: есть либо классические алгоритмы, либо готовые библиотеки, либо встроенные возможности языка. То, что ты будешь программировать час, может быть, уже реализовано в твоём языке и потребует от тебя одну строчку кода.
❌ Писать код в стол и никому не показывать. Твой код может работать, но при этом быть избыточным или чрезмерно сложным. Кто-то должен это увидеть и научить тебя правильным алгоритмам.
❌ Изучать «на будущее». Иногда люди решают, что сейчас можно поучиться дата-сайенсу на будущее, потому что это перспективная профессия. Так не работает, потому что требования сегодняшней работы всегда будут вытеснять какое-то туманное будущее.
Сколько нужно времени, чтобы изучить программирование?
Вот примерный разброс по курсам «Практикума». Сравниваем традиционные длинные курсы (до 20 часов в неделю) и новые короткие курсы в формате Bootcamp (40 часов в неделю):
По вечерам (15—20 часов в неделю) | Bootcamp (40 часов в неделю) | |
Android-разработчик | 12 месяцев | — |
Фронтенд | 10 месяцев | 5 месяцев |
iOS-разработчик | 10 месяцев | — |
Python-разработчик | 9 месяцев | — |
Data Science | 8 месяцев | 5 месяцев |
Аналитик | 6 месяцев | 4 месяца |
Тестировщик | 4 месяца | 2 месяца |
Смогу ли я найти работу после курсов по программированию?
Зависит от того, что это за курсы и какую вы хотите работу.
Есть курсы, организованные вокруг потребностей рынка или конкретной ИТ-компании. Обычно после таких курсов людей либо сразу забирают работать, либо приглашают на стажировки или в карьерный центр. Прочитайте нашу статью про стажировку в Яндексе. Ещё есть ссылка на Карьерный центр «Практикума»: practicum.yandex.ru/career-center/.
Есть курсы, которые только обучают. Они могут хорошо обучать, но дальше вы сами. Собираете портфолио и идёте откликаться на вакансии.
Никакие курсы, даже самые лучшие, не найдут за вас работу, не пройдут за вас собеседование и не подпишут трудовой договор. Ситуация на рынке может меняться; вам может хотеться или не хотеться на конкретную позицию в конкретную компанию.
Представьте, что сейчас у человека зарплата 60 тысяч. Он выучился на веб-разработчика, чтобы пойти на зарплату 150. У него на выбор пять вариантов:
- Стартовая позиция в его городе с зарплатой 60 тысяч и возможностью роста.
- Стартовая позиция в другом городе с зарплатой 80 тысяч, но там нужно платить за квартиру и переезжать.
- Дистанционная работа с почасовой оплатой. В зависимости от отработанных часов зарплата может быть от 40 до 200 тысяч.
- Стажировка в крупной ИТ-компании в другом городе со стипендией 20 тысяч с возможностью дальнейшего трудоустройства на стартовую позицию с зарплатой 70 тысяч.
- Остаться на прежней работе.
На решение здесь будут влиять не только деньги, но и желания самого человека, его готовность переехать, его финансовая подушка безопасности, амбиции и самолюбие. Поэтому однозначно сказать «Да, вы найдёте работу», — нельзя.
Но при определённых условиях — найдёте.
Реклама быстрых и медленных курсов
Этот материал написан в поддержку нового формата курсов «Практикума» — называются Bootcamp (как бы тренировочный лагерь, но никуда не нужно ехать).
Буткемпы подходят тем, кто готов отложить все остальные дела и резко поменять специальность. Ключевое слово — резко. За эту резкость придётся заплатить временем и концентрацией.
В чём преимущества:
- Быстро и компактно. Осваиваем новую профессию в два раза быстрее, чем на базовом курсе. Для этого нужно учиться по 40 часов в неделю, учёба должна стать основным фокусом. Учебные группы — по 15–20 человек.
- Персональная помощь. Наставник встречается со студентами вживую 5 раз в неделю на курсах программирования и 2 раза в неделю на анализе данных.
- Каждый понедельник студенты составляют план обучения на неделю вместе с наставником
- Есть индивидуальные встречи с наставником.
- Много обратной связи. В чате есть специальные люди, которые квалифицированно отвечают на вопросы в течение часа в рабочее время. По ночам не отвечают.
- Код-ревьюеры домашки проверяют в течение одного дня. Вы получаете обратную связь от живых людей.
- Практика. 4 учебных проекта в портфолио.
- Много практических заданий и вебинаров. МНОГО.
Ну и классические преимущества «Практикума»: интерактивные тренажёры, удобная теория, карьерный центр, опыт и знания Яндекса.
Сейчас в режиме буткемпа есть четыре курса: веб-разработка, тестирование, аналитика и дата-сайенс.
Есть бесплатный пробный период. Курсы стоят от 10 до 18 тысяч рублей в месяц (если платить частями).
Если у вас нет времени учиться по 40 часов в неделю, можно по-прежнему учиться на классических курсах Практикума: practicum.yandex.ru — они требуют от 15 до 20 часов в неделю. При определенных условиях можно совмещать с работой.