Как стать разработчиком? Пошаговый план
Спрос на IT-специалистов и, в частности, разработчиков ПО в России по-прежнему велик. Как стать программистом с нуля? Какое выбрать направление, какой язык и где учиться?
![](https://ichip.ru/images/cache/2023/9/25/fit_300_200_false_crop_1280_719_0_169_q90_790112_6a8dd9516c75ab53dabad33bb.png)
![Как стать разработчиком? Пошаговый план Как стать разработчиком? Пошаговый план](https://ichip.ru/images/cache/2023/9/25/fit_960_530_false_crop_1280_719_0_169_q90_790112_6a8dd9516c75ab53dabad33bb.png)
![](https://ichip.ru/favicon-180x180.png)
В 2020 году Ассоциация АПКИТ совместно с АНО «Цифровая экономика» сравнили количество программистов в России с этим показателем в других странах и пришли к выводу, что в IT-сфере есть очевидный дефицит кадров — общая численность специалистов составила 1,8 млн. человек или 2,4% от трудоспособного населения страны. При этом аналогичный показатель в среднем по Европе составляет 3,9%: в Великобритании на момент исследования он достигал 5%, в Финляндии — 7%, в Германии, Франции и Чехии — 4%, в Польше 3%.
По мнению исследователей, общая годовая потребность в высококвалифицированных кадрах к 2024 году достигнет значения 300 тысяч человек в год. Судя по всему, уже сейчас реальность превзошла этот прогноз. Согласно данным на апрель 2023 года спрос на IT-кадры увеличился на 63%, а срок поиска кандидатов на цифровые вакансии вырос сильнее, чем в среднем по рынку: в два раза против 1,5 раза в других отраслях. На начало 2023 года на отечественном рынке было около 59 тысяч открытых IT-вакансий — это, не считая около полумиллиона профессионалов, уже задействованных в сфере. И спрос будет только расти, утверждают эксперты.
Так что профессия программиста гарантирует востребованность на рынке труда и карьерный рост в ближайшие, как минимум, десять лет. Порог входа в IT-сферу сейчас как никогда низкий. Влиться в ряды её представителей можно даже после 30 лет и не обладая выдающимися математическими способностями. Рассказываем, как это сделать.
1 Расстаться со стереотипами
Среди непрограммистов бытует заблуждение, что обучение разработкам необходимо исключительно для тех, кто планирует связать свою профессию с IT. Это не всегда так — навыки программирования могут быть дополнением к основной профессии. Работодатели уже сейчас отдают предпочтение соискателям, которые в состоянии автоматизировать часть процессов и умеют писать код для решения стандартных задач. В будущем всю офисную рутину возьмут на себя компьютерные алгоритмы, а людям, знающим азы программирования, останется регулировать и совершенствовать этот процесс.
Другое заблуждение – IT-сфера закрыта для людей без математических способностей. Это не всегда так. Разумеется, склонность к точным наукам – это большой плюс, но IT-индустрия включает в себя более 200 различных профессий, и далеко не все из них связаны с написанием кода.
Для гуманитариев открыты такие сферы, как разработка игр и моделирование для 3D-печати, создание пользовательского интерфейса и визуальных эффектов для фильмов и рекламы.
2 Выбрать направление
Программирование — большая и сложная отрасль, специализации которой тесно связаны друг с другом и делятся на несколько ключевых направлений:
- разработка мобильных приложений: iOS-разработка, android-разработка, кроссплатформенная разработка (для двух операционных систем одновременно), стартовая зарплата — 90000 рублей;
-
веб-разработка:
- frontend (программирование видимой части ресурса — меню, анимации, кнопки, формы и другой интерактив на сайтах), стартовая зарплата — 50000 рублей,
- backend (программированние внутренней части сайта — взаимодействие с базами данных, обработка информации и вычисления), стартовая зарплата — 60000 рублей,
- fullstack (работа и с внутренней, и с внешней частью сервиса), стартовая зарплата — 80000 рублей;
- разработка игр (написание кода, чтобы всё, созданное сценаристами, геймдизайнерами и дизайнерами соединилось в целостный продукт), стартовая зарплата — 60000 рублей;
- системное программирование (исследование новых архитектур и структур данных, а также QA-тестирование — проверка работоспособности написанного ПО вручную и с помощью специальных программ), стартовая зарплата — 40000 рублей.
Рейтинг вакансий в IT-сфере меняется довольно быстро. Поэтому лучше всего ориентироваться не на актуальный спрос на рынке труда, а на то, что нравится и то, что соответствует индивидуальным способностям.
Например, тем, кто переходит в программирование из гуманитарных сфер, лучше всего присмотреться к веб-программированию — эта сфера предполагает работу с пользовательским опытом, который есть у всех.
После того, как сфера приложения усилий определена, переходим к следующему этапу — самому важному.
3 Выбор языка программирования.
Лучший язык программирования — это самый универсальный и такой, специалисты по которому наиболее востребованы на рынке труда. Эти данные ежегодно публикуются в специализированных рейтингах. Например, на рейтинге TIOBE, который оценивает популярность языков программирования. На индекс влияет количество курсов, статей и специалистов по каждому из языков во всем мире. На декабрь 2022 года ТОП-10 выглядит так.
Первый в этом рейтинге — Python — считается самым универсальным и простым языком программирования. Разработчики могут его легко читать и без труда создавать с его помощью программы, потому что его базовый синтаксис похож на синтаксис английского. Кроме того, Python легко сочетается с другими языками программирования и имеет обширную библиотеку стандартных решений, поэтому программисты могут не писать код «с нуля».
Второе и третье место в рейтинге заняли С++ и его «предок» С, который уже считается устаревшим. На этом языке чаще всего пишут сложное высокопроизводительное ПО. Например, драйверы и программы для промышленных систем. Иногда используют для разработки компьютерных игр.
Досконально изучив один из языков программирования, можно пробовать свои силы в разных IT-специальностях — писать приложения и компьютерные программы, быть бэкэндом.
4 Как учиться?
Когда выбор окончательно сделан в пользу одной из специальностей и определённого языка программирования, можно начинать учиться. Сегодня есть возможность выбрать из огромного количества ресурсов — посещать готовые программы обучения онлайн или следовать алгоритму, разработанному самостоятельно. У каждого способа есть свои достоинства и недостатки.
Почитать книги, посмотреть видео
Преимущество в том, что за такой тип обучения — наиболее бюджетный. Платить придётся только на книги и, возможно, платные каналы. Недостаток — нет поддержки и мотивации со стороны преподавателей. Без силы воли легко снизить темп и забросить учёбу.
Вот несколько книг, которые помогут освоить азы самых популярных языков программирования:
«Python. Экспресс-курс», Наоми Седер. Практическое руководство о том, как освоить Python 3 от основ до структур данных: особенности языка и его объектно-ориентированные способности.
«Python, например», Никола Лейси. Руководство без заумной терминологии и сложных формул для тех, кто хочет освоить язык Python. Автор плавно переносит от основ к решению непростых задач.
«Программирование на C# для начинающих», Алексей Васильев. Книга об основах, структуре, типам данных, циклах, операторах и другой важной информации, которая потребуется, чтобы подружиться с языком С#.
«Выразительный JavaScript», Марейн Хавербеке. Практическое пособие о синтаксисе, асинхронных и стрелочных функциях, итераторе, шаблонных строках, других важных тонкостях JavaScript. От простого к сложному. Финальная тема — программирование браузеров.
Закончить курсы
В сети огромный выбор онлайн-площадок — разные цены, программа, интенсивность, соотношение теории и практики. Длительность обучения — от 8 до 24 месяцев. Некоторые площадки предлагают финальное трудоустройство. Чтобы выбрать и не разочароваться, рекомендуем читать отзывы на независимых платформах.
Если желание научиться программированию пришло уже в школе, то получить азы профессии можно без отрыва от основного обучения и бесплатно. Например, в федеральной социально-образовательной программе «IT Школе Samsung».
Формировать портфолио
Взглянув на портфолио кандидата, работодатель может понять, насколько его способности и опыт отвечают потребностям компании. Начинающих специалистов в IT очень много — портфолио поможет выделиться на фоне других соискателей. Поэтому начинать формировать список достижений нужно как можно раньше. В идеале — уже в ходе обучения. Написали проект — занесли в портфолио: какие задачи решала программа, каковы её преимущества и так далее.
Эйчары рекомендуют вносить в портфолио даже небольшие проекты, ведь никогда не знаешь, что именно может «выстрелить» при приёме на работу. Ещё один лайфхак, но уже для опытных разработчиков — создавать портфолио индивидуально под каждого работодателя — это поможет подсветить опыт, который важен в конкретном случае.
Проходить стажировки
Стажировка даёт возможность начинающим специалистам получить опыт программирования. Минус — финансовые потери. Если стажировка оплачиваемая, то за неё заплатят не более 30000-40000 рублей в месяц. Плюс — возможность задать вопросы опытным профессионалам и поработать на своё портфолио. Кроме того, при удачном раскладе из практиканта можно вырасти в junior-разработчика в той же компании с последующими карьерными перспективами.
Где искать стажировки? На агрегаторах стажировок: например, FutureToday или Changellenge.
5 Какие знания и навыки нужны, чтобы считаться junior-разработчиком?
После того, как начальное образование программиста пройдено и первый опыт в профессии получен, можно считаться junior-специалистом — начинающим разработчиком.
Что понадобится знать, чтобы считаться junior-программистом:
- синтаксис и особенности выбранного языка программирования;
- основные фреймворки и библиотеки, с которыми придется работать;
- работу с системами управления версиями (позволяют возвращаться к более ранним версиям проекта);
- стиль кода, принятый в выбранном языке;
- навык чтения чужого кода;
- чтение технической документации;
- владение английским языком.
Джунам не поручают сложных задач, они, как правило, работают в команде.
6 Поиск работы
Финальный этап на самом деле оказывается включённым во все остальные. Работу можно подыскивать уже во время учёбы и управлять своим образованием в соответствии с актуальным спросом на рынке труда. Как уже говорилось, стажировка может стать связующим звеном между учёбой и первым профессиональным опытом, что тоже не исключает регулярного мониторинга лучших вариантов.
Где искать вакансии?
• На специализированных сайтах вроде HH.
• В Telegram. Есть каналы, которые специализируются на стартовых вакансиях, например, Remote Junior.
• На сайтах компаний. Например, ВК или Сбер регулярно публикуют вакансии для junior-разработчиков.
• Нетворкинг. Не сбрасывайте со счетов возможность найти работу своей мечты на встречах с коллегами. Это может быть как деловая встреча, так и досуговое мероприятие. Например, проводятся встречи IT-специалистов, чтобы поиграть в футбол, настольные игры, «Мозгобойню».
Пара лет на позиции junior-разработчика открывает путь к уровням midle- и senior-специалистов, где уровень зарплаты и ответственность намного выше, а задачи интересней — радужные перспективы в карьере обеспечены.