Какое программирование востребовано
Какое программирование самое востребованное в 2019 году
Мы решили разобраться, какое программирование наиболее востребовано сегодня и останется таким надолго.
Так просто на вопрос не ответить: этот рынок гибкий и изменчивый. Но перспективные направления не теряют актуальности долгое время: их мы рассмотрели в нашей статье. А если вы уже выбрали веб-разработку, то советуем пройти курс «Профессия веб-разработчик». Узнаете основы создания веб-приложений, этапы работы над ними и научитесь программировать на реальных проектах.
Наталья Березовская
Автор в сфере IT, digital, экономики и финансов. Ведет некоммерческий проект для начинающих писателей «ЛитЦех».
Где работают программисты
Разработчики нужны во множестве сфер, даже не всегда связанных только с IT. Охватить их все одной статьёй почти нереально, мы остановимся на самых известных и часто упоминаемых экспертами областях.
Веб-разработка
Одно из разноплановых направлений. Здесь работают с JavaScript, PHP, Python, Java и Ruby, а также используют «язык структурированных запросов» SQL. Веб-разработка купается во внимании новичков-программистов. Но и конкуренция здесь высокая: чтобы оставаться на плаву, нужно постоянно следить за тенденциями.
Несомненные плюсы этой области программирования — довольно лёгкий порог входа, быстрота изучения библиотек и инструментов.
Мобильная разработка
Это направление считают самым перспективным. Смартфоны есть у всех, и их возможности непрерывно растут. Языки создания мобильных приложений: Java и Kotlin для Android, Swift для Apple, а также Python, JavaScript, C#.
Стоит оговориться, что самостоятельное создание мобильных приложений высокого дохода не принесет: хорошо взлетают стартапы с уникальной и качественной идеей. Но благодаря самообучению вы получите нужный опыт для работы в команде.
Фокус разработки всё больше смещается в сторону мобильных устройств. Если у компании нет приложения, то она незаметна для большинства. И эта сфера продолжает расти.
Десктопные приложения
О десктопе говорят меньше и реже, чем о мобильных и веб-технологиях. Но не потому, что направление похоронили, а потому, что все вопросы в нем давно изучены, ответы на них стандартны и понятны, а изменения не происходят так быстро, как в других нишах.
Попасть в разработку приложений для ПК сложнее, чем в веб и мобайл, — без высшего профильного образования вряд ли возьмут в серьезные организации.
Языки десктопа зависят от операционной системы:
- для Linux и кроссплатформенных приложений — C++;
- для macOS — Swift и Objective-C;
- для Windows — C#.
Разработчиков на десктопе меньше всего из-за высоких требований к знаниям. Но лучшие специалисты попадают на хорошие зарплаты в крупные проекты, имеют шанс закрепиться там надолго и создать свою команду.
Разработка игр
Не так давно по геймдеву сходили с ума все поголовно — он был на пике роста популярности. Сегодня страсти улеглись, но это по-прежнему уважаемая и интересная область интернет-технологий. Годовой оборот рынка в 2017 году оценили в 100 миллиардов долларов. Языки геймдева: С++, C#, Lua и JavaScript для браузерных игр.
Осознание, что твоим продуктом пользуются миллионы фанатов по всему миру, дарит разработчику игр потрясающую эмоциональную отдачу. В индустрии высокие зарплаты, но идти туда нужно с готовностью к сложной работе и высоким нагрузкам. Для некоторых это тоже плюс.
Data Science
Тоже модное сегодня направление в IT, которое выходит далеко за его пределы. Хранение, обработка и анализ больших данных есть в любой сфере экономики. Поэтому Data Science находится на стыке интернет-технологий и бизнеса.
«Data scientist — самая сексуальная профессия XXI века».
Специалисту по Big Data необходимы серьезные знания математического анализа, статистики, машинного и глубокого обучения, текстовой аналитики. Языки программирования, на которых «говорят» здесь, — R, SAS и Python.
Data Science — это «закрытый» клуб программистов, куда хочется стремиться по двум причинам. Первая — огромное непаханое поле возможностей, учитывая молодость сферы. Вторая — такие же огромные зарплаты.
Программирование встроенных систем
Embedded — микроконтроллеры, промышленное оборудование, ЧПУ и тому подобные вещи. Полная противоположность интернету и веб-технологиям. Здесь нужно понимать аппаратную часть машины, для которой создается ПО. Необходимые языки — С, С++ и специализированные для тех или иных микроконтроллеров.
Попасть в эту сферу очень трудно: и вакансий, и специалистов в ней гораздо меньше, чем в том же вебе. Но если изучать технологии, связанные с использованием в устройствах интернета, можно пойти дальше.
Профессия-мечта для тех, кто грезит роботами и сложными устройствами, которые начинают работать прямо на глазах и зависят от ваших действий. Через эту область программирования можно внести весомый вклад в науку в принципе.
Интернет вещей (IoT)
Интернету вещей пророчат большое будущее и активное развитие в ближайшее время. Аналитики компании Ericsson прогнозируют среднегодовой темп роста в размере 23% до 2021 года.
Интернет вещей — это создание smart-устройств, подключенных к сети умного города или дома.
Направление молодое и перспективное, поэтому войти в него сегодня проще, чем через 10–20 лет. По этой же причине легче получить признание, воплотить безумные идеи и стать частью истории.
Автоматизация бизнеса
Программные продукты для компаний из трендов не уйдут: наоборот, появляются новые и конкурируют между собой. Популярные в России — «Мегаплан», amoCRM, «Битрикс24», 1С. Лидеры международного рынка: SAP, Salesforce, Microsoft Dynamics CRM, Siebel Oracle CRM и другие.
В обязанности программистов входит внедрение и обновление системы, а также обучение работающих с ней сотрудников. Но есть и специалисты, которые разрабатывают те самые обновления, пишут и поддерживают код.
В сфере SaaS относительно невысокий порог входа и неплохая заработная плата, есть возможность развиваться и как программисту, и как финансисту.
Самые популярные языки программирования
Выбор языка зависит от направления разработки. После того как разобрались, какое программирование востребовано и подходит лично вам, нужно искать и изучать инструменты для работы.
Топ TIOBE основывается на количестве поисковых запросов, обучающих курсов и специалистов. Здесь лидеры выглядят так:
Рейтинг IEEE Spectrum анализирует частоту поисковых запросов, число проектов на GitHub, а также упоминания в Twitter и главных IT-порталах сети. Здесь в пятёрке лидеров — Python, C++, Java, C, C#.
Если ориентироваться на данные российского сайта HeadHunter, картина меняется. Наглядно она представлена таблицей из статьи в корпоративном блоге HeadHunter на «Хабре»:
На основании разных параметров мы получаем разные результаты. Мы советуем не гнаться за модой, а изучать то, что вам близко. Если оно ещё востребовано и хорошо оплачивается — двойное попадание. Но уходить в крайности и осваивать древние технологии — тоже неверный путь, ориентироваться на спрос всё-таки нужно.
Какое программирование самое востребованное
Подойти к программированию можно с одной из двух сторон: стать отличным специалистом узкого профиля — по статистике, их заработные платы выше, но найти новую работу им чуть сложнее, — либо стать fullstack-разработчиком и выигрывать за счёт широты спектра. Найдите золотую середину: станьте экспертом в одной-двух сферах, но поддерживайте актуальность знаний в остальных технологиях.
Какое программирование востребовано
Тренд на цифру
Цифровые технологии развиваются в геометрической прогрессии. Это определяет IT-рынок в 2019 году, и в следующем тенденция только усилится.
Наиболее востребованные hard skills 2019/20:
- Облачные вычисления (в приоритете — AWS, применяемый многими компаниями по всему миру за удобство и надежность). На международном сайте Glassdoor.com сейчас около 42 000 вакансий Cloud Engineer (в мире) — каждый год цифра будет только расти, т.к. облачные технологии применяются все больше.
- AI (нейронные сети, машинное обучение и все, что связано с искусственным интеллектом) — это явление уже изменило бизнес в финансовой, компьютерной и производственной сферах. Внедрение AI трансформирует ежегодно миллионы рабочих мест. Чтобы машины не успели заменить вас — программируйте эти машины. Особое место занимают технологии обработки естественного языка. Научите машины понимать людей и будете управлять миром.
- UX (изучение пользовательского опыта, анализ сценариев, предвосхищение потребностей) — упаковать сложные IT-технологии в понятный и нужный пользователю продукт становится непросто по мере усложнения этих самых продуктов. Должности UX-дизайнеров открыты в 25 000 компаний по всему миру по данным Glassdoor.
- Мобильная разработка (Android, iOS). Мы переходим в мир смартфонов. Доступность продукта на мобильном устройстве — это возможность добраться до потребителя максимально быстро. А значит объем разработок на мобильных платформах будет расти. В количестве вакансий на мировом рынке выигрывает Android (53 000 вакансий против 22 000 вакансий на iOS).
- Data Science (сбор, обработка, вычисление и аналитика больших данных) — каждые 2 года количество информации в мире удваивается. Большие корпорации и компании поменьше гонятся за данными, чтобы просчитать потребности людей и выпустить наиболее востребованный продукт раньше других (и заработать на нем). Здесь важны не только аналитические способности, но и технические навыки — в разных проектах это могут быть, например, Python или SMACK-стек (Spark, Mesos, Akka, Cassandra и Kafka).
Тестирование и поддержка
Одновременно с взрывным ростом сложных продуктов растет потребность в их качественных тестировании и поддержке. Кроме того, растет важность стабильной и безопасной работы команды.
Здесь мы видим стабильный спрос:
- QA-инженеры (более 20 000 вакансий на Glassdoor). По нашему опыту, тестировщику потребуется не только знание технологий непосредственно тестирования, но и знание (как минимум базовое) стека продукта. Если у вас проект на Java — от кандидата ждут знание теории и выше этого языка. Тестировщик выступает не только членом команды, выявляющим ошибки, но и понимающим их техническую сущность и способы устранения.
- Системные и сетевые администраторы. По данным международного агентства Robert Half, за последний год средняя зарплата в этих специальностях выросла в США на 3500 долларов в год. Для работы в международных компаниях важно наличие у кандидата сертификатов. Если планируете релокацию с одной из этих специальностей, рекомендуем позаботиться об их получении. Для системного администратора это Certified Information Systems Auditor (CISA), CompTIA A+, Microsoft Certified Solutions Associate (MCSA), Microsoft Technology Associate (MTA). Для сетевого — Cisco (CCIE), Cisco Certified Network Associate (CCNA) и Cisco Certified Network Professional (CCNP).
- DevOps-инженеры. Еще 10 лет назад они только появлялись и многие не понимали отличие этой специальности от системного администратора. Но сегодня для IT-компаний по всему миру DevOps-инженер становится нормой. Сейчас более 34 000 компаний ищут такого специалиста.
- Специалисты по кибербезопасности. С ростом кибератак компании все больше заботятся о безопасности своих продуктов и данных пользователей. В США руководители службы безопасности (CSO) — вторые по уровню оплат специалисты после IT-директоров. Их средние зарплаты доходят до 180-190 тысяч долларов в год (гросс).
Разработка
Программирование — основа всей IT-индустрии. Среди технологий есть свои стабильные лидеры, не сдающие позиций уже несколько лет, и новички, спрос на которых постоянно растет.
Мы рассмотрели отчет создателей платформы для тестирования программистов Devskiller, чтобы выявить, каких именно разработчиков ищут в мире чаще всего. Исследовательской базой для отчета стали результаты более 112 000 тестовых заданий, которые рекрутеры давали кандидатам. Это означает, что каждый тест равен тестовому заданию на какую-либо вакансию.
Итак, какие технологии востребованы в мире в 2019?
- JavaScript. 70% компаний искали в этом году разработчиков, имеющих опыт с js. И крупные, и небольшие компании используют его при создании своих продуктов. На нем уже так много написано, что в ближайшее время спрос на него кардинально упасть не может.
- SQL. Используется и во front-end, и в back-end. Что объясняет востребованность этой технологии, которая необходима в 57% случаев.
- Java. 48% компаний искали кандидатов со знанием Java. стоит отметить, что этот язык часто используют крупные корпорации, в то время как стартапы и небольшие компании все чаще отходят от него.
- HTML/CSS. 46% позиций и большинство вакансий во front-end разработке потребуют от вас их знания. По данным опроса разработчиков Stack Overflow, они также стоят в ТОП-5 наиболее используемых технологий.
По нашей статистике, зарубежным компаниям почти всегда нужны разработчики, владеющие несколькими языками либо технологиями. И это касается не Full Stack-разработчиков, а индустрии в целом.
Например, за 2019 год у нас было 14 позиций, на которых требовалось знание Java (во всех на уровне Middle+ и выше). Из них только у 5 вакансий не было обязательного знания других языков или технологий. В двух — требовался опыт в QA, еще в двух — опыт с мобильными платформами (Android и/или iOS), в 2 вакансиях — Java+Python и Java+js. Один работодатель требовал знание Groovy.
Рассматривая результаты тестов Devskiller, мы также выявляем самые востребованные сочетания навыков, которые ищут зарубежные компании:
- Java+SQL (наша практика подтверждает, что у всех «чистых» вакансий на Java есть требования к опыту работы с SQL) — 26,27%
- JavaScript+CSS (это сочетание справедливо для всех вакансий front-end-разработчиков, с которыми мы работали) — 18,78%
- JavaScript+SQL — 15,82%
- .NET+SQL — 9,22%
- .NET+JavaScript — 8,03%
- PHP+SQL — 7,59%
- PHP+JavaScript — 7,44%
- Java+JavaScript — 6,85%
В 5 из 8 сочетаний фигурирует JavaScript. Мы уже говорили о его широком распространении и сейчас можем в этом убедиться. В сочетании в HTML он формирует надежный стек frontend-разработки. У Full Stack-разработчиков JavaScript часто выступает как технология, ответственная за front-end, дополненная Java, .NET или PHP. Популярность связки JavaScript с SQL говорит о важности технических навыков работы с базами данных.
Кроме непосредственно языка, разработчику предстоит работать в определенной среде. Углубляясь в технологический стек, рассмотрим варианты тестирований, проводимых в средах. Это говорит о том, какие требования помимо знания конкретного языка потребуются вам в 2020 году при трудоустройстве:
- Java: Selenium, Android, Spring/Spring Boot, JPA/Hibernate
- SQL: PostgreSQL, SQL Server, MySQL, Oracle, HSQLDB
- JavaScript: JQuery, Node.JS, Redux, Ember, React, Angular
- Python: Django, Pandas, NumPy
- PHP: Symfony, Laravel, Slim, Doctrine, Codelgniter
- .NET: ASP.NET, C#, Entity Framework
Все эти технологии на рынке достаточно давно и удивляться их популярности не приходится — на них написано так много кода, что работа будет для программистов на несколько лет вперед.
Инсайты
Самые динамично развивающиеся области в IT: Cloud, AI, UX, Mobile и Data Science.
Растут зарплаты и количество предложений у специалистов в тестировании. При этом все чаще требуются знания в языках и технологиях разработки.
Увеличивается количество вакансий среди системных и сетевых администраторов, а также DevOps-инженеров. Последние являются одними из самых высокооплачиваемых специалистов в IT, исключая разработчиков.
В связи с увеличением опасности кибератак растет спрос на специалистов по кибербезопасности.
Программисты JavaScript находятся на пике востребованности. Учитывая рост спроса на Full Stack-разработчиков, изучив дополнительно к JavaScript одну или несколько технологий они могут найти работу практически в любой стране.
При подготовке этой статьи использовались материалы Devskiller, Hackerrank, Dice, Glassdoor, RobertHalf и собственная аналитика Alex Staff Agency.
Какое программирование востребовано
Любому программисту необходимо знать английский язык и математику. Вся важная документация и качественные курсы опубликованы на английском. Знание математики требуется не настолько категорично. Но уверенное владение математикой обеспечивает четкое понимание создаваемого кода, осознанность каждого шага и позволяет прикидывать в голове эффективность алгоритмов.
Существует более 300 языков программирования, но для успешной карьеры можно выбирать из десяти самых популярных. Еще правильнее будет сначала определиться с областью, в которой вы собираетесь работать, и только потом приступать к выбору языка.
Одним из лучших языков для начинающих является Python. Этот популярный язык общего назначения хорош лаконичностью и простотой синтаксиса, его активно используют в IT-компаниях России и мира.
Другими популярными языками считаются Java и C. Они сложнее, особенно для новичков, но владение ими обеспечивает лучшее понимание того, что вы делаете и что происходит с вашей программой. Вместе с языком Pascal язык С обычно изучается в вузе на профильных факультетах.
Использование других языков программирования зависит от цели деятельности. Например, в качестве серверных языков популярны php, Java, ruby. Из клиентских языков наиболее перспективен Java Script. Для разработки сложных высоконагруженных проектов требуется C++. На этом же языке пишутся игры. Еще одна перспективная сфера — разработка приложений для мобильных устройств. Тут используют Java, Objective-C, Swift. Любой опытный программист знает несколько языков, однако код на работе он пишет только на одном из них.
Евгений Кучерявый, автор блога онлайн-университета SkillBox, рассказал, чем занимаются веб-разработчики и какие языки им непременно нужно знать.
Такой разработчик по определению стоит на «переднем крае» и отвечает за визуальную составляющую сайта: то, каким его видит посетитель. Frontend-разработчики следят за тем, чтобы все графические элементы исправно работали, контент отображался на всех устройствах, шрифты не «ползли», а картинки не загружались слишком долго.
1. Обучение HTML
В первую очередь начинающий frontend-разработчик должен освоить HTML — язык гипертекстовой разметки. Это базовый инструмент, который позволяет вынести на страницу все основные элементы, будь то фотографии, таблицы или текст.
2. Обучение CSS
Внешне написанная на HTML интернет-страница будет напоминать простейший текстовый документ. Чтобы «оживить» его, используется каскадная таблица стилей или CSS. Она меняет не структуру страницы, а ее внешний вид: шрифты, расположение элементов, тени и цвета. Другими словами, если HTML используется для описания логической структуры страницы, язык CSS отвечает за графические элементы и прописывается в отдельном файле.
3. Обучение JavaScript
Наконец, чтобы элементы веб-сайта могли перемещаться и реагировать на действия пользователя, разработчик прописывает код на языке JavaScript. Он заметно сложнее первых двух, но результат стоит того: от скриптов зависит появление всплывающих окон или же перетаскивание элементов на странице (например, сортировка фото в соцсети). В отличие от CSS, код JavaScript встраивается в структуру HTML, поскольку влияет не на внешний вид элементов, а на их поведение на странице.
Красивая оболочка сайта не имеет смысла без начинки: видеоролики, гиперссылки и картинки должны быть связаны с сервером, базой данных, с другими интернет-сайтами. Программно-аппаратную работу сервиса берут на себя backend-разработчики. Они же отвечают за информационную безопасность (защиту от хакеров) и следят за нагрузкой на сервер (чтобы страница не «висла» из-за наплыва посетителей).
1. Обучение PHP
Базовый инструмент backend-разработчика — язык программирования PHP. Он нужен, чтобы связать видимую пользователю страницу с сервером, где хранятся какие-либо данные. Например, чтобы не выкладывать на веб-сайт по одной фотографии при помощи HTML, можно запустить скрипт, автоматически подгружающий туда условную галерею, лежащую на сервере. Язык PHP настолько сильно упрощает работу по созданию сайта, что изучать его SkillBox рекомендует и frontend-разработчикам.
2. Обучение SQL
Аббревиатура SQL расшифровывается как «структурированный язык запросов». В отличие с PHP, который нужен для связи сайта с сервером, языки SQL позволяют управлять уже самими базами данных. Сейчас существует множество подобных языков, самые распространенные из которых — это MySQL, MSSQL, PostgreSQL и прочие.
Разработчики «полного цикла» в совершенстве владеют языками, необходимыми как для frontend-, так и для backend-программирования. Они являются универсальными специалистами, хотя, очевидно, глубина их погруженности в какую-то конкретно область веб-разработки уступает осведомленности узких специалистов.
- 1С-программист, в непосредственные задачи которого входит оптимизация готовой системы 1С и ее настройка непосредственно под каждое предприятие.
- Инженер-программист, который чаще всего занят в сфере разработки программного обеспечения для автоматизации производства, он же обычно программирует бытовую технику.
- Game Developer, который специализируется на создании компьютерных игр. Геймдевелоперы заняты в полном цикле жизни видеоигры: создание, тестирование, доработка, поддержка, обновления, модификация и т.д.
- Android- и iOS-разработчики, которые занимаются созданием игр, программного обеспечения, интерфейсов и обновлений для устройств, созданных под брендом Apple, или Android-устройств.
- Системный программист, в задачи которого кроме разработки программных модулей и их интеграции входит адаптация и модификация программных продуктов под конкретную систему, исходя из ее логики и задач. Он же может заниматься разработкой баз данных и их администрированием.
- Передовым направлением в области программирования считается сфера Data Science. Она объединяет искусственный интеллект и данные, умение прогнозировать на основе статистических данных.
Если есть возможность поступить в вуз, то лучше выбрать один из ведущих: МГУ, МИФИ, ВШЭ, СПБГУ, МФТИ, МГТУ им. Баумана, МАИ, ИТМО и т.д. Речь идет, естественно, о профильных факультетах. Выпускники этих университетов лидируют в рейтинге портала Superjob, составленного по критерию уровня стартовых зарплат программистов.
Начальные навыки программирования помогут приобрести такие популярные платформы, как Сodecademy, Skillbox, GeekBrains, HTML Academy. После прохождения подобных курсов человеку становится легче понять, в сторону какого направления двигаться в профессиональном развитии.
Бесплатные курсы нередко открывают и спонсируют крупные российские компании: Mail.Ru Group, «Яндекс», «Лаборатория Касперского», Сбербанк, Тинькофф банк, «2ГИС», «Роснано», «Сколково» и HeadHunter.
Многие ведущие мировые вузы открывают курсы в онлайн. Например, курсы MIT можно найти на платформе Coursera.
Освоение программирования на 80% предполагает самостоятельную работу. Почти все необходимые материалы есть в интернете. Самое главное: мотивация. Лучше всего подходить к изучению комплексно, например, совмещая онлайн-курсы, официальную документацию к языкам, лекции, статьи, книги. При этом не следует распространяться на несколько языков сразу, лучше начать с самых простых.
Можно изучать, играя: некоторые обучающие сайты сами являются играми, например, Code Combat и CodinGame.
На GitHub можно найти огромную коллекцию бесплатных книг по программированию. Также доступен корпус электронных книг, охватывающий 24 языка программирования.
В сообществе программистов также много людей, готовых помочь следующему поколению программистов. Hack.pledge — сайт, который поможет найти наставника.
Кроме того, можно подписаться на тематические каналы в Telegram, например: канал для новичков в Python, сообщество веб- и Java Script-разработчиков, канал разработчиков Ruby и Ruby on Rails и другие.
В программировании актуален принцип «практика важнее теории». Освоить большой объем информации по языкам сразу не получится, поэтому намного лучше посвящать больше времени оттачиванию полученных умений.
Считается, что высокие инженерные или исследовательские должности без высшего образования недостижимы. Также диплом необходим тем специалистам, которые захотят работать за границей. При этом многие российские HR-специалисты говорят, что при приеме на работу смотрят, в основном, не на строку «образование» в резюме программиста, а на реальный опыт работы. Кроме того, перед собеседованием или во время него претенденту, скорее всего, предложат выполнить тестовое задание.
Какие технологии и языки сейчас востребованы и на кого учиться, чтобы не болтаться в хвосте
Спрос на ИТ-специалистов продолжает расти. По данным совместного исследования hh.ru и Яндекса с 2016-го по 2018 год доля вакансий для них от всех вакансий на hh.ru увеличилась на 5,5%.
С каждым годом появляется все больше технологий и инструментов, новые сферы, языки, специальности и должности. Нужно постоянно учиться, чтобы оставаться востребованным специалистом. В этой статье с помощью статистики и мнений экспертов мы разберемся, что востребовано сейчас и скорее всего будет востребовано в будущем. Автор статьи — Полина Ревякина, выпускница 9 потока курса «Копирайтинг с высоким бюджетом».
Востребованные специальности
Исследование Яндекса и Headhunter
В период с 2016 по 2018 год увеличился спрос на 1C-программистов (17%), frontend-разработчиков (20%), Python-разработчиков (21%), DevOps-инженеров (70%), фулстек-разработчиков (199%), дата-сайентистов (224%). Несмотря на большой рост, фулстек-разработчики и дата-сайентисты занимают последние места топа.
Первое место занимает фронтенд-разработка: это не только самое востребованное направление, но ещё и растущее. Освоить профессию можно, например, у наших друзей в Skillfactory: у них есть 6-месячный курс по обучению Frontend-разработке, после которого выпускники сразу могут работать по специальности как на фрилансе, так и в штате.
Почти не изменилась востребованность тестировщиков, системных администраторов, C++, Android, Javascript разработчиков, .NET-разработчиков.
Профессию тестировщика тоже можно получить в SkillFactory, набор проходит каждый месяц, учат новичков с нуля — так что технический бэкграунд не нужен.
Спрос на PHP-разработчиков упал на 21%, на iOS-разработчиков – на 17%, на java-разработчиков – на 13%, но PHP-разработчики занимают второе место топа, java-разработчики – третье.
Яндекс отмечает, что среди ключевых навыков больше всего вырос спрос на фронтенд-библиотеку React. Также вырос спрос на владение инструментами для бэкенда: Node.js, Spring и Django. Среди языков программирования Python стал указываться в ключевых навыках в полтора раза чаще.
Юрий Мейталов, Bilderlings: «Из самых востребованных направлений — это специалисты DevOps, так как все постепенно переходят на облачные технологии. Существует тренд на мобильную разработку, мобильные браузеры внедряют больше и больше API для работы с “железом”, что позволяет использовать нативные функции устройств. Стоит отметить и Data Scientists (эксперты по аналитическим данным), так как растет спрос на ИИ, машинное обучение и Big Data. Развиваются новые технологии — AR, блокчейн, AI — и они тоже требуют узконаправленных навыков, которых у обычных разработчиков, как правило, нет, соответственно, эти специализации также будут нужны».
Самые востребованные в США IT-специалисты
Свои исследования проводит консалтинговая фирма Robert Half, а интернет-журнал TechRepublic опросил рекрутеров. Как и в обзоре Яндекса, виден высокий спрос на Data Science, ИИ и машинное обучение, Java-, Javascript-, fullstack- и Python-разработчиков. Кроме того, востребованы специалисты по облачным вычислениям, специалисты по ИБ, специалисты по работе с данными (data scientists, data engineers) и DevOps-инженеры.
Грибова Екатерина, HR бизнес-партнер по проектам АО «ЭР-Телеком Холдинг»: «На Западе основной акцент будет в области искусственного интеллекта (AI) во всех областях, где можно оптимизировать бизнес-издержки. Особенно в части замены человека в сервисе. Если посмотреть на список вымирающих профессий в целом, то большинство из них заменит искусственный интеллект.
Второе по приоритетности направление развития – медицинские проекты – автоматизация и прогнозирование, особенно в области хронических и онкологических заболеваний. Интернет вещей – интеллектуальные системы управления и контроля, как бытовая, так и промышленная техника. Видеоаналитика – распознавание объектов любой природы (люди, продукты и прочее). Замыкает пятерку лидеров робототехника.
Уже сейчас мы видим высокие темпы развития направлений видеоаналитики и искусственного интеллекта. Также будет востребовано направление машинного обучения. Данных в переизбытке, и мы уже пришли к пониманию, что сами по себе большие данные не представляют ценности. Машинное обучение поможет реализовать потенциал больших данных максимально полно. Интернет вещей только начинает свое развитие в России, бизнес присматривается, примеряется, ищет возможности применения. Но уже сейчас очевидно, что данное направление в будущем будет только усиливаться».
Кирилл Меженцев, программист группы разработки карты рассрочки Совесть: «Как в России, так и на Западе будут нужны специалисты, работа которых тесно связана с большими данными и грамотным их использованием. Это и Data Scientist, специфика работы которых заключается в грамотном сборе данных, и Data Analyst, владеющие не только SQL, но и обладающие навыками построения сложных моделей. Благодаря грамотному анализу и планированию можно сохранить немало ресурсов, особенно в нынешней, не очень стабильной экономической ситуации. Кроме того, все прочие мировые тренды: развитие искусственного интеллекта и голосовых помощников, «умные» и автономные автомобили, интернет вещей – требуют наличия профессионалов, умеющих работать с большими данными.
Также всегда будут нужны специалисты в области Cyber Security. Растущее количество устройств, платформ, инструментов, автоматизации процессов и легкости распространения вредоносного программного обеспечения, дешевизна ресурсов для атак и, наконец, приближающееся квантовое превосходство увеличивают риск для компаний и мотивирует владельцев бизнеса инвестировать в безопасность. Компаниям практически невозможно купить коробочное решение по безопасности и быть защищенным сразу от всего. Инженеры по безопасности и угрозам будут нужны как никогда».
Востребованные языки и технологии
Опрос Stack Overflow
Stack Overflow ежегодно проводит опрос разработчиков.
В 2019 году в нем приняли участие более 100 тысяч человек. Самыми популярными технологиями оказались: JavaScript, HTML/CSS, SQL, Python, Java, Bash/Shell/PowerShell, C#, PHP, TypeScript, C++.
В 2016 году участвовали 49 тысяч человек, и топ был таким: JavaScript, SQL, Java, C#, PHP, Python, C++, C, Node.js, AngularJS.
По сравнению с 2015 годом, C# и PHP потеряли свои позиции, Node.js, C и AngularJS исчезли из топа, а HTML/CSS, Python, Bash/Shell/PowerShell и TypeScript вырвались вперед.
Исследование Github
Github ежегодно проводит исследование “The State of the Octoverse”. Топ самых популярных языков 2019 выглядит так:
Самым популярным языком уже 6 год остается JavaScript. В 2019 Python обогнал по популярности Java, C# обогнал C++, Shell обогнал C. В 2017 в топ вырвался TypeScript, и в 2018 году занял 7 место, на котором остается и сейчас.
К самым быстрорастущим языкам относятся Dart — рост в 5,3 раз, Rust и HCL — более чем в 2 раза. В топ также включены Kotlin, TypeScript, PowerShell, Apex, Python, Assembly, Go.
Огромный рост Dart можно объяснить популярностью Flutter — opensource SDK для создания мобильных приложений, который написан на Dart. Он находится на 3 месте в топе самых популярных репозиториев Github.
Индекс TIOBE
Индекс TIOBE оценивает популярность языков программирования на основе подсчёта результатов для поисковых запросов с их названиями.
В 2019 году в топ-10 входят:
За последние 2 года особенно вырос рейтинг Python.
Перспективное направление fullstack-разработки на Python можно освоить в курсе SkillFactory: курс идет 9 месяцев, за это время вы освоите 20 видов инструментов и соберете портфолио из нескольких реализованных проектов, а потом сразу сможете работать по профессии — даже если раньше никогда не сталкивались с разработкой.
Популярные фронтенд-фреймворки
Судя по опросу JetBrains (The State of Developer Ecosystem Survey), самый популярный фреймворк — React. В топ-5 также находятся Express, Vue.js, React Native, AngularJs.
Результаты опроса 2018
Wappalyzer предоставляет данные о том, на каких фреймворках работают сайты. На первом месте снова React.
По данным опроса The State of Javascript 2019 года, самые популярные фреймворки: React, Angular и Vue.js. Самый используемый — React, и именно этот фреймворк больше всего нравится разработчикам.
Невостребованные направления и языки
Perl продолжает терять позиции и сейчас достиг самой низкой популярности за всё время существования. Он появился в 1980-х как инструмент для написания скриптов под Unix, но сейчас с этим отлично справляется Python.
Objective C
Его заменил Swift — сейчас он входит в топ индекса TIOBE и продолжает расти.
В июне 2014 года Apple выпустила Swift — новый язык для создания приложений под iOS и OS X. Он должен был прийти на замену Objective-C, и так и произошло. Objective C ещё в 2016 исчез из топа популярных языков github, в этом же году упал его рейтинг в индексе TIOBE.
Старые языки
Assembly, Fortran, Cobol, Basic, Turbo Pascal — на заре программирования эти языки были популярны, но сейчас они заменены новыми и используются только для поддержки легаси-кода.
Юрий Мейталов: «Даже если какая-то технология находится на грани вымирания, чаще всего ее все равно поддерживают в дальнейшем: менять на новую всегда очень дорого, да и “зачем менять, если и эта пока работает”. На Западе, особенно в банках и корпорациях, используют программы, написанные еще 30-40 лет назад. Для их поддержки в штате держат сотрудников пенсионного возраста, потому что молодых на эти задачи найти невозможно. Например, на предыдущей работе нам требовались разработчики одного из языков программирования, который умер году в 2005-м. И таких нашлось ровно двое: один в Аргентине, другой еще где-то на краю света. Это то, о чем стоит задуматься компаниям: следить за трендами и вовремя мигрировать на более новые технологии».
Что еще уходит в прошлое
Эксперты говорят, что спрос на специалистов одной технологии или одной области падает. Перестанут быть востребованными ручные тестировщики и аналитики. Кроме того, уменьшается востребованность техник анализа сетевого трафика. Есть мнение, что уйдет неэтичная data science, основанная на злоупотреблении персональными данными.
Юрий Мейталов: «Что сейчас действительно уходит — это спрос на специалистов одной технологии или одной области, например, верстальщик веб-страниц. Сегодня активно развивается fullstack, когда один человек может работать сразу в нескольких направлениях: и фронтенд, и бэкенд, и инфраструктура».
Кирилл Меженцев: «Роль аналитиков в процессе разработки продукта забирают на себя другие члены команды. Времена, когда задача для программистов сначала разжевывалась аналитиками, уходит в прошлое. Понимание и мониторинг конкурентов, решений и сферы продукта делится между продуктоунером, который отвечает за стратегию, и программистами, которые больше не смогут эффективно и быстро писать код в отрыве от понимания продукта и бизнеса».
Артем Гавриченков, технический директор Qrator Labs: «Постепенно уменьшается востребованность всевозможных техник анализа сетевого трафика – сетевых пакетов и данных, передаваемых по сети оператора связи. Эффективность их падает, поскольку крупные корпорации, такие как Google, Microsoft, Apple предпринимают серьезные усилия для повышения уровня шифрования передаваемого трафика с целью пресечения возможностей проведения статистических вычислений и анализирования проходящего трафика. Все решения, построенные на парадигме 90-х годов о том, что передаваемый по сети трафик имеет определенную структуру, постепенно уходят в прошлое. Несмотря на то что многие операторы связи внедряют инструменты аналитики, чтобы лучше понимать интересы пользователя и предоставлять таргетированные услуги, целый ряд таких решений стареет ровно к моменту завершения своего внедрения ввиду повышения качества и количества шифрования передаваемой информации, а также использования решений типа VPN».
Василий Пимкин: «Перестанет быть востребована пиратская и партизанская Data Science. Злоупотребление персональными данными — очень плохая идея. Люди — это не «новая нефть», попытки извлечения практической пользы из обладания их данными плохи не потому, что неэтичны, а потому, что создают неконтролируемые уязвимости».
Подведем итог: что востребовано в IT в 2020 году
Востребованные сферы: fullstack, frontend, ИИ, big data, machine learning, DevOps.
Новые растущие сферы: IoT, blockchain, облачные вычисления, AR/VR.
Быстрорастущие языки: TypeScript, Python, Dart.
По-прежнему востребованные языки: Javascript, Java, PHP, C++, C#.
Умирающие языки: Perl, Objective C, старые языки (basic, cobol, fortran, assembly, Turbo Pascal).
Узнайте все о фрилансе в 5 письмах
Подпишитесь на бесплатный email-курс, который расскажет про поиск заказов, работу с клиентами и самопрезентацию фрилансера
Thank you!
You have successfully joined our subscriber list.
В какой отрасли программирования можно добиться большего успеха и лучше зарабатывать на жизнь?
В какой отрасли программирования можно добиться большего успеха и лучше зарабатывать на жизнь?
- Ответы экспертов , 2 апреля 2015 в 15:50
Этот вопрос нам прислал студент третьего курса факультета информационных технологий и полностью он звучит так: “Учат всему понемногу и теперь остро встал вопрос: на чём программировать-то? Язык программирования не столь существенен, ибо можно разобраться во всем. Конкретно интересует следующее: в какой отрасли программирования можно добиться большего успеха и лучше зарабатывать на жизнь?”
Передаём слово экспертам.
Александр Горный , директор по информационным технологиям, руководитель департамента внутренней информационной разработки Mail.Ru Group
Андрей Зырянов , руководитель научно-исследовательской лаборатории Parallels Lab в МФТИ
Конечно, есть области разработки, которые представляют определенную «модную» тему. Сейчас это мобильные приложения, облачные вычисления, Big data. Какое-то время назад были мега-популярны игры. Однако это не самая правильная постановка вопроса, потому что технологии быстро меняются. Для того чтобы была перспектива роста, нужно иметь хорошую фундаментальную подготовку — хорошего знания языка и алгоритмов недостаточно. Поэтому следует подумать на счет стажировки в какой-то компании. При этом непременно нужно сочетать работу без ущерба для учебы. Обратите внимание на кафедры отдельно взятых компаний в своем вузе. У больших компаний, как Parallels, есть свои научно-исследовательские центры в МФТИ, Бауманке, Санкт-Петербургском Академическом Университете, РосНОУ, Новосибирском Государственном университете. Там создаются условия, даются исследовательские задачи, которые моделируют для студентов реальную работу в компании.
Владимир Юнев , Technology Evangelist в Microsoft. Докладчик IT-конференции «Стачка»
Больше всего зарабатывают мобильные приложения — стартапы, которые взлетают с крутой идеей.
Кирилл Калмыков , руководитель проектов в AT Consulting
Сейчас в нашем мире очень много всего связано с Интернетом, поэтому для хорошего заработка лучше выбрать какой-нибудь язык, позволяющий создавать web-приложения. Если конкретизировать, то Ruby + JavaScript. Ruby позволяет создавать приложения очень быстро, а в нашем динамически развивающимся мире это очень важно. Если ты можешь сделать приложение за несколько дней, это очень ценится. Не советую Java или PHP потому, что идеологии первого уже устарели, а второй — язык быдлокодеров и зашел в тупик в своем развитии. Рекомендую изучать Javascript, а еще лучше CoffeeScript (в случае использования Ruby): без них никакой динамики на фронтенде не будет, а значит ваше приложение будет уныло. Не советую учиться на Flash’еров — эта технология умирает.
Обязательно нужно учиться пользоваться фреймворками: для Ruby — это Ruby on Rails, для JavaScript — Angular.js или Ember.js (но ни в коем случае Backbone.js или Spring.js). Фреймворки позволяют лепить приложения не за дни, а за часы!
Вы точно не останетесь без работы и будете зарабатывать достаточно (чтобы, например, обеспечить семью), если начнете развиваться в этом направлении.
Еще одна, на мой взгляд, прибыльная отрасль — мобильные приложения. Думаю, не надо объяснять почему: смартфоны есть даже у бомжей. Но тут есть нюанс: если вы собираетесь писать сами какие-то приложения, то, скорее всего, много на этом не заработаете — для приложений всегда нужна качественная идея. Но тем не менее вы всегда сможете устроиться на работу и зарабатывать.
Также хочу посоветовать сосредоточится на разработке под Android. Устройств на этой платформе очень много, а Apple в последнее время не внушает перспектив для разработчиков под iOS. Но это мое субъективное мнение.
Вы точно не останетесь без работы, если будете двигаться в этом направлении, однако размер заработка будет зависеть от вас.
Также я советую обратить внимание на DevOps. Такие специалисты действительно много зарабатывают, но в институтах этому не учат. Подробно рассказывать о методологии не буду: если интересно, почитайте сами.
А теперь в какую сторону смотреть не советую:
- Повторюсь, это языки с устаревшей идеологией: Java, PHP и т. д. Работу вы найдете, но рано или поздно поймете, что нужно что-то менять. Так было со мной в 2007 г., когда я перешел с PHP на Ruby.
- Системные языки типа C или низкоуровневые языки. Причина проста: мало предложений, но если они есть, то платят там хорошо. Правда, я давно не мониторил тот рынок, могу ошибаться.
- Сверхновые модные языки: Erlang, Scala и т. д. Пока непонятно, займут ли они какую-нибудь свою нишу или нет. Представьте, что вы потратите силы на их изучение, а они уйдут.