Как стать программистом? 10 советов начинающему
Гадаете, трудно ли быть программистом? Узнайте, что вас ожидает. Рассказываем, к чему готовиться, и какие навыки развивать.
1. Готовьтесь сдаться.
Спросите у знакомых разработчиков, как часто у них наступало отчаяние. Это невозможно сосчитать. Приходится сталкиваться с нерешаемыми проблемами. Вам становится настолько сложно, что тянет бросить это занятие. Временами рабочая среда вынуждает пойти на такой шаг. Увлечения зависят от настойчивости. Это испытание на прочность. Вы остаётесь или уходите? Помните, не поздно вернуться. Что произошло, когда человек два года не писал ни одной строчки кода? Он пришёл как новенький и накинулся на проект. Это когда знаете, что любите работу. Программирование становится родным домом, трамплином для приключений.
2. Вы почувствуете стыд за спагетти-код, который написали в прошлом году.
Это происходит постоянно. Кого не критиковали за код в самом начале? Несмотря на подробное документирование. Написали так, что читать трудно. Спагетти-код найдёте у каждого. Как бы ни старались, так или иначе часть будет похожа на вермишель, когда спешите выполнить задачу. Программисты исправляют бесконечно. Нет ничего постыдного в этом. Когда поймёте, что ваших рук творение, отвлекитесь и внесите правки.
3. Не будьте только программистом, иначе возникнет зависимость от разработки.
Временами вы превращаетесь в отшельника. Но чтобы стать счастливым программистом, ищите жизнь за пределами монитора. Часто успех карьеры зависит от людей, которых встречаете. Сеть общения важна. Будьте самобытной личностью помимо разработки, и тогда обезопасите себя от зависимости. Когда нет вынужденности, вы получаете удовольствие от процесса и выполняете таски на высоте.
4. Создавайте прочную основу.
Ворваться в программирование проще с уверенными знаниями в других областях. Сделайте упор на теорию вероятностей, графы, анализ и логику в математике. Не забудьте информатику и физику. Понадобится английский для штудирования документации, поиска ответов на Stack Overflow. Вникайте в архитектуру программ, принципы написания кода, базовые алгоритмы. Не пренебрегайте стандартами выбранного языка и главными концепциями. Углубляйтесь в идеологию тестирования. Чем прочнее ваша математическая основа, тем проще дастся остальное. В результате здорово расширите стек технологий.
5. Вы проведёте день напролёт в поисках одной маленькой ошибки.
Как правило, в программных проектах отдельные части взаимосвязаны друг с другом. Будет не получатся двигаться дальше, пока не исправите одну крошечную ошибку. Как программист, вы будете беспокоиться о проекте, если не найдёте этот баг. А значит, сидеть безвылазно за компьютером в поисках проблемы. А ночью вам начнёт сниться код. Только устранение ошибки положит конец этим страданиям.
6. Станьте конкурентоспособным.
Рынок труда велик. Желающих занять престижные места масса. Чтобы выдержать соперничество, не ограничивайтесь развитием одних технических навыков. Неотъемлемое качество для программиста – способность действовать в команде. Думаете, что разработка предполагает уединение и обособление? Нет. Без навыков демонстрации собственных идей и положительного общения вам не продвинуться по карьерной лестнице. Приучайте себя следить за тенденциями программирования. Будьте усидчивым и упорным. Развивайте настойчивость. Тренируйте логику и формируйте критическое мышление. И невозможные задачи покажутся выполнимыми. Осваивайте алгоритмизированный подход, и добьётесь успеха.
7. Вы купите наушники.
В карьере наступит момент, когда поймёте, что шум чертовски мешает сосредоточиться на коде. Спасительные наушники устранят внешние звуки, и тогда вы будете работать в людных помещениях сконцентрировано. А также обнаружите, что музыка благоприятствует кодингу. В начале карьеры разработчик узнаёт, что ритм ему помогает непринуждённо программировать. И профессионалы тянутся к музыке, чтобы добиться продуктивности.
8. Вы будете тратить кучу времени на поиск ответов, которые никто не знает.
Если программируете на популярном языке, вы найдёте решение большинства возникающих проблем в интернете. Однако встречаются и исключения. Иногда никто не сталкивался с трудностями, которые вы наблюдаете. Тогда открывайте книги по разработке и расспрашивайте людей на форумах. Часто это указывает правильное направление.
9. Вы научитесь программированию быстрее, если будете писать приложение с товарищем.
Вначале возникнет соблазн закрыть дверь в мир и прочесть десять профессиональных книг, чтобы заложить прочный теоретический фундамент. Стойте! Вы научитесь быстрее, когда найдёте товарища. Совмещайте исследование книг по программированию с работой над проектом с приятелем. Когда вы создаёте приложение вместе с другим человеком, проявляются все ваши недостатки. Напарник будет критиковать. Вы научитесь писать работоспособный код, потому что на него смотрят. Захотите найти лучший способ решения задачи, так как товарищ тоже учится. Когда работаете программистом, кто-то постоянно просматривает ваш код. Никогда не разрабатываете в одиночку. Пришло время привыкнуть к этому.
10. Подготовьте обязательный минимум для резюме.
Вы избрали путь программиста, а значит эволюционировать в области знаний придётся без остановки. Сперва приобретите навыки написания программ на паре-тройке популярных языков. Начинающим подойдёт Python. Разберитесь с алгоритмами и шаблонами проектирования. Без баз данных также трудно представить современную разработку. Изучите ключевые фреймворки. Вы сами заметили, что в программировании нужен английский язык. Остальное зависит от выбранного вектора работы. У каждой области своя специфика. Для примера смотрите требования к сисадмину.
А дальше?
Что делать с намерением стать программистом? Добавьте к нему настойчивости и готовности беспрестанно развиваться, и у вас получится. Не бойтесь. Помните, не ошибается тот, кто ничего не делает. Поэтому берите этот чек-лист базовых навыков и приступайте к покорению мира разработки.