HTML Diff
0 added 0 removed
Original 2026-01-01
Modified 2026-02-26
1 <p><strong>Меня зовут Михаил, и я с детства интересовался компами и программированием. Расскажу, каким был мой первый MVP, почему я оставил попытки программировать на Kotlin и вернулся к JavaScript, как я изучил фронтенд и бэкенд в Хекслете и устроился на работу в американскую компанию.</strong></p>
1 <p><strong>Меня зовут Михаил, и я с детства интересовался компами и программированием. Расскажу, каким был мой первый MVP, почему я оставил попытки программировать на Kotlin и вернулся к JavaScript, как я изучил фронтенд и бэкенд в Хекслете и устроился на работу в американскую компанию.</strong></p>
2 <blockquote><p>Профиль Михаила в Хекслете со всеми пройденными курсами можно посмотреть<a>здесь</a>, код выполненных проектов -<a>на GitHub</a></p>
2 <blockquote><p>Профиль Михаила в Хекслете со всеми пройденными курсами можно посмотреть<a>здесь</a>, код выполненных проектов -<a>на GitHub</a></p>
3 </blockquote><h2>Содержание</h2>
3 </blockquote><h2>Содержание</h2>
4 <ul><li><a>Сойти с проторенной дорожки - и начать углубляться в IT</a></li>
4 <ul><li><a>Сойти с проторенной дорожки - и начать углубляться в IT</a></li>
5 <li><a>Как я написал мод для игры и изучил JS и Node.js</a></li>
5 <li><a>Как я написал мод для игры и изучил JS и Node.js</a></li>
6 <li><a>Что мне запомнилось из учебы в Хекслете</a></li>
6 <li><a>Что мне запомнилось из учебы в Хекслете</a></li>
7 <li><a>Провал на собеседовании и оффер в американскую компанию</a></li>
7 <li><a>Провал на собеседовании и оффер в американскую компанию</a></li>
8 <li><a>Мечты о фулстеке и важный совет по прохождению собеседований</a></li>
8 <li><a>Мечты о фулстеке и важный совет по прохождению собеседований</a></li>
9 </ul><h2>Сойти с проторенной дорожки - и начать углубляться в IT</h2>
9 </ul><h2>Сойти с проторенной дорожки - и начать углубляться в IT</h2>
10 <p>Компами и программированием я интересовался с детства. В пятом классе пошел на курсы в IT-школу. Изучил там Pascal, Delphi, C# и ООП. Такая алгоритмическая база позволяет мне сейчас легко писать на любом императивном языке.</p>
10 <p>Компами и программированием я интересовался с детства. В пятом классе пошел на курсы в IT-школу. Изучил там Pascal, Delphi, C# и ООП. Такая алгоритмическая база позволяет мне сейчас легко писать на любом императивном языке.</p>
11 <p>В какой-то момент в этой школе сменился препод, и мы начали делать бесполезные вещи. Почти калькулятор. Заниматься с новым преподавателем стало менее комфортно. И я на какое-то время перегорел программированием, так как не понимал, что мне изучать дальше и как это делать.</p>
11 <p>В какой-то момент в этой школе сменился препод, и мы начали делать бесполезные вещи. Почти калькулятор. Заниматься с новым преподавателем стало менее комфортно. И я на какое-то время перегорел программированием, так как не понимал, что мне изучать дальше и как это делать.</p>
12 <blockquote><p>Если бы я сразу нашел такое обучение, как в Хекслете, я бы стал разработчиком намного раньше. Но тогда не находил места, где я бы не просто изучил фичи языка, а еще и понял, как ими пользоваться.</p>
12 <blockquote><p>Если бы я сразу нашел такое обучение, как в Хекслете, я бы стал разработчиком намного раньше. Но тогда не находил места, где я бы не просто изучил фичи языка, а еще и понял, как ими пользоваться.</p>
13 </blockquote><p>После школы я поступил в колледж на смежную с программированием специальность. Думал, что хоть там мне дадут хорошие знания. Но половину из тех вещей, которые мы изучали, я уже и так знал. А другую часть программы нам плохо преподавали.</p>
13 </blockquote><p>После школы я поступил в колледж на смежную с программированием специальность. Думал, что хоть там мне дадут хорошие знания. Но половину из тех вещей, которые мы изучали, я уже и так знал. А другую часть программы нам плохо преподавали.</p>
14 <p>В расстроенных чувствах я бросил учебу. Было обидно, что я ни на йоту не приближался к своей цели и не знал, что с этим делать. Грубо говоря, все это время меня учили не тому, как строить, а тому, что такое молоток.</p>
14 <p>В расстроенных чувствах я бросил учебу. Было обидно, что я ни на йоту не приближался к своей цели и не знал, что с этим делать. Грубо говоря, все это время меня учили не тому, как строить, а тому, что такое молоток.</p>
15 <p>Как и многие, раньше я жил по плану "сначала отучиться в школе, потом обязательно куда-нибудь поступить и получить корочку". Я сам загнал себя в рамки, из-за которых я потратил много времени и не прокачивал реальные навыки программирования.</p>
15 <p>Как и многие, раньше я жил по плану "сначала отучиться в школе, потом обязательно куда-нибудь поступить и получить корочку". Я сам загнал себя в рамки, из-за которых я потратил много времени и не прокачивал реальные навыки программирования.</p>
16 <p>Сойдя с этой проторенной дорожки, я почувствовал, как открылось пространство для маневра. Теперь я мог сам выбирать, что изучать, и не тратить время на получение знаний, которые либо уже устарели, либо просто не нужны разработчикам.</p>
16 <p>Сойдя с этой проторенной дорожки, я почувствовал, как открылось пространство для маневра. Теперь я мог сам выбирать, что изучать, и не тратить время на получение знаний, которые либо уже устарели, либо просто не нужны разработчикам.</p>
17 <h2>Как я написал мод для игры и изучил JS и Node.js</h2>
17 <h2>Как я написал мод для игры и изучил JS и Node.js</h2>
18 <p>В разработку начал входить с JavaScript, самоучкой. Все началось с игры Cultist Simulator, к которой я решил написать мод. И хоть все моды к этой игре были в виде JSON-файлов, и я мог бы просто вручную переписать нужные данные в этом формате, я решил делать мод на JS - чтобы автоматизировать скучную работу руками.</p>
18 <p>В разработку начал входить с JavaScript, самоучкой. Все началось с игры Cultist Simulator, к которой я решил написать мод. И хоть все моды к этой игре были в виде JSON-файлов, и я мог бы просто вручную переписать нужные данные в этом формате, я решил делать мод на JS - чтобы автоматизировать скучную работу руками.</p>
19 <p>Не прочитав ни одного мануала, я сел писать код в CodePen. Я примерно понимал, как могу реализовать алгоритм - надо было только кое-где подтянуть синтаксис и стандартную библиотеку. Я кодил с большим энтузиазмом, мой код разрастался, становился полноценным MVP. С ним уже было неудобно работать в браузере, и я перешел в IDE.</p>
19 <p>Не прочитав ни одного мануала, я сел писать код в CodePen. Я примерно понимал, как могу реализовать алгоритм - надо было только кое-где подтянуть синтаксис и стандартную библиотеку. Я кодил с большим энтузиазмом, мой код разрастался, становился полноценным MVP. С ним уже было неудобно работать в браузере, и я перешел в IDE.</p>
20 <p>Работая в IDE, я познакомился с Node.js и узнал, как работать с файловой системой. Позже знакомые посоветовали курс<a>Git How To</a>, пройдя который я сразу загнал свой проект в репозиторий и залил на GitHub.</p>
20 <p>Работая в IDE, я познакомился с Node.js и узнал, как работать с файловой системой. Позже знакомые посоветовали курс<a>Git How To</a>, пройдя который я сразу загнал свой проект в репозиторий и залил на GitHub.</p>
21 <p>Получив базовое представление о JS, я решил изучить что-то еще. Нашел платформу JetBrains Academy, тогда она еще была в бета-версии, и все треки были бесплатными до конца года. Я выбрал трек по Kotlin и многому на нем научился.</p>
21 <p>Получив базовое представление о JS, я решил изучить что-то еще. Нашел платформу JetBrains Academy, тогда она еще была в бета-версии, и все треки были бесплатными до конца года. Я выбрал трек по Kotlin и многому на нем научился.</p>
22 <blockquote><p>Если бы на Kotlin можно было бы писать не только для мобилок, то я бы на нем и остался - язык очень крутой. Но меня все же привлекал веб, поэтому я вернулся к JS.</p>
22 <blockquote><p>Если бы на Kotlin можно было бы писать не только для мобилок, то я бы на нем и остался - язык очень крутой. Но меня все же привлекал веб, поэтому я вернулся к JS.</p>
23 </blockquote><h2>Что мне запомнилось из учебы в Хекслете</h2>
23 </blockquote><h2>Что мне запомнилось из учебы в Хекслете</h2>
24 <p>Когда я узнал про Хекслет, сразу прошел там все бесплатные курсы. Мне понравилось, что программа строилась на реальных кейсах, лучших практиках, архитектуре и style guides. Впервые в жизни я почувствовал, что становлюсь профессионалом и учусь делать что-то полезное для рынка. И у меня это хорошо получается.</p>
24 <p>Когда я узнал про Хекслет, сразу прошел там все бесплатные курсы. Мне понравилось, что программа строилась на реальных кейсах, лучших практиках, архитектуре и style guides. Впервые в жизни я почувствовал, что становлюсь профессионалом и учусь делать что-то полезное для рынка. И у меня это хорошо получается.</p>
25 <p>Потом я прошел профессию "<a>Node.js-разработчик</a>" и почти все курсы в ней, а еще иногда заглядывал в профессию "<a>Фронтенд-разработчик</a>" и треки в Хекслете. В учебных материалах много говорили о том, как писать код правильно и хорошо, а как не нужно и почему, и это цепляло.</p>
25 <p>Потом я прошел профессию "<a>Node.js-разработчик</a>" и почти все курсы в ней, а еще иногда заглядывал в профессию "<a>Фронтенд-разработчик</a>" и треки в Хекслете. В учебных материалах много говорили о том, как писать код правильно и хорошо, а как не нужно и почему, и это цепляло.</p>
26 <p>Отдельно отмечу текстовый формат обучения, который мне очень зашел. Не люблю смотреть видео, где какой-то чувак рассказывает в течение часа тему, которую можно было за пять минут изучить по тексту.</p>
26 <p>Отдельно отмечу текстовый формат обучения, который мне очень зашел. Не люблю смотреть видео, где какой-то чувак рассказывает в течение часа тему, которую можно было за пять минут изучить по тексту.</p>
27 <p>На каких-то заданиях я надолго застревал. Например, на рекурсии. Когда ее реализуешь, бывает, ошибаешься и подолгу не можешь найти решение. Это происходит, потому что в голове нужно одновременно уложить несколько блоков и как-то их связать. Потом, когда я уже дошел в обучении до деревьев, рекурсия давалась легче.</p>
27 <p>На каких-то заданиях я надолго застревал. Например, на рекурсии. Когда ее реализуешь, бывает, ошибаешься и подолгу не можешь найти решение. Это происходит, потому что в голове нужно одновременно уложить несколько блоков и как-то их связать. Потом, когда я уже дошел в обучении до деревьев, рекурсия давалась легче.</p>
28 <h2>Провал на собеседовании и оффер в американскую компанию</h2>
28 <h2>Провал на собеседовании и оффер в американскую компанию</h2>
29 <p>Заставлять себя учиться мне не приходилось: бывало, я мог безотрывно сидеть за компьютером от рассвета до заката. А вот пушить себя в мир, искать работу было для меня гораздо сложнее. Мне не нравится писать резюме, сопроводительные, проходить собеседования. Уж лучше я еще чему-нибудь поучусь вместо этого.</p>
29 <p>Заставлять себя учиться мне не приходилось: бывало, я мог безотрывно сидеть за компьютером от рассвета до заката. А вот пушить себя в мир, искать работу было для меня гораздо сложнее. Мне не нравится писать резюме, сопроводительные, проходить собеседования. Уж лучше я еще чему-нибудь поучусь вместо этого.</p>
30 <p>Хотя о самом поиске работы я задумывался достаточно рано, уже после выполнения первых проектов. Помню, проходил первые собеседования, нервничал, меня не брали, и я обратно уходил с головой в курсы. Учил всякие DevOps-штуки: Kubernetes, CI-пайплайны на GitHub и GitLab.</p>
30 <p>Хотя о самом поиске работы я задумывался достаточно рано, уже после выполнения первых проектов. Помню, проходил первые собеседования, нервничал, меня не брали, и я обратно уходил с головой в курсы. Учил всякие DevOps-штуки: Kubernetes, CI-пайплайны на GitHub и GitLab.</p>
31 <p>Один раз проходил интервью на английском, в израильскую компанию. Там был лайвкодинг, технические вопросы, задачи с методами call, bind, apply и callback-функциями.</p>
31 <p>Один раз проходил интервью на английском, в израильскую компанию. Там был лайвкодинг, технические вопросы, задачи с методами call, bind, apply и callback-функциями.</p>
32 <p>На собеседовании я выяснил, что у меня есть пробел в одной базовой теме, не зная которую тяжело работать - промисы, асинхронное программирование. Я как раз пропустил эту тему, полагая, что это не такой уж и частый вопрос, который задают на собеседованиях. Это меня подвело, и оффер я в итоге не получил.</p>
32 <p>На собеседовании я выяснил, что у меня есть пробел в одной базовой теме, не зная которую тяжело работать - промисы, асинхронное программирование. Я как раз пропустил эту тему, полагая, что это не такой уж и частый вопрос, который задают на собеседованиях. Это меня подвело, и оффер я в итоге не получил.</p>
33 <blockquote><p>Потом, конечно, вернулся к этой теме, основательно ее изучил, а потом повторил в Хекслете. И к собеседованию в следующей компании я уже более основательно подготовился: закрыл пробелы, причесал резюме. Постарался написать его живо и с огоньком. И мне написал HR-менеджер из DualBoot.</p>
33 <blockquote><p>Потом, конечно, вернулся к этой теме, основательно ее изучил, а потом повторил в Хекслете. И к собеседованию в следующей компании я уже более основательно подготовился: закрыл пробелы, причесал резюме. Постарался написать его живо и с огоньком. И мне написал HR-менеджер из DualBoot.</p>
34 </blockquote><p>DualBoot - это американская компания с офисом в России. Причем, с крутым офисом, не унылым. Плюс работодатель предоставлял для работы Mac, я как раз хотел на нем прогать, вдохновив себя идеей, что вырастет продуктивность. Само интервью туда прошло хорошо. Я скромно озвучил цифру по зарплате чуть выше той, что предложили в другом месте, а мне дали ощутимо больше. И я принял оффер.</p>
34 </blockquote><p>DualBoot - это американская компания с офисом в России. Причем, с крутым офисом, не унылым. Плюс работодатель предоставлял для работы Mac, я как раз хотел на нем прогать, вдохновив себя идеей, что вырастет продуктивность. Само интервью туда прошло хорошо. Я скромно озвучил цифру по зарплате чуть выше той, что предложили в другом месте, а мне дали ощутимо больше. И я принял оффер.</p>
35 <h2>Мечты о фулстеке и важный совет по прохождению собеседований</h2>
35 <h2>Мечты о фулстеке и важный совет по прохождению собеседований</h2>
36 <p>В компании мы делали свежий продукт для заказчика, была разработка полного цикла. Я сразу начал писать на TypeScript, хотя раньше даже не пробовал этого делать. Я изучил много технологий: Docker, Nest.js, TypeORM. В Docker настроил разработку из контейнера для всей команды. Инженерная культура в DualBoot была на высоте, почти не было легаси.</p>
36 <p>В компании мы делали свежий продукт для заказчика, была разработка полного цикла. Я сразу начал писать на TypeScript, хотя раньше даже не пробовал этого делать. Я изучил много технологий: Docker, Nest.js, TypeORM. В Docker настроил разработку из контейнера для всей команды. Инженерная культура в DualBoot была на высоте, почти не было легаси.</p>
37 <p>В 2022 году работать в этой компании из России и получать оплату стало тяжело. Мне пришлось снова выйти на рынок труда. Теперь я ищу работу, где мог бы применять навыки бэкенда на Node.js и всякие DevOps-штуки. Еще рассматриваю фулстек, но при этом не хочу верстать. В идеале хочу работать со своим бэкенд-стеком и React, Next.js, чтобы иногда залетать на фронт.</p>
37 <p>В 2022 году работать в этой компании из России и получать оплату стало тяжело. Мне пришлось снова выйти на рынок труда. Теперь я ищу работу, где мог бы применять навыки бэкенда на Node.js и всякие DevOps-штуки. Еще рассматриваю фулстек, но при этом не хочу верстать. В идеале хочу работать со своим бэкенд-стеком и React, Next.js, чтобы иногда залетать на фронт.</p>
38 <p>Сейчас я чувствую себя уверенно на интервью. Мне делают офферы - есть, из чего выбирать. Скоро будет интервью в одну европейскую компанию - друг порекомендовал меня туда. Нервничаю: нужно будет много всего узнать о специфике работы, пройти интервью на английском. Но я пытаюсь справляться с этими эмоциями.</p>
38 <p>Сейчас я чувствую себя уверенно на интервью. Мне делают офферы - есть, из чего выбирать. Скоро будет интервью в одну европейскую компанию - друг порекомендовал меня туда. Нервничаю: нужно будет много всего узнать о специфике работы, пройти интервью на английском. Но я пытаюсь справляться с этими эмоциями.</p>
39 <blockquote><p>Важно объективно оценивать свои достижения. Вспоминать, сколько всего вы выучили, потренировали и интересно об этом рассказать работодателям. Так, чтобы у них глаза загорелись от вашей презентации.</p>
39 <blockquote><p>Важно объективно оценивать свои достижения. Вспоминать, сколько всего вы выучили, потренировали и интересно об этом рассказать работодателям. Так, чтобы у них глаза загорелись от вашей презентации.</p>
40 </blockquote><p>Не стоит бояться собеседований: мне помогает представлять их как дружескую беседу. Если что-то не получилось - ничего страшного, всегда можно закрыть пробелы в знаниях и попробовать снова.</p>
40 </blockquote><p>Не стоит бояться собеседований: мне помогает представлять их как дружескую беседу. Если что-то не получилось - ничего страшного, всегда можно закрыть пробелы в знаниях и попробовать снова.</p>
41 <p>И, конечно, важно постоянно чему-то учиться, не сидеть на месте. Как только что-то новое появляется в IT-сфере - сразу изучать это. Это здорово повышает общую компетенцию и дает новый опыт. Иначе, если ты фронтендер, будешь ходить по миру со словами: "Кому jQuery по 80 рублей?" :)</p>
41 <p>И, конечно, важно постоянно чему-то учиться, не сидеть на месте. Как только что-то новое появляется в IT-сфере - сразу изучать это. Это здорово повышает общую компетенцию и дает новый опыт. Иначе, если ты фронтендер, будешь ходить по миру со словами: "Кому jQuery по 80 рублей?" :)</p>