Привет, потенциальные и нынешние курсанты Хекслета!
- Человек-junior
- Человек-студент
- Человек-первая попытка
- Человек-хлипкий фундамент
- Человек-Хекслет
- Человек-благодарствующий
Хочу поделиться своей историей. «Историей успеха» будет звучать слишком громко, поэтому просто историей. Как говорится, у самураев нету цели, есть только путь. У меня же были разочарования, трудности, выгорания и опускания рук. На данный момент мне 28, и в IT я уже чувствую себя старым, поэтому на правах седого старика расскажу вам о своём пути.
Человек-junior
Так вот, с детства я любил игры, играл во всё что мог и с кем мог. Если игры подходящей не было, мы с друзьями что-то придумывали. Например, составляли таблицу оценок в школе, и кто к концу недели получал лучший средний балл, выигрывал сумму денег, на которую мы скинулись. И занимательно, и полезно для учебы :-)
В какой-то момент я понял, что хочу делать компьютерные игры. Вот это оригинально, детский сверхразум! Прилежным учеником я никогда не был, о чём сейчас жалею. Скорее просто хорошист, но этого мне хватило, чтобы после 9 класса поступить в достаточно престижный лицей в Киеве, в группу «программистов». И я бы хотел сказать, что получил там хоть какие-то знания по CS, которые мне нужны сейчас. Но к сожалению нет, всё, чему я научился — это устанавливать Turbo Pascal и фармить крипов на миде. И на это я убил 3000 часов своей жизни...
Человек-студент
После лицея, на время института, мои пути с программированием разошлись. Произошло это по нескольким причинам. Во время поступления я попал в больницу, и мне было по барабану, куда поступать. А второе — у меня особо и желания уже не было. Что мне не нравится в нашем образовании, в глобальном плане, это то, что в 16 или 17 лет ты должен решить, с чем тебе связать свою жизнь на ближайшие 5-7 лет минимум. Поэтому я всегда завидовал, в хорошем плане, людям, которые знали, чем они хотят заниматься в этой жизни.
Возможно, некоторых подталкивают родители, на некоторых давят друзья, у меня же получилось, что из-за, как я упоминал ранее, болезни, бабушка и дедушка носили мои документы на поступление. И каким-то чудом занесли не только на кафедры программирования в КПИ, а ещё и на инженерную экологию... Туда я и попал.
В плане знаний я получил чуть меньше нуля, зато в плане социализации и полноты жизни, я, думаю, вкусил по полной всей студенческой thug life. Но один навык я всё-таки приобрел. Научился быстро курить мануалы и аккумулировать знания прямо перед сессией. Подход к обучению плохой, но тренировка для мозга хорошая :-)
И вот мне 23, я выпускаюсь из магистратуры в предвкушении и растерянности от того, что меня ждет. Первым делом я пошёл искать работу по специальности инженер-эколог и, на удивление, сразу нашёл. На собеседовании мне почему-то задавали вопросы по общей логике и теории вероятности. Так как в студенчестве я увлекался покером, и, можно сказать, он меня кормил, базовую теорию вероятности я знал :-)
Человек-первая попытка
Работу я вспоминаю с ужасом — для меня это был ад. Не хочу погружаться в детали, но большую часть времени мне нужно было кому-то звонить и что-то навязывать, я это терпеть не могу. В итоге меня хватило на два месяца.
И в это же время я посмотрел фильм «Социальная сеть» и начал смотреть сериал «Кремниевая долина». Это и стало переломным моментом, после которого я убедился, что действительно хочу заниматься программированием и творить что-то из ничего. Это же магия!
Читайте также Фильмотека для программистов: 50 фильмов о программировании, технологиях и искусственном интеллекте
Теперь я стоял на другом, но более интересном, распутье — а что выбрать? Столько курсов, столько языков, какие-то фреймворки, какие-то энды. Ужас. Но мой друг в то время тоже проходил через это, и уже пару месяцев работал за еду манки-кодером и верстальщиком. Поэтому я тоже решил вписаться. Начал самостоятельно осиливать HTML, и после какой-то криво сверстанной локально странички осмелился ходить на собеседования на подобные вакансии. Оказалось, что моих знаний не хватает даже для pre-trainee.
Надо было менять подход, я понял, что нужны более базовые знания. Так я попал на курсы. Не буду их рекламировать, но это локальные киевские курсы. Там я уже в принципе с горем пополам научился верстать. Но с JavaScript как-то совсем не сложилось — какие-то console.log, this, а потом тебе сразу пихают jQuery, $. По программированию я знаний практически не получил. Что-то интуитивно клацал, но фундамента не было — всё как в дженге у меня стояло хлипко, и в какой-то момент должно было развалится.
Но даже с таким бэкграундом я нашел первую работу за 100$ в месяц. Неудивительно, что я её нашел. Приходилось много верстать под Drupal, а что такое Drupal и CMS, я совсем не понимал. Поначалу было интересно, меня окружали хорошие люди, но такие же новички и профаны, как я. Было весело, но через год верстания я понял, что по программированию я так и не продвинулся сильно. Да, я уже писал на jQuery какие-то простыни, на которые сейчас было бы стыдно смотреть, но особо всё равно не понимал, что делаю.
Человек-хлипкий фундамент
И тут я снова понял, что опять нужно что-то менять, и уволился. На тот момент зарплата уже была 400 долларов. Но даже их я с трудом заслуживал. Перед поиском новой работы я решил, что всё-таки нужно получить базовые знания. И снова начал двигаться самостоятельно, и опять ошибся. Начал учить React, который был на хайпе, ничего не понимал, но учил :-)
Деньги заканчивались, и я решил походить по собеседованиям в поисках знаний — чтобы мне подсказали, куда копать. Каким-то чудом, скорее, из-за неопытности и плохих знаний интервьюера, меня взяли на работу после первого же собеседования, на зарплату 800 долларов. Человека, который толком не знал, что такое замыкание.
И в этой компании я проработал ещё 8 месяцев. Задачи у меня были в основном связаны с вёрсткой и чуть с React, который я делал просто по альтернативе с уже написанным кодом. Я как тупая нейросетка не понимал, что делаю, но искал похожие паттерны.
В итоге, когда пришёл адекватный техлид, меня уволили. Не то чтобы мне не давали шанса, но тот период жизни был у меня омрачен смертью дедушки и полным выгоранием и непониманием, что я вообще делаю. Поэтому я и не старался проявить себя и не имел желания.
Человек-Хекслет
И вот мы почти добрались до момента, когда в моей жизни появился Хекслет!
После увольнения я был в сильной депрессии. Не из-за того, что уволили, а из-за того, что я 2-3 года в сфере, а всё ещё хр***й манки-кодер, который разве что пристойно верстать умеет.
На какое-то время я выпал из социальной жизни, перестал вообще заниматься программированием и просто тлел. Денежная подушка была, поэтому такой процесс продолжался около четырёх месяцев. Всё, что я делал, это ел, спал и играл в компьютерные игры, и то не всегда с охотой. Исключение — Hollow Knight, в неё я просто влюбился, хоть какой-то светлый лучик, иронично, потому что игра в очень мрачных тонах.
Как-то, не могу сказать как, но я расшатал себя. Возможно, игры, возможно, adventure time помогли и дали понять, что нужно попробовать ещё раз. Кроме себя я никого не винил, но в этот раз решил, что мне нужна помощь.
И, слава макаронному монстру, я набрёл на Хекслет! На видео с Тотой в ютубе. Я смотрел на Тоту и понимал, что я и есть Тота. А каждому Тоте нужна своя коробка в виде такой платформы и свой закадровый голос Хекслета :-)
Я особо не колебался и сразу начал обучение. И хоть я уже что-то знал, но даже первые курсы мне настолько широко открывали глаза на то, что я делал и как всё устроено, что у меня они перестали закрываться :-)
Но в то же время это был кайф, дофамин вырабатывался дай боже, и всё практически в игровой форме, с тестами и задачками! Вот бы ещё ачивки завезли, как вам предложение, Хекслет?
Я посвятил себя учёбе полностью и чувствовал, как это даёт плоды в прямом смысле. Параллельно я ещё читал «Выразительный JavaScript», и после первых курсов он шёл намного легче. Также я штудировал MDN — хороший ресурс, справочник для дополнительной информации. Но тут наступил первый проект. Денег у меня уже особо не было, поэтому я не мог себе позволить провалить его и не сдать с первого раза. К счастью, с боем и кучей заваленных код-ревью, которые очень полезны, я справился, кажется за день или два до конца срока. И в тот момент я почувствовал, что это маленький шаг для меня как программиста, но огромный скачок уверенности в себе!
Затем всё шло своим чередом. Я распланировал своё обучение, дисциплинировал себя, но, так как деньги заканчивались, форсировал обучение. Отказался от следующих проектов, но прилежно проходил все курсы и дополнительные задания, что важно, сам и без подсказок. И большой совет начинающим — участвуйте в дискуссиях, спрашивайте, то что не понимаете, только с правильным подходом. В правильно заданном вопросе уже есть половина ответа.
Из тяжелых курсов могу выделить «Деревья» и, наверное, в самом начале React. Когда началась модульность и сторонние библиотеки, сложно увязать и построить майнд-карту у себя в голове. Но и через это прошёл, плюс самостоятельно покурил мануалы и освоил хуки и контексты, новые фишки, которые в тот момент отсутствовали на Хекслете. Как сейчас — не знаю, может, для студентов в них и нету смысла.
Пройдя все курсы и выполнив один проект, я решил в своём темпе написать пару пет-проектов и готовиться уже к собеседованиям. Читал статьи на Хекслете о собеседованиях, выписывал вопросы и уже более осознанно подходил к выбору компании, в которую пойду. И снова на удивление я прошёл собеседование с первого раза. Попал в хорошую компанию на зарплату в 1600 долларов на позицию джун-реакт разработчик + верстка. Но самое смешное, что после того, как я пришел, компания была в стадии перевода проекта с React на Angular.
И в начале меня это напугало, но потом я втянулся, потому что уже имел Базу и Фундамент, именно с больших букв, благодаря обучению на Хекслете. Да я всё ещё не знаю CS настолько, как хотел бы, но JS базу тут дают, на которую можно наращивать любые знания во фронтенде, а я проходил именно эту профессию.
У Angular много своих преимуществ перед React, всё есть в коробке, Angular написан на TypeScript, есть ngrx и rxjs. Ангулар очень крут, и мне очень нравится, но он подходит только для средне-больших и больших проектов, на маленькие отлично подходит React или ванильный JS. Это не означает, что React нельзя затащить в большие проекты, Хекслет, кажется, на нём написан. Но и Angular для этого тоже очень хорош, но это уже вкусовщина. Теперь жду курсы Хекслета по TypeScript, Angular, ngrx, rxjs. И ачивки не забудьте! :-)
Спустя год работы я вернулся на Хекслет — поностальгировать, пройти новые курсы. Я хочу освоить Node.js и Python, чтобы плавно переходить на фулстек-программиста, хоть я уже и старик, целых 28 лет :-)
Человек-благодарствующий
В общем, спасибо за такую платформу всем менторам, программистам, контентщикам и всем тем, кто участвует и участвовал в создании платформы. Вы появились в моей жизни, когда мне это действительно было нужно. И спасибо тем, кто вдруг дочитал этот поток сознания. Извините за ошибки, странные обороты и орфографию. Не забывайте также о важности здоровья, как ментального, так и физического. Найдите свой баланс, не выгорайте и не бегите за какими-то астральными вещами. Любите и получайте удовольствие от простых вещей и маленьких успехов, подходите ко всему осознано и рационально, как тут и учат. А я, пожалуй, продолжу свой тернистый путь.