Экосистема разработки в 2021 году

В этом отчете представлены обобщенные результаты пятого ежегодного опроса, посвященного экосистеме разработки, который провела компания JetBrains. 31 743 разработчика из 183 стран и регионов помогли нам составить общую картину сообщества разработчиков.

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


Основные выводы

Самый популярный язык — JavaScript.

Python популярнее Java с точки зрения общей распространенности, а Java чаще, чем Python, упоминается в качестве основного языка.

5 языков, которые разработчики чаще всего планируют изучать или на которые хотят перейти, — Go, Kotlin, TypeScript, Python и Rust.

5 языков, которые разработчики чаще всего изучали в 2021 году, — JavaScript, Python, TypeScript, Java и Go.

Популярность Ruby, Objective-C и Scala за последние 5 лет упала.

5 языков, популярность которых растет быстрее всего, — Python, TypeScript, Kotlin, SQL и Go.

Большинство респондентов (71%) занимаются разработкой веб-бэкенда.

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

Пользовались в течение последних 12 месяцев
Планируют освоить или начать активно использовать
JavaScript
69% / 4%
HTML / CSS
60% / 2%
SQL
54% / 3%
Python
52% / 8%
Java
49% / 4%
Языки сценариев командной оболочки
37% / 2%
PHP
32% / 2%
TypeScript
29% / 9%
C++
23% / 4%
C#
21% / 4%
C
19% / 1%
Go
17% / 11%
Kotlin
14% / 9%
Dart
8% / 4%
GraphQL
8% / 4%
Swift
7% / 5%
Ruby
6% / 3%
Rust
6% / 7%
Groovy
4% / 0%
MATLAB
4% / 1%
R
4% / 2%
Visual Basic
4% / 0%
Язык ассемблера
3% / 1%
Lua
3% / 0%
Objective-C
3% / 1%
Scala
3% / 2%
Haskell
2% / 1%
Perl
2% / 0%
Clojure / ClojureScript
1% / 0%
Delphi
1% / 0%
F#
1% / 1%
Julia
1% / 1%
Другое
4% / 3%

Какими языками программирования вы пользовались за последние 12 месяцев?

Популярность языков программирования за последние 5 лет.

Line chart: Popularity of programming languages over the last 5 years

Обратите внимание, что за несколько лет, в течение которых проводится опрос, его методология претерпела некоторые изменения. В 2021 году мы расширили географию опроса, и в результате изменились доли некоторых языков. Например, доля PHP в новых регионах на 3 процента выше, а доли Python и Java — несколько ниже, чем в странах, участвовавших в опросе первоначально.

Какие языки программирования вы могли бы назвать основными в своей работе?

Выберите не более 3 языков

39%32%29%24%22%18%13%12%11% 8% 7%JavaScriptJavaPythonHTML / CSSPHPSQLTypeScriptC#C++GoKotlin
Все результаты

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

Распределение по основным языкам

на
с
Значение
-
JavaScriptJavaPythonPHPSQLTypeScriptC#C++GoKotlin
46%50%45%49%49%53%52%46%61%59%Не планирую
13%11%14%13%12%13%11%10%0%11%Go
9%13%10%8%11%8%9%11%7%-Kotlin
14%8%9%12%9%-8%7%5%6%TypeScript
10%8%0%11%11%8%9%6%2%6%Python
7%6%9%6%7%12%7%10%17%8%Rust
6%6%6%6%6%6%6%6%4%8%Swift
7%4%5%5%5%7%4%3%4%3%GraphQL
5%4%4%5%4%6%4%3%4%7%Dart
-5%7%2%4%0%4%8%2%3%JavaScript
4%-5%4%4%3%4%6%2%1%Java
4%4%5%3%3%3%-7%1%2%C#
3%4%6%3%3%3%4%0%3%2%C++
3%3%5%1%-2%2%5%1%1%SQL
3%2%3%4%2%2%2%3%1%2%Ruby
14%17%22%11%17%13%16%25%12%12%Другое
00.61
JavaScript
Java
Python
PHP
SQL
TypeScript
C#
C++
Go
Kotlin
на
с
Значение
-
Не планируюGoKotlinTypeScriptPythonRustSwiftGraphQLDartJavaScriptJavaC#C++SQLRubyДругое
00.61

В каких операционных системах вы занимаетесь разработкой?

61%Windows
47%Linux
44%macOS
1%Другое

За последние 5 лет предпочтения разработчиков в части операционных систем не изменились.

Используете ли вы Windows Subsystem for Linux (WSL) для локальной разработки?

65%21%17%14% 2%Не используюЯ работаю с инструментами, установленными в WSLЯ работаю с проектом и инструментами, размещенными в WSLЯ запускаю свое приложение в WSLДругое

Этот вопрос был задан всем респондентам, использующим операционную систему Windows.

