Стоит ли учиться на программиста или профессия уже неактуальна?

 

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

А еще все мы привыкли к некой обособленности программистов, к их независимости (работают для заказчика из любой страны и в любой стране ), к их автономности (что называется selfmade man), что вкупе с практически абсолютной востребованностью на рынке труда делает эту профессию просто мечтой для многих молодых людей. Но так ли всё радужно на самом деле?

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

Цифры выглядят так: медианная зарплата айтишников (все виды деятельности) в России в 2021 году составила — 119200 рублей. В Москве — 161 тыс., в Санкт-Петербурге — 137тыс. Очень неплохо, правда?

Только вот…этот размытый эпитет «хорошим» — портит все дело. Современное программирование — среда очень динамичная, где все постоянно меняется (обновляется). И потому ценны программисты с большим портфолио выполненных работ, другими словами, с опытом проб и ошибок. Этим характеризуется и уровень программирования, конечно. Поэтому такая большая разница в зарплатах между начинающим программистом ( junior или джуном), программистом с 3-6 летним опытом — (middle или мидлом) и опытным — с 10-летним и более опытом в разработках (senior).

Официально они называются — разработчики программного обеспечения (ПО) или developer(s) в англоязычной трактовке. Делают программисты по преимуществу корпоративные платформы для бизнес-структур (банков, крупных онлайн-магазинов, сервисов доставки товаров, ритейлеров и пр.) или разрабатывают схемы цифровой интеграции какого-либо производства или отдельных процессов.

Помимо собственно разработки эти сервисы требуют тестирования ( этим занимаются тестировщики), поддержания работоспособности в формате 24/7 — удел системных администраторов, довольно плотно с ними работают SEO — оптимизирующие продвижение сайтов в сети и маркетинг, Системные аналитики — это специалисты, предлагающие методы внедрения информационных систем для бизнеса, — составляют техническую схему цифровой интеграции для конкретной компании, потом контролируют ход реализации работ. В тесном взаимодействии с ними работают архитекторы ПО, разработчики баз данных, системные инженеры. Также для создания сайтов требуются услуги графических дизайнеров и веб-дизайнеров.

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

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

Начать писать код можно только на специальных приложениях, которые устанавливаются на компьютер, так называемых эмуляторах. Какой язык программирования выбрать — будь то старые добрые С++, С#, Python, Delphi, ха, да даже PHP, или, используемая в основном для создания динамических фреймов Java (Java Script), или же, более современные Objective-C, Scala, Golang, Rubi, Kotlin,Swift — всецело решается в зависимости от требуемых задач и функционала проекта.

На сегодняшний день в России 624 IT-компаний (данные Минкомсвязи за 2019 год ). В список системно значимых, помимо Яндекса, Mail.ru Group, Эпам систэмз (EPAM), OZON, Luxoft, 1C, технологических подразделений крупнейших банков и пр., включены почему-то и такие, как ВГТРК , равно как и Ростелеком и подобные. Объем рынка в 2020 году составил $24,66 млрд. По меркам развитых стран — это очень не много. Хотя вместе с информационно-коммуникационными услугами (связь, СМИ) выходит уже более $47 млрд.

Только около 30% этой суммы отходит собственно на разработку ПО. Значительная часть идет на поддержание работоспособности оборудования и зарплаты обслуживающего персонала. Инженеры дата-центров и телефонных станций, например, они ведь не типичные программисты, хотя и числяться айтишниками. И составляют добрую половину от порядка 370000 сотрудников, работающих в штате IT-компаний России.

Но ориентируясь на данные о количестве сотрудников этих компаний, можно сделать вывод, что собственно программистов ( тех кто создают код — coding) в России около 110000. Еще порядка 30000-40000 работают фрилансерами (на биржах фриланса). Итого выходит — 150000.

Причем фрилансеры заняты преимущественно над не очень технически сложными задачами. Дорабатывают код сайтов под потребности заказчиков, или улучшением интерфейса, занимаются работами, связанными с администрированием, а также SЕО, значительно реже — разработкой сайтов с нуля или созданием отдельного продукта. Часто это разовые несвязанные заказы. Поэтому и зарабатывают на этом в среднем только 80 тыс. рублей в месяц.

Слухи о многих сотнях тысяч программистов в России исходят в основном от курсов программирования. Ничего не поделаешь — им же надо как-то привлекать к себе.

Как стать программистом с нуля?

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

Для того, чтобы стать хорошим программистом, по большому счету, надо закончить математическую спецшколу. Потом без проблем поступить в МФТИ, МИИТ или МГУ. Еще неплохо готовят в МИФИ, МГТУ, МИЭТ, ВШЭ, СПбГУ, СПбПУ, НГУ и ТГУ, а также в ИТМО (и даже в ФСПО ИТМО при нем; сейчас он снова работает). Специальности для поступления могут быть такими: Проектирование программных систем (код 09.03.04); Автоматизированные системы обработки информации и управления (код 09.03.01); Компьютерные технологии, системы и сети (код 09.03.01); Комплексная защита объектов информатизации (код 10.03.01) и др.

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

Почитайте любой учебник по математическому анализу: «нормальный» человек сможет осилить лишь страниц десять, потому как там свой метаязык. А потом разочарование от вуза или курсов —«мы ничего не понимаем».

Кстати, о курсах. Хорошо себя зарекомендовали только курсы от IT-компаний. Например, учебные центры Netcracker есть в МФТИ, МИИТ, ВМК МГУ.

Как итог: 10 лет математической спецшколы, 4-6 лет хорошего вуза и еще лет 6-10 непрерывной работы-практики + постоянные мастер-классы и new skills при лучших компаниях + горы технической литературы (в основном на английском, к слову сказать ), а еще аккуратность и усердие – вот тогда зарплаты и в 300000 в месяц не будут выглядеть заоблачными. Только так. Программирование — это ведь не халява, а лишь возможность.

Хотя кто-то и утверждает, что сумел выучить Python самостоятельно за полгода и сделал работающий сайт собственного интернет-магазина. И что с того? В компании разработчик сразу ведет несколько проектов, а за полгода может и не один десяток, и лично отвечает за качество, так как передает работы разработчикам других участков. А профессионализм это, как известно, быстрая и практически безошибочная работа. Любителям в IT-компаниях места нет, это уж точно.

ЧИТАЙТЕ ТАКЖЕ:

Сами всё узнаем: вуз без преподавателей