Руководство по получению работы разработчика при нулевом знании программирования
Три года назад я начал писать код как хобби и поменял карьеру, чтобы стать инженером-программистом. Я начал с нуля. Я имею в виду, console.log(“Hello world!")
было для меня огромным достижением.
Я записался на Bootcamp для разработчиков, но позже решил проработать материал в своем собственном темпе. После самообучения JavaScript, разработки портфолио проектов и прохождения собеседований по программированию я получил свою первую работу по разработке программного обеспечения в стартапе.
В целом весь путь занял у меня чуть больше 4 месяцев. Я не предлагаю здесь никаких гарантий, и это, конечно, было непросто, но если вы думаете о том, чтобы сделать скачок, чтобы стать разработчиком, вот несколько советов, которые помогут вам начать работу.
1. Начните с основ - HTML, CSS и JavaScript.
Даже если вы не планируете заниматься фронтенд-разработкой, неплохо было бы начать с основ - HTML и CSS - чтобы не упустить возможности. Вы быстро поймете, подходит ли вам программирование, не тратя слишком много времени на это новое дело.
JavaScript - это распространенный язык программирования, который вам тоже стоит попробовать. Совет: все популярные фреймворки, такие как AngularJS, React и Vue, основаны на JavaScript, и они востребованы на рынке труда.
Вы можете начать с этих бесплатных руководств по Codecademy:
2. Узнайте, как устранять неполадки.
Неизбежно вы столкнетесь с проблемами, которые не знаете, как исправить, но не волнуйтесь, потому что это сообщение об ошибке, с которым вы столкнулись, вероятно, уже кто-то видел.
И как однажды сказал мне более опытный разработчик, он программировал не лучше меня, просто он видел больше ошибок.
SO DO NOT PANIC.
- Научитесь использовать отладчик вашего редактора кода. Я рекомендую Visual Studio Code.
- Найдите свое сообщение об ошибке в Переполнение стека, и вы можете увидеть некоторые ответы и решения для него, уже опубликованные. Помните, что одни предложения лучше других и могут сработать, а могут и не сработать.
- Прочтите документацию. Это говорит само за себя, но слишком часто упускается из виду. Если вы работаете с определенным фреймворком или языком, загляните в официальную документацию, чтобы получить рекомендации.
3. Идите и делайте вещи
Теперь, когда вы вооружены некоторыми знаниями в области программирования, приступайте к созданию своего первого проекта. Проект здесь определяется в общих чертах. Это может быть что-то простое, например программа FizzBuzz. Идея состоит в том, чтобы вы перешли от чтения руководств и документации к написанию кода.
Как и во всем остальном, лучший способ научиться - это действительно делать это.
Не хватает идей? Попробуйте это:
- 10 проектов, которые можно реализовать с помощью JavaScript (Skillcrush.com)
- 13 идей проектов JavaScript (juniordevelopercentral.com)
4. Изучите основы Git и GitHub.
Git - это распределенная система контроля версий, которая отслеживает изменения в исходном коде во время разработки программного обеспечения. Многие инженерные команды используют его или что-то подобное при разработке.
GitHub - это облачный сервис, который управляет вашими репозиториями Git.
Одно дело работать над репозиторием кода самостоятельно, а другое - сотрудничать с несколькими людьми, вносящими изменения в один и тот же файл. Перед первым днем работы инженером рекомендуется получить базовые знания о рабочем процессе Git и GitHub.
Посмотрите этот вводный курс по Git.
5. Создайте собственный веб-сайт
Это личное предпочтение, но мне нравится иметь что-то наглядное, чтобы показать потенциальным работодателям. Наличие собственного веб-сайта и постоянное его обновление говорит о том, что вы гордитесь своей работой. Если вы еще и разбираетесь в дизайне, это отличный способ выразить это. Найти собственный домен и настроить его на каком-то хостинге не займет много времени. Разместите там свою биографию и контактную информацию, свое резюме и несколько ссылок на другие ваши работы.
6. Заведите блог по программированию или научите этому кого-нибудь.
Когда я только начинал программировать, я писал в блоге сообщения о каждом новом методе JavaScript, который я изучил, и объяснил, как его использовать.
Конечным продуктом явилась пара десятков плохо написанных статей, но это заставило меня изучить тему на более глубоком уровне и укрепить свое понимание.
Если вы не заинтересованы в ведении блога, подумайте о других возможностях научить кого-то тому, что вы узнали. Вы можете добровольно провести вводный курс программирования или обучить кого-нибудь, кто только начинает учиться.
7. Изучите проекты оборудования.
Аппаратные проекты могут разнообразить ваше портфолио и, кроме того, это просто весело! Создайте что-нибудь с помощью наборов Raspberry Pi или Arduino. Дайте волю своему воображению. Вы будете удивлены тем, что можно создать, имея лишь немного знаний в области программирования.
Ознакомьтесь с этими идеями, чтобы начать:
- Пусть ваше комнатное растение твитнет, когда ему нужна вода
- 17 наборов Raspberry Pi для ваших проектов на выходные
- 15 великих проектов Arduino для начинающих
8. Посещайте ярмарки вакансий.
Правда о поиске работы заключается в том, что нельзя все время прятаться за экраном компьютера. В конце концов вам придется поговорить с настоящим живым человеком.
Посещение ярмарок вакансий может показаться старомодным, но свою первую работу в области программирования я получил во многом благодаря посещению одной из них. Я поговорил с штатным рекрутером в крупной компании, который связал меня с несколькими людьми - один из них помог быстро отследить мою заявку на мою текущую работу.
Если вы хотите устроиться на работу, будьте готовы удариться о тротуар и оказаться впереди кого-то.
9. Подготовка к собеседованию по кодированию.
Собеседование при приеме на работу программиста отличается от собеседования при приеме на работу других типов. Иногда бывает светская беседа, иногда нет. Иногда вам дают ноутбук, иногда - доску.
Один из моих любимых способов подготовки к собеседованию - Pramp, платформа, на которой вы можете практиковать собеседование в режиме реального времени со сверстниками. И это бесплатно.
Некоторые другие ресурсы для технических интервью:
- Полное руководство по подготовке к собеседованию по программированию (freecodecamp.org)
- LeetCode (подготовка к техническому собеседованию)
- Я также нашел эту книгу полезной: Интервью по программированию: 189 вопросов и решений по программированию
10. Присоединяйтесь к техническому сообществу.
Существует множество способов связи с вашим местным техническим сообществом, будь то онлайн или лично. Посещайте группы технических встреч и присоединяйтесь к каналам Slack. Мне нравилось посещать демонстрационные дни code Bootcamp рядом со мной, чтобы поговорить со студентами об их поиске работы - плюс, было интересно увидеть, над чем работают все остальные.
Еще несколько идей:
- Женщины, которые кодируют
- NodeSchool
- Технические мероприятия в местных коворкинг-площадках и компаниях
- Используйте свою сеть LinkedIn и присоединяйтесь к техническим группам