Что делать, если мечтаешь стать программистом

Я Андрей Морозов, основатель замечательной команды программистов Firecode. В этой статье хочу рассказать о кадровом рынке в стране, о том, как стать программистом, с чего начать и в какую сторону двигаться тем, кто мечтает стать программистом.

Что делать, если мечтаешь стать программистом

Почему вузы не готовят программистов

Программы обучения в вузах уже очень устарели, у нас еще учат «Бейсику», и в лучшем случае есть небольшие курсы по C++ или C#. Но как показывается практика, этого недостаточно, чтобы в стране было достаточно ИТ-специалистов.

Что делать, если мечтаешь стать программистом

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

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

Очень странно, что наши вузы не внедряют американский подход к обучению ИТ-специалистов. Например, в MIT (Массачусетский технологический институт) имеет в своем арсенале очень мощные программы по подготовке программистов, и у студентов MIT сразу после обучения сильные скилы по популярным технологиям.

Первый шаг для новичка

Нам постоянно пишут люди с просьбой помочь им сделать первый шаг в программировании. Для одних это мечта, для других — необходимость, так как они не видят себя в текущей профессии. ИТ — это не лотерея, так как технологии будут развиваться и становиться все более популярными. Сегодня найти работу нормальному программисту не составляет никакого труда.

Первый вопрос от начинающего специалиста — «Что учить?».

Современное программирование — это:

1. Веб-разработка (сайты, сервисы, интернет-магазины и т. п.). Используемые технологии делятся на front- и back-часть. Front — это то, что видит пользователь в своем браузере: верстку, изображения, картинки, анимацию и т. п. Back — это невидимая часть, она своего рода двигатель любой системы, основные функции которой заключаются в работе с базой данных, обработке информации, логике, отправке почты, взаимодействии с внешними сервисами и т. п. Языки программирования: PHP, Java, Python, JavaScript (Node.js).

Проще всего начать с PHP или Python, у данных языков очень низкий порог входа. На PHP написаны такие популярные фреймворки, как Laravel, Symfony, Битрикс, Yii.

2. Мобайл-разработка (мобильные приложения). Используются технологии: Swift, Kotlin, Java, C#. Порог входа в данные технологии средний и высокий (в зависимости от того, что вы выберете). На Swift разрабатываются приложения для Apple, на Kotlin — приложения под Android.

3. NET-приложения (десктопные приложения). Используют технологии: C#, C++, F#, на которых вы сможете разрабатывать программы для компьютера. Порог входа выше среднего.

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

Если вы определились с тем, что будете изучать, пора понять, как построить свое изучение.

Онлайн-школы и ютуб-уроки

Что делать, если мечтаешь стать программистом

Многие, чтобы упростить процесс своего обучения, обращаются в онлайн-школы, которых сейчас очень много. Стоимость курсов в онлайн-школах варьируются от 20 до 150 т. рублей. Это достаточно много для начинающих программистов. Конечно, к покупке вас будет подталкивать реклама о размере заработных плат программистов, но надо понимать, что это маркетинг-школы, и в пример приводятся зарплаты специалистов с опытом. Я не хочу сказать, что онлайн-школы — это обман и т. п., но надо понимать, что сразу после обучения вы не сможете получать большую заработную плату. Также высока вероятность, что технология вам не понравится, а деньги вы уже заплатите. Еще хуже, когда люди оформляют рассрочку на обучение, а это обычный кредит, который вас обяжут выплатить. Тот, кто не готов потратить деньги на обучение в онлайн-школе, отправляется на YouTube искать бесплатные курсы по интересующему языку программирования или фреймворку. У таких уроков имеются несколько минусов, во-первых, вы не в состоянии оценить качество уроков, во-вторых, вы не получаете домашних заданий, чтобы иметь возможность подкрепить свои знания. Но в России и мире тысячи программистов, которые выучились на книгах и youtube-уроках, поэтому главное — желание и терпение.

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

Стажировка

Что делать, если мечтаешь стать программистом

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

Какие бывают компании-работодатели

1. Студии и агентства

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

2. Маркетинговые компании

Это компании, которые занимаются SEO, рекламой, SMM и т. п. В таких компаниях разработчики далеко не ключевые сотрудники, поэтому опыт вы там сможете получить, но обычно это будут очень мелкие проекты.

3. Продакшны и аутсорсинговые компании

Компании, как наша (FIRECODE), специализирующиеся на разработке, обычно в таких компаниях большое количество программистов.

4. Продуктовые компании

Это корпорации, такие как Яндекс, Сбер, Тинькофф и т. п. Тут все очень зависит от того, куда вы попадете и попадете ли вообще, — для начинающего специалиста это своего рода лотерея.

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

Портфолио, или как подтвердить свои знания

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

В завершении хочу сказать о своем личном мнении, о том, за какими технологиями будущее. Это React.js, который очень быстро развивается и используется повсеместно, Python, который лучше всех работает с нейросетями и ИИ, и, конечно же, Java и PHP, — эти мастодонты будут еще долгое время популярны.

3232
30 комментариев

Чушь. Нет ничего лучше 1С:Программирования!

4

Спасибо за комментарий. Данный стек не рассматривал, так как он применим только для РФ

3

Навыки владения ZX-Spectrum еще актуальны?

2

В IoT индустрии специалисты со знанием ассемблера на вес золота

Комментарий недоступен

1

Оставте тогда ссылки на соцсети, а то где их искать то

1