Initial commit

This commit is contained in:
Antonina
2018-05-25 13:05:39 +03:00
commit dcc0c37807
9 changed files with 283 additions and 0 deletions

View File

@@ -0,0 +1,65 @@
# Процессы и стандарты
## Scrum
Все продуктовые и часть платформенных команд работают по Agile-методологии Scrum. Для нас это означает вот что: постоянные инкременты продукта, полная прозрачность процесса разработки для всей компании, непрерывное улучшение процессов в командах.
## Developer Experience Framework
В то время как основными клиентами продуктовых команд являются конечные пользователи Avito, для платформенных команд это другие разработчики. Мы верим в то, что большая часть продуктовых подходов и практик может быть применима и к платформенной разработке.
**Developer Experience (DX)** — это подход к созданию ценных, удобных и простых в освоении продуктов для разработчиков:
- это про то, как понимать «боль» разработчиков и помогать им ее решать,
- это сумма всех негативных и позитивных взаимодействий между разработчиком и платформой,
- это про то, как создавать больше пользы меньшими усилиями,
- это про «put user's needs first».
**Developer Experience Framework (DXF)** — это набор практик и методологий по управлению жизненным циклом технических продуктов и ожиданиями их пользователей:
- это про анализ ценности создаваемых продуктов,
- это про прозрачность разработки продуктов,
- это про построение рабочих процессов для быстрой разработки, проверки гипотез и получения фидбэка,
- это про коммуникации с разработчиками, анализ их потребностей и обучение их новым продуктам.
Компоненты фреймворка можно разбить на несколько логических частей.
- Как планировать работу на длинном горизонте (стратегия, OKR, целевая аудитория, бэклог болей).
- Как выстроить процессы разработки в команде (Scrum, MVP, бэклог продукта, роадмапы).
- Как работать с информационными ресурсами (документация, гайды, портал разработчиков).
- Как строить сообщество (митапы, воркшопы, пилотирование).
- Как собирать информацию у разработчиков (опросы, NPS, интервью, метрики).
- Как работать с DX (dogfooding, DX-тестирование).
Мы работаем над тем, чтобы выложить Developer Experience Framework в открытый доступ.
***
## Релизы
Мы придерживаемся того подхода, что частые, но небольшие по объему релизы приносят больше пользы, чем редкие, но крупные. Это касается как быстрого получения обратной связи от пользователей, так и уменьшения цены ошибки и общего риска возникновения инцидентов. Мы работаем по методологии release train и придерживаемся следующего расписания:
- сайт Авито — 2 раза в день;
- мобильные приложения — раз в 2 недели.
Команды, владеющие собственными микросервисами, работают по полноценному continuous delivery.
## Технический радар
Технический радар — это набор практик, описывающих жизненный цикл технологии, и инструмент визуализации текущего состояния технологического стека. Технический радар помогает ответить на ряд вопросов. Вот примеры.
- Почему мы не используем технологию X?
- Как мы относимся к новомодной технологии Y?
- Что стоит использовать в разработке нового сервиса?
- На какие технологии мне стоит сделать упор в саморазвитии?
- Какие технологии и почему не востребованы в Авито?
## Рабочие инструменты и железо
Вот наши основные рабочие инструменты.
- Корпоративный мессенджер — Slack
- Трекеры задач — Jira, Trello
- База знаний и документация — Confluence
- Аналитика — Tableau
- VCS — Bitbucket
- CI — TeamCity