Под какие платформы вы разрабатываете приложения?

71%58%32%30%26%17% 7% 4% 2% 1% 1%Веб (бэкенд)Веб (фронтенд)Десктопные приложенияMobileСервер / инфраструктураОблачныеИнтернет вещей / встраиваемые системыЯ ничего не разрабатываюWebAssemblyИгровые приставки (Xbox, PlayStation, Nintendo и т. п.)Другое

Какие типы программного обеспечения вы разрабатываете (включая приложения на любом языке программирования для рабочих или личных нужд)?

61%39%29%24%21%19%16%16%14%11% 9%СайтыУтилитыБаза данных / хранилище данныхСистемное ПОБиблиотеки/фреймворкиIT-инфраструктураФинансыData Science / бизнес-аналитика / машинное обучениеИнструменты для программированияРазвлекательное ПОИгры
Все результаты

Чем вы занимаетесь?

93%52%44%39%38%27%20%14%13%12%12%ПрограммированиеКод-ревьюТестированиеРазвертываниеПроектирование системРазработка инфраструктуры / DevOpsСистемное администрированиеАнализ данныхUX/UI-дизайн/исследованияНаучные исследованияТехрайтинг
Все результаты

Программное обеспечение какого типа вы разрабатываете?

По основному языку

Строка
Столбец
Значение
-
JavaScriptJavaPythonPHPSQLTypeScriptC#C++GoKotlin
80%56%53%85%66%76%59%39%57%43%Сайты
40%37%45%39%38%41%45%44%43%46%Утилиты (небольшие приложения для узких задач)
30%29%31%36%47%27%37%25%28%21%База данных / хранилище данных
23%27%24%24%28%23%29%28%31%22%Системное ПО
20%21%20%21%21%30%26%26%31%30%Библиотеки/фреймворки
16%19%21%19%22%19%17%14%37%15%IT-инфраструктура
17%20%13%16%23%20%20%9%16%23%Финансы
12%15%31%11%19%12%14%22%13%12%Data Science / бизнес-аналитика / машинное обучение
13%13%17%14%12%17%15%20%20%16%Инструменты для программирования
12%12%11%11%8%11%12%16%11%20%Развлекательное ПО
7%9%10%6%5%8%20%21%6%10%Игры
5%6%10%5%5%6%7%10%7%7%Домашняя автоматизация
5%6%9%5%6%5%6%9%10%5%Безопасность
3%4%6%2%3%3%6%12%4%4%Производство аппаратного обеспечения
2%2%3%1%1%2%6%6%1%3%Дополненная/виртуальная реальность
2%2%3%2%2%3%2%4%4%2%Блокчейн
5%5%5%5%5%7%6%6%5%10%Другое
00.85
JavaScript
Java
Python
PHP
SQL
TypeScript
C#
C++
Go
Kotlin
Строка
Столбец
Значение
-
СайтыУтилиты (небольшие приложения для узких задач)База данных / хранилище данныхСистемное ПОБиблиотеки/фреймворкиIT-инфраструктураФинансыData Science / бизнес-аналитика / машинное обучениеИнструменты для программированияРазвлекательное ПОИгрыДомашняя автоматизацияБезопасностьПроизводство аппаратного обеспеченияДополненная/виртуальная реальностьБлокчейнДругое
00.85

Под какие платформы вы разрабатываете приложения?

По основному языку

