Топ IT-профессий – как выбрать ту,

что подходит именно вам?

Сегодня отрасль информационных технологий (IT) – одна из самых прибыльных и быстроразвивающихся. «Айтишники» – новая элита, какой когда-то были аристократы или нефтяные магнаты, именно поэтому курсов по обучению IT-профессиям становится всё больше, и их популярность не падает.


Разработчиков, тестировщиков, менеджеров проектов и других специалистов, попадающих под определение «айтишник», всё время не хватает. Все IT-профессии востребованы на рынке и приносят своим обладателям хороший доход.


Разумеется, интересная востребованная работа и высокая зарплата в сфере IT доступны только тем, кто, во-первых, получил хорошее образование и обладает нужными навыками и компетенциями для заявленной специальности (далеко не все курсы дают качественное образование), во-вторых – выбрал ту IT-профессию, которая соответствует его или её склонностям и талантам.

На что ориентироваться при выборе IT-специальности

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


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

Профессии для тех, кто входит в IT с нуля

Системный администратор с перспективой роста до DevOps’а

Как ни странно, первой рекомендацией в списке профессий для новичков в IT будет специальность не разработчика, а системного администратора. Объясняется это не востребованностью самих системных администраторов (в настоящее время спрос на их услуги и стоимость на рынке в среднем ниже, чем у разработчиков), а перспективой роста. Именно из системных администраторов получаются лучшие специалисты по DevOps-технологии – DevOps-инженеры.


Изначально DevOps – это методология взаимодействия разработчиков программного обеспечения, с одной стороны, и системных администраторов – с другой. Аббревиатура расшифровывается как «development and operations» – разработка и эксплуатация.


DevOps появился в качестве решения проблемы «развёртывания» ПО, т.е. применения новых программ, предоставленных разработчиками, на конкретных серверах клиента. Зачастую в процессе такого развёртывания системные администраторы сталкивались с тем, что разработчики не учли особенности технологической оснащённости заказчика (например, операционную систему или мощность сервера).


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


Сегодня от DevOps’a ожидают понимания инструментов разработки и умения автоматизировать процессы разработки и тестирования, а также полноценного взаимодействия с заказчиком и всеми участниками команды, от программистов до маркетологов. В настоящее время такие специалисты ценятся на вес золота, они востребованы в больших корпорациях и масштабных проектах.

Эту профессию мы советуем выбирать тем, кто может себе позволить «играть в долгую» – потратить на обучение более полугода (программа «DevOps-инженер» длится 9 месяцев) и постоянно расширять список своих навыков.

Также специальность DevOps-инженера подойдёт системным администраторам, которые готовы повысить квалификацию и поработать над «мягкими» навыками, такими как общение и работа в команде.

Разработчик (программист)

Самый очевидный путь входа в IT – изучение одного или нескольких языков программирования. Чтобы выбрать, с какого языка начать обучение, нужно решить, какая сфера деятельности внутри IT-сообщества для вас наиболее привлекательна: написание разных видов программ и приложений, разработка игр, создание роботов и роботизированных транспортных средств (машинное обучение), нейросети, веб-разработка и т.п.


Каждый из видов IT-технологий требует знания определённого языка.

Сфера IT

Подходящие языки программирования

Web-разработчик – Frontend

JavaScript, TypeScript

Web-разработчик – Backend

Python, PHP, JavaScript, Java, Ruby, Golang (Go)

Web-разработчик – Full Stack

JavaScript, Python, PHP, Java, Ruby

Мобильная разработка (приложения для смартфонов)

Javascript, Java, C++

Мобильная разработка для Android

Kotlin

Мобильная разработка для iOS

Swift

Разработка игр (Геймдев)

Java, C#, C++, Python, JavaScript

Создание десктопных приложений (программ для ПК) для Windows, Linux

Python, Java, C, C#, C++, JavaScript

Создание десктопных приложений (программ для ПК) для Mac

Swift, Java, C

Разработка системного ПО

Golang (Go), C

Искусственный интеллект (AI), машинное обучение (ML)

Java, Python

Аналитика данных (Big Data, Data Science)

Python, Java, R, Scala

Создание нейронных сетей

Python, R


*Поскольку это новое направление, в нём используются самые разные языки, мы приводим в пример самые популярные.

Обработка данных научных исследований

Python, R

Разработка ПО для микроконтроллеров

Arduino С

Финансовые технологии, блокчейн

С++, Haskell, COBOL

Вы можете заметить, что такие языки, как Python, Java, JavaScript и разные варианты языка С, востребованы во многих сферах IT.


Самым универсальным является Python. Широкая распространённость этого языка – и плюс и минус для владеющего им программиста. С одной стороны, рабочих мест для Python-разработчиков достаточно много, с другой – высока конкуренция на рынке труда.


Из-за универсальности и лёгкости изучения Python идеально подходит для начинающего программиста, однако, чтобы рассчитывать на более высокую зарплату, придётся приложить усилия и получить какую-то дополнительную, более узкую IT-специальность.

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

