Как стать программистом? 7 шагов от нуля до первой работы

Интерес к профессии программиста не просто так велик. Помимо мифического заработка и довольно привлекательных условий работы, это, прежде всего, очень веселое занятие, особенно для людей, которые любят логическое мышление и создание творческих вещей. Конечно, это работа не для всех, и у нее есть определенный порог входа, который нельзя перепрыгнуть без старательно изученного материала — обучение для многих само по себе будет действительно утомительным процессом. Предполагая, что вы хотите дать себе шанс, посмотрите, как вы можете подойти к теме, выполнив 7 (на первый взгляд) простых шагов.

Как стать программистом?                      7 шагов от нуля до первой работы

1. Узнайте, есть ли у вас правильные предрасположенности

Как я уже сказала, программирование — это область не для всех. То, что можно сидеть на попе восемь часов кряду, конечно, большое преимущество, но это лишь капля в море. Я не говорю, что программисты — супергерои, и им нужно родиться со всеми предрасположенностями. Конечно, при правильной мотивации всему можно научиться, но без определенных навыков и склонностей это будет намного сложнее, да и сама работа может быть недостаточно увлекательной.

Хороший программист должен характеризоваться, например:

- логическим мышлением,

- проведением эффективных поисков интересующих его вопросов в Интернете,

- готовностью постоянно учиться и развиваться,

- скромностью и открытостью к новым тенденциям,

- терпением для решения различных проблем,

- умением работать в группе,

- быть коммуникативным,

- хорошо владеть английским языком.

Конечно, отсутствие какой-либо из этих функций вас не должно смущать в самом начале. Вы все еще можете попробовать и стать действительно великим спецом в этой профессии. Однако это не меняет того факта, что вам может быть труднее найти в ней себя и, прежде всего, полюбить ее. Вопреки видимому, умственная работа также может быть утомительной и может привести к выгоранию. Недаром многие программисты со сложившейся хорошо оплачиваемой работой через какое-то время хотят сменить сферу деятельности.

2. Выберите конкретную технологию

Я считаю, что язык программирования ни в коем случае не является обязательным выбором. Хороший программист, который уже сделал несколько проектов, имеет правильное мышление и может эффективно использовать документацию, скорее всего, изучит основы любого другого языка за довольно короткое время. Правда в том, чтобы быть хорошим программистом, вы не должны постоянно прыгать «с цветка на цветок». Так что предлагаю вам сделать свой выбор осознанно и не отказываться от него спустя две недели.

При выборе для себя языка программирования вы можете руководствоваться различными критериями. Во-первых, если вас действительно волнует штатная работа в вашем регионе, вы можете самостоятельно понаблюдать, насколько популярна та или иная технология. В противном случае вы можете осознать, что не найдете работу в этом районе и без переезда/удаленной работы/изменения языка программирования вам будет просто сложно.

Прежде всего необходимо руководствоваться тем, для чего вы хотели бы использовать какой-либо язык. Если вы мечтаете о создании мобильных приложений, изучение языков, в первую очередь предназначенных для компьютерного программирования, может оказаться «средним» ходом. Стоит начать с того, что вас интересует и что бы вы хотели сделать своим проектом, пусть даже плохим и не приносящим никакой прибыли. Вполне универсальным выбором могут быть такие языки, как Python или JavaScript.

Также стоит попробовать что-то популярное — не только из-за множества предложений работы, но и из-за, возможно, более быстрого развития технологий и большего количества проблем… Проблем, с которыми сталкиваются многие и которые можно решить благодаря выбранной специализации. Работа программиста заключается не в копировании, но иногда Stack Overflow спасает многих из нас от часов головной боли.

3. Отточите свои навыки

Если вам удалось выбрать конкретную технологию, можно приступать к обучению. Изучение документации конкретного языка может быть довольно проблематичным, особенно для новичка. В этом случае стоит сделать ставку на какой-то актуальный видеокурс. Книги тоже будут неплохим выбором, но вы должны учитывать, что информация в них довольно быстро стареет.

Я также не рекомендую преувеличивать теорию — чтение даже нескольких специализированных, толстых книг вряд ли из кого-то сделает хорошего программиста. Стоит проработать материал, а затем продолжить его практиковать, реализуя аналогичные рабочие проекты. Старайтесь избегать бездумного переписывания кода. Лучше сделать в день меньше, но больше понять и много поработать, чем обманывать себя.

4. Реализовать конкретные проекты, подготовить портфолио

Чтобы лучше разобраться с данным пунктом, я опросила коллег, и теперь хочу поделиться с вами историей одного из них:

“С самого детства я мечтал стать программистом. Эти мечты тянулись годами, но я не добился никакого прогресса. Я пробовал учиться по чертовски скучным книжкам, но мне это казалось ужасно сложным и непонятным (мне тогда было лет 13-14, и я изучал PHP).