Строка
Столбец
Значение
-
Десктопные приложенияMobileВеб (бэкенд)Веб (фронтенд)КонсолиСервер / инфраструктураИнтернет вещей / встраиваемые системыWebAssemblyОблачные
61%37%35%31%5%32%35%9%8%Язык ассемблера
51%28%39%33%2%27%26%2%12%C
56%35%76%61%4%28%8%5%22%C#
57%32%45%36%4%27%17%3%13%C++
15%20%87%57%0%42%4%6%40%Clojure / ClojureScript
42%15%35%25%-38%4%-26%COBOL
26%37%72%72%-15%---CoffeeScript
60%51%77%73%1%20%1%-5%Crystal
28%92%64%65%1%17%8%1%13%Dart
83%33%61%52%0%24%7%4%11%Delphi
18%21%95%75%-38%5%-30%Elixir
60%16%83%54%-39%11%7%42%F#
21%20%86%47%1%54%8%3%32%Go
--46%54%-----GraphQL
22%23%79%46%0%46%3%1%38%Groovy
59%35%62%51%-23%10%14%18%Haskell
31%36%75%88%1%16%5%2%12%HTML / CSS
30%31%77%50%1%28%7%1%18%Java
28%35%82%86%1%21%5%1%16%JavaScript
26%2%65%19%-46%11%1%34%Julia
21%63%62%43%0%25%6%2%17%Kotlin
39%44%52%34%13%39%11%2%2%Lua
55%18%17%16%1%15%32%1%14%MATLAB
25%94%27%41%0%14%7%3%7%Objective-C
36%29%78%52%-50%14%1%21%Perl
24%31%95%80%0%25%5%1%14%PHP
39%25%66%48%1%32%11%1%22%Python
48%24%36%32%0%24%18%3%21%R
18%27%88%69%1%35%4%1%20%Ruby
45%21%72%46%2%54%17%17%29%Rust
19%10%82%40%0%52%6%2%36%Scala
29%16%69%42%1%58%10%2%34%Языки сценариев командной оболочки
31%24%86%60%0%31%5%1%20%SQL
32%90%46%45%2%16%9%2%12%Swift
27%37%80%89%0%26%6%4%22%TypeScript
61%26%43%35%0%19%8%1%7%Visual Basic
00.95
Десктопные приложения
Mobile
Веб (бэкенд)
Веб (фронтенд)
Консоли
Сервер / инфраструктура
Интернет вещей / встраиваемые системы
WebAssembly
Облачные
Строка
Столбец
Значение
-
Язык ассемблераCC#C++Clojure / ClojureScriptCOBOLCoffeeScriptCrystalDartDelphiElixirF#GoGraphQLGroovyHaskellHTML / CSSJavaJavaScriptJuliaKotlinLuaMATLABObjective-CPerlPHPPythonRRubyRustScalaЯзыки сценариев командной оболочкиSQLSwiftTypeScriptVisual Basic
00.95

Популярность языков программирования

По региону

Строка
Столбец
Значение
-
JavaScriptJavaPythonPHPSQLTypeScriptC#C++GoKotlin
47%25%25%33%18%10%13%9%4%5%Африка, Ближний Восток, Центральная Азия
50%29%21%19%24%13%16%5%5%5%Аргентина
36%26%18%15%17%13%16%7%3%5%Беларусь
50%28%25%24%24%14%13%5%3%8%Бразилия
41%31%36%19%14%16%15%13%5%6%Канада
32%47%30%9%15%11%8%13%15%6%Китай
36%24%22%28%19%18%15%10%5%6%Восточная Европа, Балканы и Кавказ
47%21%20%43%17%18%8%7%5%4%Франция
32%33%23%32%15%19%15%11%7%8%Германия
40%38%44%12%16%9%5%23%5%7%Индия
28%25%29%21%18%18%13%8%10%9%Япония
50%30%30%23%24%14%16%5%4%7%Латинская Америка
52%35%29%23%25%12%18%7%2%7%Мексика
37%24%24%34%18%17%18%8%4%7%Северная Европа и Бенилюкс
43%28%23%30%17%17%13%9%5%6%Другие страны Европы
42%27%27%26%18%13%13%8%8%8%Другие страны Юго-Восточной Азии и Океании
28%18%23%19%23%13%15%13%9%8%Российская Федерация
40%53%31%5%21%10%6%11%4%10%Южная Корея
43%34%24%31%23%15%11%4%5%7%Испания
37%23%25%21%20%6%34%7%4%6%Турция
38%20%18%22%21%14%15%6%6%4%Украина
41%22%27%33%18%16%16%8%6%4%Великобритания
40%27%35%27%21%13%13%12%7%6%США
00.53
JavaScript
Java
Python
PHP
SQL
TypeScript
C#
C++
Go
Kotlin
Строка
Столбец
Значение
-
Африка, Ближний Восток, Центральная АзияАргентинаБеларусьБразилияКанадаКитайВосточная Европа, Балканы и КавказФранцияГерманияИндияЯпонияЛатинская АмерикаМексикаСеверная Европа и БенилюксДругие страны ЕвропыДругие страны Юго-Восточной Азии и ОкеанииРоссийская ФедерацияЮжная КореяИспанияТурцияУкраинаВеликобританияСША
00.53

Некоторые языки, популярные в отдельных регионах, не указаны в таблице: например, Delphi — основной язык 3% разработчиков в Бразилии, а Ruby (9%), Swift (6%) и Scala (4%) популярны в Японии.

Гендер и разработка

Чем вы занимаетесь?

По гендеру

94%53%44%40%40%28%20%13%13%12%12%ПрограммированиеКод-ревьюТестированиеРазвертываниеПроектирование системРазработка инфраструктуры / DevOpsСистемное администрированиеАнализ данныхUX/UI-дизайн/исследованияНаучные исследованияОбучение программированию
Все результаты

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

Женщины чаще, чем мужчины, занимаются анализом данных, машинным обучением UX/UI-дизайном и исследованиями. В то же время женщины реже занимаются разработкой инфраструктуры, DevOps, системным администрированием или развертыванием.

Распределение по гендерам

По региону