Отдельно стоит сказать о языках Arduino С, Haskell и COBOL. Arduino С предназначен исключительно для запуска в работу микроконтроллеров Arduino, однако такая узкая специализация не делает его менее востребованным, поскольку эти микроконтроллеры имеют очень широкое применение – от самых современных роботов до систем обогрева и полива.


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


Ещё один важный язык для тех, кто хочет попробовать себя в финтехе, – COBOL. COBOL – ветеран среди современных языков программирования, он появился в 1959 году. Востребованность COBOL-программистов объясняется просто: многие мировые финансовые и административные системы слишком громоздки и неповоротливы, чтобы менять язык программирования, на котором работают их программы, а язык этот – именно COBOL. COBOL изначально создавался как бизнес-ориентированный язык. Это, как и в случае с Haskell, обеспечивает его высокую надёжность с точки зрения защиты данных.


В целом при выборе языка программирования для изучения стоит руководствоваться двумя параметрами: востребованностью языка в интересующей вас сфере IT и сложностью его изучения.

Язык программирования

Сложность

PHP

простой

Python

простой

JavaScript

простой

Ruby

простой

Golang (Go)

простой

Swift

простой

Kotlin

простой

Java

средняя сложность

TypeScript

средняя сложность

C#

средняя сложность

Haskell

средняя сложность

COBOL

средняя сложность

С

сложный

С++

сложный

R

сложный

Аналитик данных (Data Scientist)

Аналитик данных – это специалист, без которого невозможно управление современной компанией, бизнес-процессы без него застопорятся. Также важны Data Scientist’ы для науки – без их помощи обработка сведений, полученных учёными, будет занимать слишком много времени и может содержать значительные погрешности.


Специалист по Data Science занимается тем, что использует математические модели для анализа больших объёмов информации, структурируя её и делая удобной для восприятия и принятия решений.


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


Чтобы программа качественно выполняла свои функции, ей нужно объяснить, как сортировать имеющийся массив информации. Аналитик данных (Data Scientist) может использовать для этого существующие инструменты (программы), а может создать свои собственные. Такая деятельность уже называется машинным обучением.

Инженер машинного обучения (Machine Learning, ML)

Деятельность инженера машинного обучения отличается от работы аналитика данных тем, что для аналитика важен результат – структурированная информация, в то время как инженер ML занимается автоматизацией самого процесса анализа и структурирования.


Инженер ML может не только обучать программы понимать ту или иную информацию, но и создавать одни программы с помощью других – например, через генетическое программирование, в ходе которого программы «выращиваются» за счёт отбора лучших для решения той или иной задачи «хромосом».


Машинное обучение применимо в самых разных сферах IT: от алгоритмов умной ленты соцсетей и рекомендаций в интернет-магазинах до систем типа «умный дом» и нейрокомпьютерных интерфейсов, которые позволяют программировать технику, управляемую силой мысли.

Если в будущем нас ждёт появление искусственного интеллекта, сравнимого с человеческим, создадут его именно инженеры машинного обучения.

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

В академии подготовка специалиста с квалификацией Data Scientist\ML инженер занимает 9 месяцев.

Специалист по тестированию (SQA инженер)

SQA инженер или, проще говоря, тестировщик – одна из тех профессий, которую часто советуют новичкам в качестве удобного входа в IT-сферу. Объясняется это тем, что для проведения тестирования нужно не создавать программы с нуля, а проверять уже готовые на наличие ошибок и ограничений. Однако такой подход не совсем верен, поскольку сама философия работы у тестировщиков и разработчиков разная: задача разработчиков – создавать программы и приложения, задача тестировщика ровно противоположная – разрушать созданное программистами ПО самыми разными способами, проверяя границы допустимого.


Оба занятия можно назвать творческими, однако это творчество разного качества: в то время как ценность разработчика заключается в изобретательности при создании нового, умении предлагать свежие решения, ценность тестировщика проявляется в гибкости ума при неоднократном выполнении одной и той же задачи, в усидчивости. Таким образом, с самого начала обучения SQA инженер тренирует иные качества, чем те, которые потребуются разработчику, поэтому воспринимать сферу тестирования как лёгкий путь к профессии программиста не стоит.


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


Главное – чтобы профессия была для вас по-настоящему интересной и любимой, ведь в тестировании одни из самых важных качеств – упорство и настойчивость.

В академии курсы по специальности «Инженер SQA» (Software quality assurance) длятся 9 месяцев – это дольше, чем большинство курсов такого профиля, однако именно это позволяет тусуровцам уже на старте получить преимущество с точки зрения опыта и глубины знаний.

IT-профессии, которые требуют опыта
в других сферах деятельности

Разработчик нейроинтерфейсов

Разработка нейроинтерфейсов – одна из самых интересных и прогрессивных сфер современных IT. Это именно та работа, в которой программист может почувствовать себя создателем технологий будущего.


