Microsoft 365 «под капотом» переведут на Rust
Корпорация Microsoft планирует переписать серверный код облачной платформы Microsoft 365 на языке программирования Rust и для этого нанимает специалистов, способных решить эту задачу.
Согласно описанию вакансии, размещенной на официальном портале Microsoft, корпорация ищет специалиста на должность главного архитектора программного обеспечения Microsoft 365.
В обязанности потенциального сотрудника будут входить «определение направления развития технических аспектов [M365], проектирование и реализация библиотек компонентов Rust, SDK, а также перевод существующих глобальных сервисов на основе C# на Rust», следует из текста объявления.

C# – это язык программирования с C-подобным синтаксисом, разработанный Microsoft. Является основным языком разработки приложений для платформ Microsoft .NET Framework и .NET Core.
Rust является столь же универсальным, как и C#, но в отличие от последнего гарантирует безопасную работу с памятью, что позволяет программистам во многих случаях избегать ошибок, которые при использовании других языков программирования привели бы к возникновению уязвимостей.
Работа в Праге с возможностью частичной «удаленки»
Фактически работодателем в данном случае выступает группа Substrate App Platform, входящая в структуру организации M365 Core Platform. Последняя является частью Microsoft, разрабатывает и поддерживает серверные компоненты платформы Microsoft 365.
Substrate App Platform в свою очередь ведет работу над Microsoft Substrate. Это специальная служба управления данными сервисов Microsoft 365, которая оперирует незаметно для пользователя, но тем не менее играет важную роль в обеспечении функционирования применяемых им облачных служб.
Соискателю следует иметь в виду, что выполнять свои обязанности в случае успеха на собеседовании придется из офиса в Праге (Чехия), причем проводить в нем понадобится как минимум 50% от совокупного рабочего времени. Остальные 50% и менее разрешается расходовать на работу в удаленном режиме – по договоренности с работодателем.
Вакансия была размещена 26 января 2024 г. и, судя по тому, что на момент публикации данного материала не была удалена с сайта Microsoft, остается актуальной.
Новая команда разработчиков
Предполагается, что заниматься переписыванием кода столь сложной системы будет не один специалист, а множество. Для перевода бэкенда собственных облачных сервисов Microsoft планирует создать отдельную команду.
«Мы формируем новую команду, целью которой является внедрение языка программирования Rust в качестве основы для модернизации платформенных сервисов глобального масштаба и за его пределами», – говорится в описании вакансии.
Примечательно, что Microsoft, которая наряду с другими технологическими гигантами провела в 2023 г. сокращение штата выдающегося масштаба, для уменьшения издержек по-прежнему продолжает наем нового персонала.
Что такое Microsoft 365
Microsoft 365 (M365) представляет собой набор облачных сервисов и приложений для бизнеса и коммуникаций, доступ к которому предоставляется по подписке. В перечень ПО, входящего в состав набора входят в том числе редакторы документов Word, Excel и PowerPoint.
До осени 2022 г. продукт назывался Microsoft Office 365, однако затем «Гигант из Редмонда» принял решение о его переименовании и обогащении новыми возможностями.
Об интересе к Rust со стороны Microsoft
Рассматривать возможность переноса кода собственных проектов на современные типобезопасные языке в Microsoft начали не позднее 2019 г. В декабре 2019 г. CNews писал о том, что специалисты «Редмондского гиганта» разрабатывают новый язык программирования под кодовым названием Verona, который базируется на Rust.
Непосредственно с Rust в Microsoft начали экспериментировать летом 2019 г., а в ноябре того же года Адам Берч (Adam Burch), программист из команды разработчиков Hyper-V (системы аппаратной виртуализации для x64-систем на основе гипервизора), написал в корпоративном блоге о том, что ему поручили переписать на Rust некий низкоуровневый компонент Windows. Он также отметил, что опыт применения Rust для него оказался в целом положительным.
Серьезность планов Microsoft по переходу на Rust подтвердило заявление Дэвида Уэстона (David Weston), вице-президента корпорации по безопасности, о том, что специалисты компании компании переписывают на Rust отдельные составляющие операционной системы Windows 11. Переработке подверглись такие компоненты как Win32k GDI и DWriteCore.
Стоит также отметить, что Microsoft входит в число участников Rust Foundation, наделенных «платиновым» статусом. Эта организация определяет вектор развития языка программирования Rust.
Некоторые факты о Rust
Rust появился в 2006 г. как личный проекта Грейдона Хоара (Graydon Hoare), сотрудника Mozilla. В 2009 г. Mozilla начала спонсировать разработку Rust для собственных нужд, а также расширила команду для дальнейшего развития языка.
Интерес Mozilla к Rust был вызван наличием огромного числа критических уязвимостей в разрабатываемом компанией браузере Firefox, в реализации которого присутствовало свыше 4 млн строк на языке C++. Rust был создан с учетом требований безопасности и параллелизма, что сделало его подходящим выбором для переписывания многих компонентов Firefox в рамках проекта Quantum по полной переработке архитектуры браузера. Кроме того, Mozilla использовала Rust для разработки Servo, движка рендеринга HTML, который должен был заменить действующий движок рендеринга Firefox.
Помимо Mozilla и Microsoft в своих проектах Rust применяют Google, Amazon, Dropbox, Fastly, Baidu.
Rust в качестве инструмента нередко выбирают авторы вредоносных программ, а в последнее время этот язык обретает все больше поклонников и среди законопослушных разработчиков ПО разной степени мастерства. Во всяком случае об этом свидетельствуют результаты опроса, проведенного сообществом Rust Foundation.
В рейтинге популярности языков программирования TIOBE в январе 2024 г. Rust занял 19 строчку, уступив Python, C, C++, Java, C#, JavaScript, PHP и даже Fortran.


