О том, как IT доставляет пиццу

Додо Пицца IT является важнейшей составляющей. Здесь мы рассказываем о том, куда мы идем с точки зрения архитектуры и развития системы

Посмотреть вакансии

Dodo is

Додо Пицца — международная сеть пиццерий родом из России. В 2016 году мы обогнали всех международных конкурентов и стали № 1 в России по количеству открытых пиццерий. В сердце нашего бизнеса — информационная система Dodo IS.

Dodo IS — информационная система, не просто важнейшая часть бизнеса Додо. Это сам бизнес и есть. Сегодня она обеспечивает работу более 470 пиццерий в 12 странах мира. И мы только в начале большого пути. Нам предстоит переход на микросервисы, масштабирование и обеспечение работы 24/7. И это только малая часть тех вызовов, которые стоят перед нами

12
стран мира, в которых работает Додо Пицца, включая США, Англию и Китай

Стек технологий

 

ASP.NET Core
ASP.NET MVC
.NET Core
MySQL
ReactJS
Kotlin
Swift
Docker
Azure

 

Для контроля версий мы пользуемся git и располагаем его на GitHub (без зеленых квадратиков никуда), Kaiten для задач, Nuclino для документации. Деплоим через PowerShell и Cake раз в неделю, Continuous Integration — TeamCity.

Веб-приложение на ASP.NET MVC и ASP.NET Core, Windows Server, IIS, CentOS, NGINX, MySQL (Percona Server). Мы используем NGINX для реверс-прокси и TLS. За NGINX стоят наши бэкенды в виде IIS серверов, на которых находится бизнес-логика. В качестве реляционной БД у нас работает Percona Server. Для разнообразных кэшей в продакшне мы используем Azure Redis Cache. Сами приложения написаны на .NET Full Framework и мы постепенно мигрируем на .NET Core. Новый сайт использует ReactJS, backoffice на Angular 2.

 

2.4K
запросов в секунду происходит в Dodo IS

Архитектура Dodo IS

Будущее в микросервисах

 

Наш фокус сегодня

Bounded Context
Event Sourcing
Message Queues
Azure Redis
NoSQL
Docker

Какая у нас инфраструктура

Мы помогаем разработчикам с масштабированием, мониторингом и поддержкой в продакшене ASP.NET/.NET Core SaaS приложения. Стек технологий типичный, но постоянно растет, сейчас это Azure, AWS, NGINX, Percona Server/Cluster, Redis, Rabbitmq, Elasticsearch. Мы поддерживаем три системы в разных частях планеты — Европа, Северная Америка и Китай. Инфраструктура и мониторинг постоянно развивается, как и работа с базами данных. Впереди оркестрация и контейнеры, Big Data и стриминг аналитика, Geo-DNS и мультидатацентровые приложения на Go.

 

Как мы работаем

IT – это и есть бизнес

Разработчики и управляющие пиццерией сидят рядом, постоянно общаются и работают рука об руку над созданием Dodo IS. Закодил — сразу видишь насколько рад пиццамейкер новым фичам. Каждый разработчик проходит стажировку в пиццерии. Надоело писать код — можешь сходить в пиццерию, покрутить додстеры или постоять на кассе.

Инженерная культура

Мы используем лучшие инженерные практики: разработка маленькими шагами, постоянный рефакторинг кода, покрытие кода быстрыми и читаемыми юнит тестами, бесшовная выкладка на боевое окружение — это часть нашей ежедневной работы. Встраиваем качество в процесс. В то же время мы не догматики, приверженные строгому набору практик. Мы постоянно ищем новые идеи, помогающие сделать наш код еще лучше.

Командная работа

Команда — это автономная боевая единица, в которой есть все, что необходимо для достижения цели. Мы не сидим в отдельных кубиках в наушниках. Мы сидим рядом, работаем в парах, когда это необходимо, часто общаемся и помогаем друг другу.

Поток создания ценности

У всех команд в потоке создания ценности один бэклог. Правила работы определяются самими командами. Например, кто-то предпочитает стабильный состав команд, а кто-то меняется после каждой выполненной истории.

No bullshit

 

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

Agile Engineering

Мы пишем много кода, часто коммитим в общую ветку, маленькими шагами. Иногда садимся в пары и программируем вдвоем. Еще пишем юнит-тесты, быстрые, понятные с DSLлем. Распиливаем монолит на микросервисы со своей ответственностью и базой данных. Постепенно рефакторим маленькими шагами.

Топовые процессоры (i7), мониторы с нормальной матрицей (берем часто DELL U2414H или U2417H), 32GB оперативки и SSD — наш типовой «станок». А еще мы сами отвечаем за деплой своего продукта\части системы и пишем скрипты выкладки. Иногда факапим. Но после факапа ретроспектируем и придумываем инженерное решение, чтобы избежать похожей проблемы в будущем.

01.
Люди и взаимодействие важнее процессов и инструментов
02.
Работающий продукт важнее исчерпывающей документации
03.
Сотрудничество с заказчиком важнее согласования условий контракта
04.
Готовность к изменениям важнее следования первоначальному плану

Опционная программа

Каждому разработчику со временем мы предлагаем акции и опционы на акции компании

Акционер — совладелец «ДодоПиццы»

Акции — это доля в бизнесе компании, которой принадлежат все наработки, брэнд, и каждое юрлицо управляющей компании во всем мире.

Опционы конвертируются в акции

Например, если это 10 опционов на 5 лет, это значит, что каждый год вы будете становиться владельцем двух акций.

Что делать с акциями?

Акции можно продать, со временем получать на них дивиденды, передать в наследство детям и внукам.

А стоимость вырастет?

Да

Общая капитализация компании $62.5 млн. Рост в 5-10 раз, соответственно, увеличивается и стоимость каждой акции. Это значит, что когда Додо достигнет, например, капитализации Domino’s в $9 млрд., стоимость одной вашей акции может превысить $200 тыс.

$1397
стоимость одной акции «Додо-Пиццы»

Dodo + Azure

Вакансии