Нейроинтерфейсами называют системы, которые с помощью специальных программ могут передавать электронные сигналы мозга компьютеру и связанным с ним устройствам. В англоязычной традиции они также известны как Brain-Computer interface, т.е. связь «мозг-компьютер».

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

Чтобы стать разработчиком нейроинтерфейсов, имеет смысл сначала получить биоинженерное или электротехническое образование (в ТУСУРе соответствующие знания можно приобрести на Факультете электронной техники (ФЭТ), а затем повысить квалификацию с помощью курса машинного обучения – в Айтик.ТУСУР его можно пройти по уже упоминавшемуся профилю Data Scientist\ML инженер.

Менеджер проектов (Project Manager)

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


Главная задача менеджера проектов – выпуск продукта в должный срок по цене, которая будет приемлема для заказчика и окупит усилия исполнителей. В процессе работы PM:

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

Чтобы выполнять такую работу, необходимы как знания в области IT, так и управленческие навыки, понимание бизнес-процессов. В эту профессию приходят и менеджеры, получившие дополнительное образование программиста или другую IT-специальность, и айтишники, повысившие квалификацию с помощью курсов менеджмента и программ MBA (магистр делового образования). Без подобного сочетания стать успешным менеджером проектов в IT даже при наличии природных талантов к управлению практически невозможно.

Веб-дизайнер (UX/UI)

Веб-дизайнеры делятся на UI – User Interface (интерфейс пользователя) и UX – User Experience (опыт пользователя) дизайнеров. Первые занимаются внешним видом сайтов и приложений, тем, как они будут выглядеть с точки зрения эстетики. Вторые отвечают за функциональность и эргономику.


На заре веб-разработки внешнему виду сайтов придавалось не слишком большое значение, однако сегодня люди «живут» в интернете почти так же, как в собственных домах, поэтому значимость работы UX/UI-дизайнеров постоянно растёт.


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


Чтобы получить любую из этих специальностей, помимо языков программирования потребуется изучить как минимум основы дизайна, чем у вас больше опыта в этой сфере, тем лучше. В конце концов, Стиву Джобсу хватило курса каллиграфии, чтобы осознать важность хорошего дизайна элементов интерфейса и сделать продукцию Apple не только функциональной, но и эстетически приятной.

HR-менеджер (Эйчар)

Специалист по человеческим ресурсам (human resources) или, говоря простыми словами, кадровик – один из самых важных членов современных IT-команд. Гибкая методология разработки – аджайл (Agile), которая доминирует в современных IT, ставит людей и их интересы на первое место в списке ценностей.


От того, насколько качественно будут подобраны члены команд разработчиков и тестировщиков, соответствуют ли навыки всех участников процесса – от DevOps’а и менеджера проекта до маркетолога – заявленным требованиям, зависит скорость создания информационного продукта.


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


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


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


Профессия HR-менеджера в IT подойдёт людям, которые умеют и любят общаться, быстро и точно улавливают особенности характера собеседников, чувствуют настроения в коллективе и могут скорректировать их в лучшую сторону.

Фасилитатор в IT

Сравнительно новая и малоизвестная специальность в IT для России, однако в мире направление фасилитации активно развивается уже не первое десятилетие. Его популярность связана с распространением ещё одной гибкой методологии разработки, предполагающей создание информационного продукта небольшими командами соответствующих специалистов – Scrum.


При работе по методологии Scrum команда разработчиков встречается через небольшие (1–4 недели) промежутки времени – спринты, чтобы продемонстрировать заказчику результат в виде небольшого готового продукта, являющегося ступенькой в создании более масштабного продукта, необходимого заказчику.


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


Изначально (вне сферы IT) фасилитаторами называли помощников ведущих групповых встреч и модераторов дискуссий. Их задачей было обеспечение максимально продуктивного и одновременно эмоционально позитивного взаимодействия всех участников обсуждений и переговоров.


Сегодня фасилитатор в IT занимается тем же, только на более глубоком уровне: обеспечивает коммуникацию в команде, следит за тем, чтобы обсуждения шли корректно и по плану, чтобы участники не отклонялись от темы и могли принимать наилучшие решения из возможных.


При этом фасилитатор должен оставаться объективным и беспристрастным – он не может навязывать своё мнение относительно решения каких-либо задач или проблем, давать оценку принимаемым решениям или действиям участников обсуждения.


Обычно набор обязанностей фасилитатора в сфере IT таков:

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

Для работы фасилитатором необходимы: знание психологии, хорошо развитый эмоциональный интеллект, эмпатия, умение настаивать на своём, оставаться вне ситуации, смотреть на взаимодействие между коллегами непредвзято и отстранённо, независимо от своих симпатий и антипатий.


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

Перспективы развития IT

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


С другой стороны, растёт количество IT-направлений, в которых востребованы сложные вычисления и междисциплинарные связи (нейроинтерфейсы, генетическое программирование).


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

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