За последние три года я проходил 3 больших многомесячных курса и ещё пачку курсов покороче. Потратил на них больше 300 000 ₽ и не достиг поставленных целей. Кажется, я набил достаточно шишек, чтобы сделать выводы и в последнем из курсов сделать всё как надо. Ну, и заодно написать об этом заметку.
Приведу список из курсов (отмечу, что все они — замечательные; итоговые результаты соответствуют приложенным мной усилиям):
2017— годовой офлайн курс «Дизайн цифрового продукта» в Школе Дизайна ВШЭ. Цель — стать дизайнером. Итог — последнюю четверть полностью прогулял, диплом не сделал. Ноль собеседований, ноль офферов.
2018 — отучился 7 месяцев в Школе Руководителей Бюро Горбунова. Цель — стать менеджером в команде дизайнеров. Итог — не смог найти команду для учебного проекта (потому что даже не пытался), в результате отчислился из-за неуспеваемости. Одно собеседование, ноль офферов.
2019 — курс «Аналитик данных» в Яндекс.Практикуме. Цель — найти работу аналитиком и «войти в АйТи». Промежуточный итог за три недели до конца курса — два личных проекта по теме, дополнительные материалы прочитаны и категоризированы. Сделал три подхода к резюме, отправил полтора десятка откликов на вакансии, получил 5 ответов, прошёл два собеседования. Пока тоже ноль офферов.
Собрал методы и принципы, до которых я додумался за время обучения. Разбил по условным категориям: на все времена, до обучения, во время учёбы и после (поиск работы).
Метанавыки — те, что полезны в любом случае
Планирование времени и режим — когда именно заниматься обучением. «Слоты времени» — фиксированные промежутки времени для занятия; например, два часа утром перед работой. У меня сложился распорядок дня и есть т.н. «сильные часы» — время, когда мой котелок варит и я могу делать сложные вещи.
Понимание цели обучения. Если «просто так для себя» — то это в лучшем случае хобби, а в худшем — одна из форм прокрастинации. А если же стоит задача сменить профессию, то лучше её обозначить заранее.
Я часто в порыве записывался на 5 курсов на Coursera и проходил потом ноль из них. Следующий раз заходил на сайт через полгода, но только чтобы ещё раз записаться уже на 10 курсов.
Олег Юрьев — мой коллега по курсу Практикума — добавляет: «Ещё нужно иметь в себе силы отказаться от прохождения курса, который вам стал неинтересен, я потратил десятки часов на это дело, только из-за своего перфекционизма, якобы раз начал, то и закончить нужно». Не дайте невозвратным потерямутопить вас.
Начинать в понедельник. Звучит банально, но откладывать задачу по недельному спринту на пятницу — плохая идея. Даже начиная в понедельник, у меня часто получалось закончить работу только перед самым дедлайн. (См. бюрошный принцип «не впритык»)
Поиск в Гугл. Вопросы типа «как поменять цвет на графике» или «какой аргумент отвечает в функции за то-то». Здесь, кстати, пригодится знание английского — там больше ответов и выше шанс быстро найти нужный.
Слепая печать. Большую часть времени придется что-то писать: если делать это хотя бы на 10% быстрее, можно успеть посмотреть лишнюю серию 😉 Тренажёр для работы 10-15 минут в день.
Быстрые клавиши для работы с текстом. Часто приходится бегать курсором по простыне текста или кода. Быстрые клавиши помогают выбирать целые слова или строчки, перемещаться между словами. Статья на Лайфхакере.
Делать конспекты. Принцип пирамиды усвоения материала: прочитал → записал → обсудил → научил другого. Без конспектов получалось так: в начале материала «вот так вызывается функция, вот это параметры, вот синтаксис», потом ещё куча информации. Когда дело доходило до практики я открывал редактор кода… и шёл перечитывать теорию.
Предподготовка (за полгода-год до начала)
Английский язык — обязательный навык. Все передовые знания на английском. Непередовые — тоже на английском, хоть часть и переведена. И вся документация к программам тоже на английском. Не говоря уже о классных лекциях и подкастах.
Курс Learning how to Learn Барбары Окли на Coursera или её же книга «Думай как математик» (англ. Mind for Numbers). Или хотя бы конспект. Помогает понять базовые вещи о том, как работает мозг при обучении. Плюс дают хорошие практические советы на основе этих данных.
Финансовая подушка. 6 месячных зарплат (больше — лучше) на счету сильно пригодятся, когда придется нарабатывать первый опыт в новой профессии на младших позициях за 50 тысяч в месяц. (Серия заметок о подушке в Тинькофф—Журнале или выпуск про финансовую грамотность подкаста Podlodka)
Рекомендации для курса «Аналитик данных» Яндекс.Практикума
Это мой последний курс, и пока самый удачный с точки зрение моей активности, поэтому впечатления от него самые свежие.
До начала обучения
Предварительно пройти базовые курсы — сильно поможет в ходе учёбы думать о задании, а не об инструменте.
Если цель обучения — сменить работу, то поможет чит-код — снизить нагрузку на основной работе, чтобы больше времени уделять обучению. Не только на само обучение, но и изучение дополнительных материалов, просмотр лекций, делание личных проектов по профилю, хождение по митапам и собеседованиям.
«… я бы перешёл на текущей работе на парт–тайм, чтобы освободить время для обучения и пет–проекта» — из совета Ивана Замесина о том, как получить новую профессию
Во время обучения
Читать доки для библиотек. Каждый раз, когда я садился за написание кода, мне нужно было что-то смотреть в документации. Поэтому основные страницы оказались в закладках: Pandas (dataframes, series), datetime.
Не копировать код из теории. По максимуму писать все функции руками. Это поможет их запомнить и понять синтаксис языка. Потом пригодится.
Все доки не прочитаешь — нельзя выучить язык по словарю. Чтобы узнать полезные приёмы программирования помогает смотреть чужой код. А лучше пробовать повторить его и смотреть промежуточные результаты в каждой строке — так можно понять, что там вообще происходит и лучше запоминать.
Читать дополнительную литературу, которую дают в конце каждого урока. Это помогает глубже понять суть и наверняка пригодится в будущих темах (и на собеседованиях!). Сильно помогает повторить руками код из статей (если есть), даже если кажется, что там всё просто.
Делать свои проекты. Помогает закрепить теоретические знания и разобраться с материалом в реальных условиях — когда нет чёткого задания и примера из теории, который можно списать; приходится самому продумывать каждый шаг. Ещё показывает серьёзность намерений и работает на будущее портфолио.
Когда я прошёл свой первый курс по Python, я придумал себе проект и спарсил блог Ильи Бирмана: это помогло мне привыкнуть к синтаксису языка и понять, как работают библиотека BeautifulSoup и что можно делать с датафреймами в pandas. А когда в Практикуме мы потом прошли урок по визуализации, смог сделать отчёт с визуализацией.
Подписаться на профильные блоги, компании, каналы в Телеграме и ютуб, подкасты. Можно смотреть не только последние материалы, но и прошерстить архив в поисках знакомых слов или просто по самым популярным.
Выбрать режим и придерживаться его.
Делать перерывы в течение дня — здесь помогает техника Помодоро. Не тупить над одной задачей три дня — лучше сходить прогуляться, подышать воздухом и решение придёт само. Если нет — спросить коллег или наставника.
Делать перерывы в течение недели. Мозгу необходимо время, что усвоить полученный материал, в этом помогают перезагрузки — полностью отключиться на день-два от запойного поглощения новой информации. Например, на выходных. Обучение — это марафон, важно рассчитать силы, чтобы не сдохнуть на половине дистанции.
Спать! Здоровой и достаточный сон — основа хорошо работающего мозга.
Джим Коллинз проанализировал успехи выдающихся людей и вывел простой принцип — «двадцатимильный марш»:
Двадцатимильный марш подразумевает достижение определенных ориентиров за определенный срок — с величайшим упорством и постоянством, на протяжении долгого периода. Соблюдение этих принципов дается нелегко по двум причинам: трудно выполнять добровольные обязательства в тяжелые времена, еще труднее сдерживать свой темп, когда все обстоятельства благоприятствуют ускоренному продвижению.
Взаимодействия с преподавателями, кураторами и сокурсниками
Когда возник вопрос по пройденному материалу, то теребить кураторов, наставников, деканат. Преподаватель — это такой же инструмент передачи знаний, как и страницы с теорией или тренажёр с кодом.
Обычно к консультации трудно вспомнить, что было трудно по по ходу прохождения курса, поэтому рекомендую записывать вопросы сразу как только они появились. Ну и в целом полезно ходить на консультации.
Быстрее отправлять результат на проверку — так можно успеть провести больше итераций для его улучшения.
«Стараться в каждом проекте реализовывать какие-либо свои микроцели. Например, отказаться от циклов, после использовать list comprehension, затем methods chaining, чтобы чувствовать свой прогресс. Если есть желание сделать больше чем требуется в проекте, надо делать, но в отдельном ноутбуке, можно вставить ссылкой в основную работу или выслать наставнику, узнать что он думает по этому поводу.» — добавляет сокурсник Олег Юрьев
Работать от простого к сложному. Чтобы написать сложную функцию или многоступенчатую обработку данных, лучше начать с чего-то простого и постепенно усложнять.
Главное — это люди вокруг: сокурсники, кураторы, наставники, сотрудники Практикума. Если вы все вместе оказались в одном месте, большой шанс, что у вас похожий путь и общие ценности. Они также ценят образование и стремятся развиваться. А через полгода они будут вашими коллегами в новой специальности. Всем трудно общаться (особенно по началу), но преодоление этой преграды того стоит.
Поиск работы
Если цель обучения — сменить работу, то сто́ит начать пораньше. Процесс в среднем занимает несколько месяцев. Чтобы найти работу к концу курса, надо начинать уже в середине. А если у вас уже есть какой-то релевантный опыт, то можно начинать уже в начале.
Смотреть открытые вакансии, чтобы понимать, что нужно рынку: каких людей ищут, какие требования к навыкам, какой стэк инструментов. И сколько им готовы платить!
Откликаться, делать тестовые и проходить собеседования — после каждого следующего будет чуток меняется мировоззрение. Ещё это помогает понять, какого материала не хватает в обучении. Например, во многих вакансиях спрашивают SQL и на тестовых заданиях проверяют его знание, а в Практикуме его давали не так много, в отличие от Python.
Писать людям за советом (или просто спасибо). Лекторам на конференция, авторам блогов и подкастов, просто крутым ребятам, за которыми следишь.
Посещать тематические офлайн мероприятия, чтобы задать свои вопросы вживую. Помните, что лекции с мероприятий можно посмотреть и на Youtube, а на сами мероприятия приходят за общением и нетворкингом.
Буду рад любой обратной связи и особенно советам, как начинающему аналитику развиваться в новой профессии.
Спасибо Олегу Юрьеву и Дарье Гришко за поддержку, советы и их жизненный опыт.