Причина? Я слишком сосредоточился на теории и не пытался сделать что-то самостоятельно.

Настоящие азы языка я изучил только тогда, когда начал самостоятельно переделывать движок какой-то браузерной игры. Сначала я изменил статические HTML-элементы, а потом все смелее пытался добавлять новые модули на основе других, которые уже были реализованы создателем всего ПО. Таким образом, я узнал, как на практике работают переменные или условные инструкции… О чем я, конечно, много читал, но без переноса теории на практику на компьютере в то время я не мог многого в них понять.

Я уже знал основы, я более или менее знал, что такое база данных, и, наконец, мне пришлось сделать ужасно амбициозный проект (для моих почти нулевых практических навыков). Мне нужно было написать что-то вроде интернет-магазина: с чем-то вроде корзины, панели администратора, отправки запросов по электронной почте и тому подобного. Я до сих пор не считаю себя великим программистом, потому что где-то в середине своего приключения я довольно сильно отскочил в сторону SEO. Хотя знаю, что сейчас точно написал бы такой проект гораздо лучше за две-три недели — тогда на это у меня ушло не менее десятка месяцев.

В дизайне, конечно, были баги, но черт побери… Я написал его сам и почерпнул из него много фундаментальных вещей! Если меня что-то блокировало, я не мог что-то сделать — я тратил на это много времени и искал решения в Интернете. Если это нельзя было сделать одним способом, я делал это другим способом. Таким образом я научился не только многим вещам, связанным с теорией, но и соответствующим способам мышления. Такое обучение через практику было не только утомительным процессом, к которому мне приходилось немного принуждать себя, но, прежде всего, это было очень веселое занятие и я мог узнавать что-то новое, видеть эффекты.”

Имея за плечами несколько проектов, вам будет намного проще представить свои навыки и побудить других к сотрудничеству с вами. В индустрии программирования для многих работодателей Trifolio (рабочая документация по проекту) является определяющим фактором, который гораздо важнее, чем CV (резюме). По этой причине перед возможным поиском работы все же стоит выполнить какой-либо проект, чтобы потом можно было еще и блеснуть.

5. Подготовьтесь к собеседованию

Если вы хотите работать полный рабочий день (а это не единственный способ стать программистом), вы можете подготовиться к этому до начала собеседования. Прежде всего, было бы неплохо погуглить что-то вроде: «Язык программирования. Вопросы о наборе персонала». Во многих компаниях некоторые вопросы повторяются и стоит знать, например, специфическую терминологию (особенно если вы претендуете на должность выше т. н. Junior).

Готовиться стоит не только в плане знаний, но и морально. Прежде всего — не бойтесь. Программирование — это очень обширная область, и действительно не существует людей, которые знают буквально все. Постоянно откладывать собеседование, потому что «мы недостаточно хороши» — это просто прокрастинация. Лучше проверить это на практике и потерпеть неудачу, чем если бы вы совсем не пытались. В любом случае, если вы не устроились ни на какую работу, и предполагая, что не сделали глупостей во время собеседования, вряд ли вы попадете в какой-то «черный список». Вы всегда можете дать себе дополнительное время, для того, чтобы приобрести еще немного знаний и попробовать снова через некоторое время.

6. Подать заявку на должность

Разработайте резюме, подготовьте портфолио и найдите предложения, которые вас заинтересуют. Отправьте заявку и ждите ответа. Если, несмотря на вашу усердную работу и отправку большого количества резюме, вы до сих пор не получили ни одного положительного сообщения и приглашения на собеседование, возможно, стоит что-то улучшить. Однако это не повод срываться — развивайтесь и продолжайте пробовать!

Для этого наши HR-специалисты разработали классный гайд по написанию резюме для IT-специалиста. Его можно найти по ссылке: https://t. me/firecode_jaromorka

7. Добились ли вы успеха? Браво, но… не останавливайтесь на достигнутом

Если вам удалось получить работу своей мечты — поздравляем. Однако вы должны помнить, что работа программиста требует постоянного развития и трудно достичь состояния, при котором вам никогда не придется учиться чему-то новому. Если вы хотите продвижения по службе, а главное – не хотите потерять работу через несколько лет – вам следует развиваться. Стоит изучать новые тенденции, следить за новыми технологиями и пытаться улучшить свой код.

Если вы новичок, вас также должны заинтересовать такие вещи, как системы контроля версий и модульное тестирование. Работа программиста это не только хороший заработок и сидение за компьютером. Это в первую очередь много размышлений и необходимость постоянно развивать свои навыки. Среди прочего, по этим причинам это работа не для всех, но… Если вам она нравится — это, безусловно, будет идеальным выбором для вас — этого я вам и желаю.

Удачи и процветания!

11
Начать дискуссию