Исследование переполнения стека является одним из наиболее полных опросов, проводимых каждый год с 2011 года. Прежде чем мы узнаем больше, есть…
Обычные предостережения
Сорок миллионов человек посещают Stack Overflow каждый месяц, и, по оценкам, 42% являются профессиональными разработчиками или студентами университетов. Опрос является подробным и был заполнен более чем 64 000 респондентов ( 51 392 были пригодны для использования ). Это впечатляющий размер выборки, но будьте осторожны, когда делаете предположения, требуя следующего повышения зарплаты! …
Мировые результаты
Переполнение стека используется во всем мире, но будет сильно смещено в сторону западных англоговорящих стран. Пропорции страны-респондента, как правило, сопоставимы с демографией пользователей Stack Overflow:
страна | доля обследования |
---|---|
НАС | 22,4% |
Индия | 10,1% |
Великобритания | 8,6% |
Германия | 8,1% |
Австралия | 1,8% |
Почти 75% белых или европейского происхождения . 83% получили квалификацию на уровне университета, а 74% — по дисциплине, связанной с ИТ .
Пропорционально мало разработчиков пришли из Африки, Азии и Южной Америки. На Китай приходится 0,5%, а на Россию — 1,7%.
Осведомленность разработчиков
Опрос мог быть выполнен только теми, кто использовал переполнение стека, знал о существовании опроса, понимал вопросы и имел время для его завершения.
Спектр удовлетворенности
Обследования привлекают тех, кто находится на обоих концах спектра удовлетворенности:
- вы готовы поделиться своим опытом, когда вы довольны своей работой, зарплатой и навыками
- Вы готовы жаловаться на свою компанию, вознаграждение и условия работы, когда вы недовольны.
Более 80% людей, которые думают, что «жизнь может быть лучше, но может быть и хуже», могут быть менее склонны комментировать.
Региональные различия в заработной плате
Обследование сопоставляет зарплаты на основе суммы в долларах США. В США, как правило, лучше платят, чем в других странах, что может исказить результаты. Однако зарплаты не пересматриваются в зависимости от налогообложения и покупательной способности в стране работы. Например, разработчик может бороться за 30 000 долларов в год в США, но жить в Индии комфортно.
Прошлые опросы не указывают на будущие тенденции
Результаты показывают, что разработчики использовали, и их общий уровень удовлетворенности. Их мнения со временем изменятся.
Профили разработчиков
В предыдущих опросах запрашивались названия профессий, что может быть немного двусмысленным. В 2017 году большинство респондентов назвали себя веб-разработчиками :
роль | доля |
---|---|
Веб-разработчик | 72,6% |
Настольный разработчик | 28,9% |
Мобильный разработчик | 23,0% |
63,7% веб-разработчиков утверждают, что имеют опыт работы с полным стеком . Это кажется высоким, но трудно избежать переключения дисциплин …
- фоновый разработчик должен будет написать HTML в какой-то момент, даже если это чисто для целей ведения журналов
- Фронт-разработчик будет вовлечен в работу бэк-энда, если он делает Ajax-вызовы или оптимизирует производительность сервера.
Несмотря на это, 24,4% утверждают, что являются только бэк-эндами и 11,9% — только бэк-эндами.
70,3% заняты полный рабочий день и 10,2% являются внештатными сотрудниками. Только 6,7% респондентов из США являются внештатными сотрудниками, что заметно ниже, чем в Канаде, Великобритании и Германии. Почти половина работает в программном обеспечении или в секторе, связанном с Интернетом, с числом сотрудников менее ста .
Уровни опыта варьируются, но почти 92% респондентов занимались программированием более двух лет, а 80% делают это профессионально . 17,2% разрабатывали код более 20 лет.
Stack Overflow рассеивает заблуждение о том, что разработчики начинают программировать в детстве. Существует широкий диапазон уровней опыта, и вы можете начать в любой момент своей жизни, но большинство знакомых мне разработчиков были укушены ошибкой в программировании в ранние годы.
32% разработчиков заявили, что формальное образование не имело значения для их карьерного успеха. 90% считают себя самоучками . Я удивлен, что это не было выше; Вы можете только научиться программировать, делая это. Половина из нас также будет сокращать код в наше время .
88,6% респондентов назвали себя мужчинами . Участие женщин возросло на несколько пунктов в США и Европе, но разнообразие отрасли остается проблемой для 89% людей .
технологии
JavaScript остается наиболее используемым языком программирования :
язык | использование |
---|---|
JavaScript | 62,5% |
SQL | 51,2% |
Джава | 39,7% |
C # | 34,1% |
питон | 32,0% |
PHP | 28,1% |
C ++ | 22,3% |
С | 19,0% |
Машинопись | 9,5% |
Рубин | 9,1% |
JavaScript и SQL доминируют, потому что они необходимы в большинстве веб-проектов. Однако только 60% чувствовали любовь к JavaScript по сравнению с 73% для Rust.
Java и Python остаются популярными, потому что они широко используются в образовании. Python также является наиболее востребованным языком (20,6%).
PHP кажется удивительно низким, учитывая его преобладание в сети. Я ожидаю, что он будет выше C #, особенно если смотреть на языки для веб-разработчиков ? Возможно, разработчикам PHP требуется меньше помощи от переполнения стека, потому что проблемы легче решать, а помощь повсеместна ?!
Самый страшный язык — это древний Visual Basic 6 (88,3%), за которым следуют Visual Basic для приложений (88,4%) и VisualBasic.NET (77,2%). Как ни странно, 79,2% разработчиков боятся CoffeeScript? Он компилируется непосредственно в JavaScript, поэтому лишь немногие разработчики должны его использовать.
Языковой интерес растет и падает со временем . JavaScript, Node.js и Python являются единственными языками в первой десятке по восходящей тенденции. Сделайте из этого что хочешь …
Фреймворки, библиотеки и среды выполнения
технологии | использование |
---|---|
Node.js | 47,1% |
AngularJS | 44,3% |
.NET Core | 33,4% |
реагировать | 19,5% |
Кордова (Node.js) | 11,0% |
Странно, нет упоминания о JQuery? Возможно, это был не вариант.
Несмотря на свою динамику, React значительно ниже, чем сообщалось в недавнем опросе Эшли Нолан . 66,9% разработчиков любят React, и это третья по популярности технология. Еще больше разработчиков хотят Angular?
Базы данных
Неудивительно, что MySQL выходит на первое место :
база данных | использование |
---|---|
MySQL | 55,6% |
SQL Server | 38,6% |
SQLite | 26,6% |
PostgreSQL | 26,5% |
MongoDB | 21,0% |
На диаграмме преобладают базы данных SQL. Тем не менее, они также самые страшные ! Разработчики предпочитают базы данных NoSQL, такие как Redis, MongoDB и Cassandra, и стремятся получить эти навыки.
Среды разработки
Десятка лучших редакторов кода для веб-разработчиков :
редактор | использование |
---|---|
Visual Studio | 38,8% |
Notepad ++ | 34,3% |
Возвышенный текст | 31,4% |
напор | 27,1% |
Visual Studio Code | 24,0% |
IntelliJ | 23,0% |
Атом | 20,0% |
Затмение | 20,0% |
Android Studio | 14,0% |
PhpStorm | 11,7% |
Популярность коммерческой версии Visual Studio заставляет меня заключить, что в Stack Overflow относительно велика доля разработчиков .NET. Это также объясняет, почему C # выше PHP.
Поздравляем Блокнот Дона Хо ++ . Редактор доступен только для Windows, но многие разработчики Linux запускают его через Wine .
Здорово, что у нас так много редакторов, и многие из них бесплатны или имеют открытый исходный код. Я недавно перешел на VS Code после нескольких лет работы с Atom , нескольких месяцев над Sublime Text и десятилетия Notepad ++, которое я до сих пор использую для быстрого и грязного редактирования.
Контроль версий
Бесспорным чемпионом является Git, 69,2% респондентов используют его для проектов. Некогда могущественный Subversion упал до 9,1%.
53% проверяют свой код несколько раз в день и счастливы за это . 40% ждут, пока не будет выполнено большее или несколько функций.
6% используют процесс резервного копирования вручную, в то время как каждый двадцатый не использует какую-либо систему контроля версий или регистрируется всего несколько раз в год. Они будут учиться трудным путем!
Методология разработки
Дни «кода до его завершения» давно прошли. Пять лучших методик разработки :
метод | использование |
---|---|
проворный | 76,9% |
Scrum | 65,2% |
пара | 42,8% |
Kanban | 34,8% |
Водопад | 26,9% |
Около трети разработчиков хотят немедленно отгружать . Еще одна треть считает, что сначала ее следует оптимизировать, а оставшаяся треть выносит собственное мнение в зависимости от того, насколько удачным или плохим был проект!
Конечно, все методологии рушатся, как только ваш начальник сочтет это необходимым.
Карьера
Несмотря на рост веб-рекрутинга и социальных сетей, удивительные 74% разработчиков находят работу с помощью традиционных методов, таких как рекрутеры и коллеги. Человеческий контакт остается важным фактором.
Пять главных приоритетов оценки работы:
- возможности для профессионального развития
- компенсация и льготы
- офисная среда
- технологии
- время в пути
Если вы ищите новых разработчиков, они предпочитают :
выгода | предпочитаемый |
---|---|
отпуск / выходные | 57,0% |
дистанционные настройки | 53,3% |
польза здоровью | 47,1% |
ожидаемые часы работы | 44,3% |
оборудование | 40,1% |
Однако это зависит от страны . Страны с более низкими зарплатами, такие как Бразилия и Мексика, придают большее значение заработной плате, чем пособиям.
Если вы хотите получить следующую работу, вот ключевые навыки, которые ваши коллеги-разработчики считают важными :
- связь
- послужной список достижения цели
- знание алгоритмов и структур данных
- опыт работы с конкретными технологиями
- опыт работы с конкретными инструментами управления проектами
Оценка эффективности
Я надеюсь, что ваша компания не оценивает вашу эффективность по количеству отработанных часов, строк кода или ошибок. Пять лучших предпочтительных показателей эффективности :
метрический | предпочитаемый |
---|---|
удовлетворенность клиентов | 71,7% |
вовремя / в бюджет | 66,4% |
рейтинг сверстников | 54,8% |
оценка производительности продукта | 41,4% |
рейтинг менеджера | 35,7% |
Удовлетворение от работы
Когда их попросили оценить их работу от 0 (не удовлетворен) до 10 (полностью удовлетворен), почти половина оценила их на восемь или более . Уровень удовлетворенности ниже для тех, кто работает в сфере финансов, розничной торговли, оптовой торговли или логистики, но я подозреваю, что развитие хорошо идет против других отраслей.
Несмотря на то, что они счастливы, только 25% хотят остаться на своих постах . 13% активно ищут в другом месте, и 59% рассмотрят возможность перехода на другую работу и тратят до пяти часов в неделю на просмотр рынка . Те, кто занимается машинным обучением и анализом данных, стремятся идти дальше , несмотря на самые высокие зарплаты …
Оплата труда
Самые большие деньги зарабатываются учеными, работающими в США, которые получают более 100 000 долларов в год .
Сложно сравнивать, потому что заработная плата во всем мире значительно варьируется. Тем не менее, большинство из нас получают разумную заработную плату по сравнению с другими отраслями. Вы можете ожидать начальную зарплату в размере 33 000 долларов, а затем повышение заработной платы на 5 000 долларов за каждый дополнительный год работы . Тем не менее, 57% считают, что им недоплачивают .
Язык разработки оказывает влияние на заработную плату , так как разработчики PHP зарабатывают примерно половину того, что могут ожидать разработчики Clojure. Однако будьте осторожны с этими сравнениями:
- Clojure рабочие места редки.
- По всему миру работают многие миллионы PHP-разработчиков, что приводит к снижению средних показателей. 62% считают себя недоплаченными , что мало отличается от других технологий.
Удаленная работа
Более трети разработчиков могут работать удаленно из дома несколько дней в месяц. Почти пятая часть может проводить как минимум половину своего времени, работая удаленно, но 32% постоянно привязаны к своему офисному столу.
Полная занятость удаленной работы значительно варьируется по всему миру . Это удивительно низко в таких странах, как Швеция, Швейцария и Нидерланды, которые часто считаются самыми счастливыми местами для жизни.
Если вы отчаянно пытаетесь избежать ежедневных поездок и кодирования в нижнем белье, переезжайте в Россию (22,8%) и станьте графическим дизайнером (22,3%) .
Моментальные Разные Вопросы
Вкладки или пробелы ? 43% используют вкладки, 38% используют пробелы. 19% используют их взаимозаменяемо и не заботятся так или иначе. Я полагаю, у них есть более важные вопросы, о которых нужно беспокоиться?
Сражения велись за правильное произношение «GIF» . Только 26% используют предпочтение создателя «jiff» с мягким «g». Почти 66% (включая меня) предпочитают жесткий «г» как в «подарке». Еще 6% предпочитают произносить «gee-eye-eff», в то время как 2% используют другое странное и замечательное произношение. «Джефф»?
60% разработчиков пишут музыку , а 24% предпочитают гробовое молчание. 7% хотят окружающих звуков, таких как китовые песни, лесные звуки или визг на доске.
Почти 54% разработчиков рады, что другие используют шумную клавиатуру . Я собираюсь прикрепить усилитель к моему.
Стоит просмотреть обзор переполнения стека , который предоставляет больше деталей и прост в навигации. Но, пожалуйста, помните: 96,4% всей статистики неверны.