Доброго времени суток. Я Артем, и работаю NodeJS-разработчиком. Это статья-рассказ, в которой могут быть советы, но ближе к Javascript.
Еще полгода назад я работал в технической поддержке, принимал звонки и помогал клиентам настраивать роутеры. Работал по шесть дней в неделю, и не знал, как попасть в разработчики. Подавал много заявок, но никуда не принимали. Конечно, я понимал, что для работы нужны знания, но у меня не хватало времени. Сам я не экстраверт, и, работая по 12 часов, не мог втиснуть учебу. Так продолжалось 6 месяцев.
На тот момент у меня были знания в JS, но не глубокие. Знал HTML/CSS, мог делать простенькие сайты, а верстать и вовсе ненавидел. Были маленькие проекты на NodeJS, но ничего более. И вот, решил я начать учить Vue. Не знал что выбрать, React или Vue, но считаю, что для новичка Vue больше подходит. Но если вы хотите быстро найти работу, и программирование кажется вам не сложным, лучше будет React, из-за количества вакансий.
Но перед этим лучше закрепить знания. Очень закрепить. Очень сильно закрепить. Обязательно прочитайте эту статью на Wikipedia. В ней говорится о том, что чем меньше мы знаем, тем лучше мы себя видим. С обучением может начаться и паника в такие моменты, когда вы осознаете, насколько глубоко то, что вы изучаете.
Рекомендую к прочтению серию книг «Вы не знаете JS». После того, как вы закрепите знания, самое время начать учить Фреймворк.
На Хекслете есть курсы по React и целая программа посвящённая Frontend. Начал я учить Vue, и, вдруг, заметил странное объявление в своей компании:
«Требуется специалист для разработок внутренних инструментов». И я откликнулся. Через месяц меня взяли. Это была некой удачей, но вот пару выводов, которые я сделал после этого.
Учитесь каждый день. Каждый день изучайте что-то новое, и даже 30 минут в день, станут 90 часов за полгода. А, к примеру, чтобы выучить Vue (это было услышано в клубе VueJS-разработчиков), нужно ~40 часов.
Учиться, и практиковаться. Попробуйте сделать сайт объявлений. Попробуйте сделать конструктор графиков с помощью фреймворка (React/Vue) и библиотечкой ChartJS. А что насчет Node и телеграм-бота? Придумайте любую идею, изучите все что нужно для реализации, и делайте.
И еще один совет. Не стоит копаться сразу в запросах, пока не изучите HTTP. Возьмите книгу «Компьютерные сети. Нисходящий подход». Прокачайте в себе знания про сети, попробуйте реализовать клиент серверное приложение. Но тут нужно держать баланс. Если много читать и ничего не делать — будет отравление информацией. А если много делать и не читать, то будет много сил потрачено зря. Читаем, пробуем.
Если вы не находите задачи для разработки, то посмотрите фриланс биржи. Там куча разных заказов, попробуйте выполнить похожие. Посмотрите чем занимаются знакомые, и попробуйте автоматизировать задачи, которые они выполняют. Это, наверное, самое сложное. Начать делать проект и выделить на него время. За моей спиной пара проектов, суммарно ~50.000 строк кода, и, кажется, этого всегда не хватало. Не хватало времени и идей.
Но вот, мы, кажется, понимаем, что нам нужно просто взять и делать. Просто придумать проект и делать его. Выделить время. А что с временем? От многих слышал что его нет. А на самом деле, время всегда есть (30 минут день = 180 часов в год), и идеи для первых проектов разбросаны. Нам не хватает мыслетоплива
. Оно уходит на многое. Например, на залипание в телефоне, на пустые разговоры, на пустые мысли, и тут я бы хотел порекомендовать одно лекарство. Джедайские техники (Максим Дорофеев). Работа программиста в 90% случаях (цифра из головы) направлена на оптимизацию. Но перед тем как оптимизировать бизнес-задачи, оптимизируйте себя.
Сейчас меня стали приглашать на разные вакансии, предлагать офферы, а всего-то прошло полгода. И да, это единственная мысль, которую я хотел донести. Оптимизируйте сначала себя, а все остальное — вопрос времени (которого всегда много).