С# в 2018 году: спрос, зарплаты и тренды
Если верить TIOBE, уже пятнадцать лет С# входит в топ-10 популярных языков программирования. По итогам октября 2018 он занимает шестую строчку — выше PHP и JavaScript. Неплохо для совсем юного языка, который появился в 2000 году.
В другом рейтинге — PYPL (PopularitY of Programming Language) — «решетка» на четвертом месте, вслед за JS, Java и Python. Правда, PYPL отражает популярность C# не столько у разработчиков, сколько среди обучающихся. Основа для сравнения здесь — как часто люди ищут в Google учебные материалы по языкам.
Востребованность C# закономерна — он реализует многие преимущества С++ и Java, но по простоте сравним с Visual Basic. C помощью C# можно создавать игры на движке № 1 в мире — Unity, мобильные и веб-приложения, десктопные Windows-программы на каждый день и большие корпоративные продукты, в том числе банковские.
Около 34 % популярных бесплатных мобильных игр сделаны на Unity. На нем же работает большинство приложений виртуальной и дополненной реальности. Доля юнити-проектов среди игр для VR-шлемов и очков Samsung Gear достигает 90 %, для оборудования Oculus Rift — 53 %.
За что любят С#
Дело не только в сферах применения. Чтобы язык был по-настоящему популярным, он должен нравиться программистам. В 2018 году более ста тысяч пользователей Stack Overflow назвали свои любимые ЯП.
Большинство участников опроса (90 %) — профессиональные разработчики с опытом более трех лет. С# покорил сердца 60 % респондентов и занял восьмое место в десятке лидеров. По числу проектов на StackOverflow этот язык — третий.
Среди преимуществ C#:
- простые паттерны асинхронного программирования;
- работа приложений всюду, где есть .NET Framework — без перекомпиляции;
- мобильная разработка под Android, iOS и Windows Phone с Хаmarin;
- автоматическое управление памятью, сборщик мусора;
- написание запросов c SQL-подобным синтаксисом внутри кода C# (проект LINQ);
- удобные фреймворки для создания MVC-приложений и работы с RESTful API;
- хороший базовый набор библиотек;
- статическая типизация — упрощает выявление ошибок.
Язык живет, но что с ним происходит? Узнаем, как он развивается и какие тенденции наметились в его сообществе.
Зарплаты программистов C#
В зарплатных рейтингах SuperJob за 2018 год позиции «Программист С#» и «.NET-программист» регулярно появляются в списке лучших IT-вакансий месяца по разным регионам РФ. Для примера возьмем заманчивые предложения за август-октябрь 2018:
Месяц
|
Город
|
Вакансия
|
Предлагаемая зарплата
|
Август
|
Санкт-Петербург
|
Разработчик C#
|
150 000 рублей + релокационный пакет с компенсацией съема жилья |
Август
|
Новосибирск |
.NET-разработчик (senior) |
от 130 000 |
Август
|
Екатеринбург |
Программист .NET |
50 000–100 000 |
Сентябрь
|
Екатеринбург
|
Программист .NET (C#, Senior) |
80 000–135 000 |
Сентябрь
|
Ростов-на-Дону |
Программист ASP.NET |
100 000–120 000 |
Октябрь
|
Челябинск |
Программист С# |
60 000–150 000 |
По оценке кадрового агентства «Каус», зарплаты программиста С# (.NET) в 2018 году:
- минимальный уровень — 77 000–133 000 рублей;
- средний — 133 000–180 000;
- повышенный — 180 000–250 000.
При этом аналитики отмечают, что вакансии с минимальными зарплатами часто открываются, но «как правило, остаются незакрытыми, поскольку не находят своих соискателей».
Портал Indeed.com в начале ноября 2018 вычислил среднюю зарплату разработчика C# по России — 76 498 рублей в месяц. Для Москвы этот показатель составляет 115 009 рублей, для Санкт-Петербурга — 83 202 рубля.
За границей
По данным Glassdoor, разработчик C# (.NET) с четырьмя-пятью годами опыта в среднем получает более 90 000 долларов в год. Джуниор с опытом до года может рассчитывать на зарплату в районе 60 000 в год.
Статистика сервиса LinkedIn за 2017 год свидетельствует, что вакансия Unity-разработчика — седьмая по скорости роста в США. Показатель основан на том, как часто открывались соответствующие вакансии за последние пять лет.
GitHub-тренды С# в 2018
В конце лета компания OverOps, известная аналитикой software-рынка, исследовала 18 471 репозиторий на GitHub и назвала в своем блоге топ-20 библиотек C#.
По итогам в сообществе прослеживаются две основные тенденции. Первая — рост интереса к CMS на C#, а именно к Orchard, BetterCms, umbraco (открытая CMS от Microsoft), DNN. Вторая — развитие средств тестирования и отладки. Инструменты разработчика совершенствуются, потому что C# используют в масштабных проектах. Это направление актуально для всех востребованных языков программирования.
Как видно на картинке выше, особым спросом пользуются:
- Newtonsoft (aka Jason.NET) — быстро сериализует и десериализует объекты .NET в JSON. Умеет конвертировать XML в JSON и обратно;
- Xunit и NUnit — для unit-тестов;
- утилита dnSpy — средство для отладки и обратного проектирования сборок;
- Cake — кроссплатформенная система сборки, которая позволяет автоматизировать ряд задач: структурирование файлов проекта, тестирование исходников, создание бинарников;
- Log4net — позволяет вести лог с учетом типа и уровня сообщений, а также отслеживать, как они форматируются и куда выводятся во время исполнения программы.
Отдельно стоит отметить ReSharper — расширение для Visual Studio, которое ускоряет разработку с помощью умных функций: статического анализа кода, автозаполнения, поиска (например, всех ссылок на объект или потомков родительского класса).
4 июня 2018 года Microsoft анонсировала покупку GitHub за 7,5 миллиарда долларов. Корпорация и ранее активничала на GitHub — ее специалисты совершили более двух миллионов операций по созданию и обновлению репозиториев. Сделка позволит Microsoft привлечь к своим проектам больше разработчиков и простимулировать развитие платформы .NET. Поэтому GitHub-сообщество C#, скорее всего, будет расти.