- Привет, Хабр! Меня зовут Антон Герасимов, я руковожу департаментом разработки в московском центре компании МойОфис. Почти четыре года мы с командой создаём новую высоконагруженную и отказоустойчивую почтовую систему Mailion. Она предназначена для корпоративных коммуникаций и построена на Cloud Native микросервисной архитектуре. В этой статье я расскажу, как мы создавали продукт с момента замысла до текущей бета-версии, как затачивали почтовый движок под работу с контентом и как справлялись с вызовом — поддержать совместную работу даже 1 000 000 пользователей и масштабироваться на такое количество рабочих мест.
- Чего не хватает почтовым сервисам?
Привет, Хабр! Меня зовут Антон Герасимов, я руковожу департаментом разработки в московском центре компании МойОфис. Почти четыре года мы с командой создаём новую высоконагруженную и отказоустойчивую почтовую систему Mailion. Она предназначена для корпоративных коммуникаций и построена на Cloud Native микросервисной архитектуре. В этой статье я расскажу, как мы создавали продукт с момента замысла до текущей бета-версии, как затачивали почтовый движок под работу с контентом и как справлялись с вызовом — поддержать совместную работу даже 1 000 000 пользователей и масштабироваться на такое количество рабочих мест.
Чего не хватает почтовым сервисам?
Вы задумывались, почему в большинстве почтовых систем сделать операцию, отличную от базовой, — это нетривиальная задача? Нужно залезть в неочевидное место и там найти нужный пункт, а настройка совместного доступа обычно требует сертифицированного специалиста. Так быть не должно, но таких примеров масса.
С конца 80-х годов в области совместной работы с электронной почтой мало что менялось. Конечно, появились новые функции и клиентские протоколы, но ничего принципиально иного разработчики почтовых систем не предложили. В решениях, которые появились за это время, уделялось мало внимания деталям — простым пользовательским вещам, которые делают жизнь намного удобнее и экономят время пользователей. Это не так заметно при домашнем использовании, но для организаций с большим количеством сотрудников уже становится ощутимым.
В 2014 году компания Google попыталась сделать революционный шаг и запустила Inbox, который был построен не по принципу папок, а по принципу тегов. В основе сервиса лежала концепция сканирования входящих сообщений, их группировка по темам и автоматическим обогащением недостающей дополнительной информации.
Сервис предлагал и ряд корпоративных функций: календарь событий организации, сохранение ссылок для дальнейшей работы с ними, функцию задержки отправки писем, а также «умные ответы», которые значительно ускоряли коммуникацию с мобильных устройств. Спустя четыре года проект закрыли. Я тогда был очень расстроен, а 11 000 человек даже петицию подписали, что говорит о реальной потребности пользователей.
Внимательно проанализировав эту ситуацию, мы поняли, что Inbox просто опередил своё время. Людям, особенно в корпоративном мире, нужен простой и понятный интерфейс для решения типовых задач с возможностью быстрого доступа ко всем элементам деловой переписки — вложениям, ссылкам, различным отчётам и функциям, — который будет интуитивно понятным и одновременно функциональным, не вызывающим вопросов. А корпорациям необходимо обеспечить технологии одновременной работы сотен тысяч пользователей, высокие показатели по отказоустойчивости, а также встроенные механизмы самостоятельного восстановления системы.
Чтобы сделать корпоративную почту удобной как для пользователя, так и для администратора, с самого начала работы над Mailion мы провели множество фокус-групп и опросов. Они помогли нам выявить типовые сценарии использования корпоративной почты и составить перечень востребованных функций, а также спроектировать систему календарного планирования и дизайн интерфейсов.