В России продолжает расти спрос на IT-специалистов: компании этой сферы стараются привлекать новых сотрудников комфортными условиями работы и высокими зарплатами. Именно поэтому о переходе в IT сегодня задумывается всё больше людей самых разных, порой нетехнических специальностей. О том, как лучше всего начать этот путь, узнали «Известия».
Первые шаги
Переход в сферу IT стал одним из главных карьерных трендов последних лет. Однако, несмотря на то что сфера высоких технологий стала модной и престижной, эксперты советуют помнить о том, что профессия в первую очередь должна быть по душе. По словам директора по технологиям Skillbox Глеба Михеева, только если вы уверены в том, что любите IT, вам стоит погружаться туда. Ведь главное для хорошего старта — это желание.
Как утверждает эксперт, новичкам не нужно бояться мифов о необходимости знания высшей математики и сложных формул, чтобы сделать первые шаги. Языки программирования придуманы людьми и для людей, потому несложны в изучении. Для их освоения прежде всего требуются усидчивость, навыки поиска информации, критическое мышление, готовность учиться, ошибаться и делать выводы.
Самый простой способ обрести новую профессию, по словам Михеева, — пройти специализированные курсы. Выучиться самостоятельно тоже возможно, но это потребует куда больше времени.
— Образовательные платформы предлагают самый короткий путь к достижению цели, выстроенный аналитиками, методистами, практикующими преподавателями. К тому же они помогают со стажировками и трудоустройством, — говорит собеседник «Известий».
CEO Geekbrains Александр Волчек относит программистов, аналитиков, тестировщиков, проектных менеджеров, веб-дизайнеров, UX/UI дизайнеров и разработчиков к профессиям, где можно «без опасений гарантировать трудоустройство».
Получение таких профессий, по его словам, занимает 6–8 месяцев — если проходить интенсивные курсы. Однако, для того чтобы стать хорошим программистом, нужно и учиться, и работать. Одной теории для освоения специальности недостаточно.
Как выбрать язык программирования
По словам Александра Волчека, для того чтобы стать программистом, совсем необязательно быть аналитиком. Самые востребованные — технические специалисты с гуманитарным складом ума.
— Человек, который умеет всё делать сам, крутой специалист, стоит условно $100. Если он умеет разговаривать, выстраивать команды, работать с разными людьми, он стоит тысячу. Очень важно развивать и hard skills, и soft skills, — рассказывает он.
В тот момент, когда перед человеком встанет вопрос о выборе первого языка программирования, эксперты советуют сначала посмотреть на то, какое программное обеспечение бывает и на каких языках оно разрабатывается, а потом уже выбирать язык исходя из своих предпочтений и сфер интересов.
— Самый популярный вид программного обеспечения или приложений — веб-приложения. Это и веб-сайты, и все социальные сети, и даже серверная часть для мобильных приложений. Обычно веб-приложения состоят из так называемых frontend и backend. Frontend — это та часть веб-приложения, которая работает в браузере, когда вы заходите на какой-то сайт или сервис. А backend — часть, которая работает на стороне сервера, — объясняет программный директор факультета backend-разработки направления «Программирование», автор бесплатного курса «Введение в программирование» Skillbox и директор центра подбора IT-специалистов SymbioWay Даниил Пилипенко.
Frontend-составляющая разрабатывается на языке HTML с использованием технологии CSS и языка программирования JavaScript. Если человек хочет создавать frontend, верстать веб-страницы, делать их аккуратными и удобными для использования не только на компьютерах, но и на мобильных устройствах, ему следует изучить именно эти технологии и языки.
— Frontend-разработчики на сегодняшний день — самая востребованная специальность в программировании с одними из самых высоких зарплат. Причем не только в России, но и во всем мире, — отмечает Пилипенко.
Backend-составляющая веб-приложений может разрабатываться на разных языках. Самыми популярными считаются Java, PHP, Python, C# и Go. При этом первый — самый востребованный. Каждая третья backend-вакансия в России — это вакансия на Java.
— На Java написан, например, backend таких сервисов, как «Сбербанк Онлайн» или «Яндекс Маркет». На втором месте — PHP, на котором разрабатывается большинство веб-сайтов. Кстати, социальная сеть «ВКонтакте» практически полностью написана на PHP, — поясняет собеседник «Известий».
«Решение остается за новичком»
На втором месте после веб-приложений по распространенности находятся мобильные приложения. Они разрабатываются под операционные системы Android и iOS на языках программирования Kotlin и Swift. Android-приложения также можно разрабатывать и на языке Java, на котором раньше писались вообще все Android-приложения.
— Мобильные приложения также бывают кросс-платформенными — такими, для которых код можно писать один раз, но сразу для двух платформ — Android и iOS. Здесь есть более десятка технологий, в которых используются разные языки программирования, но, пожалуй, самыми распространенными сейчас можно считать React Native (язык JavaScript) и Flutter (язык Dart). Но если вам интересна сфера мобильной разработки, вы хотите также делать мобильные приложения аккуратными и удобными, рекомендую начинать всё же с нативных технологий — Kotlin и Java для Android и Swift для iOS. А платформу выбирайте ту, которая у вас сейчас, чтобы ваш «вход» в программирование на ней был максимально привычным и легким, — советует Даниил Пилипенко.
Третья разновидность программного обеспечения — это desktop-приложения, которые устанавливаются и работают на компьютерах. Здесь эксперт рекомендует в первую очередь обратить внимание на язык C#. Впрочем, на языках Java, Python, JavaScript и C++ их также можно разрабатывать.
— Ну и четвертая разновидность — это встроенное программное обеспечение, по-английски embedded. Это различные прошивки для микроконтроллеров и программное обеспечение для управления устройствами и оборудованием. Оно разрабатывается, как правило, на языках C и C++. Если вы не хотите иметь дело с визуальной составляющей приложений, хотите решать больше математических и алгоритмических задач или даже близки к технике и умеете паять, возможно, эта сфера вас заинтересует больше всего, — говорит собеседник «Известий».
В целом, заключает он, все современные языки программирования похожи между собой — код в них пишется схожим образом. И, изучив один язык, можно гораздо проще освоить следующий и даже перейти в другую сферу программирования. Если человек хочет стать универсальным разработчиком, то начинать лучше всего с языка Java.
— Сейчас это не только самый востребованный язык backend-разработки и специальность, которая находится на втором месте после frontend-разработчиков, но и язык, в котором очень правильно продуманы различные принципы и концепции программирования. И эти концепции постоянно заимствуются новыми языками. Например, язык Kotlin создан на основе Java и очень на него похож. На него также похож язык C#, который был создан корпорацией Microsoft буквально через несколько лет после появления Java и который по синтаксису от Java почти неотличим. Язык PHP также по мере появления новых версий постепенно перенимает все «фишки», которые есть в Java, — отмечает Пилипенко.
При этом, подчеркивает он, выбор языка программирования всегда остается за новичком. И принимать решение нужно исходя из того, какое именно ПО он хочет разрабатывать в ближайшее время.
Выбор направления
В IT существует множество специальностей и направлений. Для того чтобы выбрать свое, нужно обращать внимание на несколько факторов: например, формат работы (наем или фриланс) и тип задач, который ближе самому человеку (работа с кодом, креативность, продумывание логики продуктов или создание проектов под ключ).
— Важно и то, сколько у вас есть времени на переход в IT. Например, в No-code вы можете начать зарабатывать уже через два месяца, в классической разработке — через год, — рассказывает основательница школы Code Breakers Анна Радзиевская.
По утверждению эксперта, No-code сегодня — один из самых быстрых способов сделать первые шаги в IT и начать зарабатывать. Освоить основные инструменты Tilda, Bubble, Glide или Adalo, Albato, Airtable и начать создавать сайты, приложения, чат-боты можно буквально за 2–3 месяца, а далее же, если человеку понравится процесс, можно расширить арсенал языков программирования для разработки более кастомных решений, однако на это может понадобиться около года.
Как говорит Радзиевская, для того чтобы стать программистом, необязательно быть математиком, но для каждого из направлений необходим определенный склад ума.
— Если вы хотите быть разработчиком — это усидчивость, логика и аналитическое мышление, если дизайнером — то в некотором роде творческие предпосылки, project/product-менеджером — коммуникационные навыки и желание разбираться в бизнес-процессах, ноукодером — всего понемногу. Гуманитариям больше всего могут подойти креативные профессии в IT, — считает она.
В любом случае, если человек хочет стать профессионалом в этой сфере, ему важно не только научиться коду, но и погружаться в суть задачи — понимать не только то, как их сделать, но и то, для чего они нужны и как их оптимизировать. Необходимо разбираться в бизнес-процессах, учиться и предлагать заказчику оптимальные пути решения, которые могут быть неочевидны с первого взгляда. Именно это отличает первоклассного специалиста, заключает собеседница «Известий».