Мужской
Женский
Другое
85%13%2%87%12%1%89%8%3%89%10%1%92%6%2%92%5%3%92%7%1%92%6%1%93%6%1%93%5%1%93%4%3%94%5%1%94%5%1%94%6%1%94%5%1%94%4%2%94%5%1%94%4%2%94%5%1%94%3%3%94%4%2%95%2%3%95%3%2%Южная КореяБеларусьКанадаАргентинаДругие страны Юго-Восточной Азии и ОкеанииСШАРоссийская ФедерацияУкраинаИспанияТурцияВеликобританияВосточная Европа, Балканы и КавказАфрика, Ближний Восток, Центральная АзияЛатинская АмерикаИндияСеверная Европа и БенилюксБразилияФранцияМексикаГерманияДругие страны ЕвропыКитайЯпония

Опыт профессионального программирования

По гендеру

на
с
Значение
-
МужскойЖенскийДругое
81%15%4%У меня нет профессионального опыта в программировании
88%10%3%Менее 1 года
92%6%2%1–2 года
94%4%2%3–5 лет
96%2%2%6–10 лет
96%2%2%11–16 лет
97%2%2%Больше 16 лет
00.97
Мужской
Женский
Другое
на
с
Значение
-
У меня нет профессионального опыта в программированииМенее 1 года1–2 года3–5 лет6–10 лет11–16 летБольше 16 лет
00.97

Разнообразие в IT-отрасли выше у молодых разработчиков.

Под какие операционные системы вы ведете разработку?

86%Windows
58%Linux
39%macOS
9%Другое

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

Языки

Какой язык вы используете на работе?

78%20% 9% 6% 5% 5% 4% 4% 4% 3% 2%АнглийскийКитайскийЯпонскийИспанскийРусскийХиндиНемецкийФранцузскийПортугальскийКорейскийАрабский
Все результаты

Доля английского как рабочего языка по регионам

100%100% 99% 96% 91% 91% 90% 90% 89% 89% 89%ВеликобританияСШАИндияКанадаАфрика, Ближний Восток, Центральная АзияТурцияВосточная Европа, Балканы и КавказУкраинаСеверная Европа и БенилюксДругие страны Юго-Восточной Азии и ОкеанииГермания
Все результаты

Дома или с друзьями вы говорите на том же языке, что и на работе?

Да
Нет
86%14%

На каких языках вы говорите с семьей и друзьями?

17%14%13% 9% 7% 4% 4% 4% 3% 3% 3%АнглийскийКитайскийХиндиИспанскийРусскийПортугальскийАрабскийФранцузскийНемецкийТамильскийБенгальский
Все результаты

Миграция

Доля иммигрантов

29%23%22%19%18%17%16%12%12% 9% 8%КанадаВеликобританияСеверная Европа и БенилюксДругие страны ЕвропыДругие страны Юго-Восточной Азии и ОкеанииСШАГерманияИспанияЯпонияЛатинская АмерикаРоссийская Федерация
Все результаты

Доля иммигрантов = число работающих в регионе людей, которые родились в другом регионе / общее количество работающих в регионе людей

Доля эмигрантов

29%20%18%14%14%13%12%12%11%11%10%УкраинаБеларусьВосточная Европа, Балканы и КавказЛатинская АмерикаТурцияВеликобританияКанадаРоссийская ФедерацияДругие страны ЕвропыФранцияАфрика, Ближний Восток, Центральная Азия
Все результаты

Доля эмигрантов = количество людей, родившихся в одной стране, но работающих в другой / общее количество людей, родившихся в этой стране

Зарплата

Медианное значение годовой зарплаты в долларах США за вычетом налогов, без учета бонусов

По регионам

102000 54000 54000 33000 33000 33000 27000 27000 27000 27000 27000СШАКанадаВеликобританияГерманияЯпонияСеверная Европа и БенилюксФранцияДругие страны ЕвропыДругие страны Юго-Восточной Азии и ОкеанииЮжная КореяУкраина
Все результаты

Зарплата по должностям

5400054000330003300033000330002700027000270002700027000АрхитекторДиректор по ИТ/генеральный/технический директорDevOps-инженер / разработчик инфраструктурыАналитик / инженер данных / Data ScientistРуководитель командыМенеджер продуктаРазработчик/программистАдминистратор баз данныхИнженер по тестированиюТехническая поддержкаТехнический писатель
Все результаты

Предлагаем ознакомиться с другими отчетами о крупных исследованиях JetBrains

Подберите себе инструмент

Выберите свою технологию

Выбрать

Скачайте нужный инструмент

Выбрать
Попробовать бесплатно

Спасибо, что уделили время!

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

Присоединяйтесь к JetBrains Tech Insights Lab

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

Если у вас есть вопросы или пожелания, свяжитесь с нами по адресу surveys@jetbrains.com.