Files
dev-roadmap-avito-playbook/structure.md
Mike Klyuev 0a14181158 Update structure.md
Добавил описание роли Unit-Leader. Замечания, комментарии?
2018-07-24 17:17:40 +03:00

44 lines
6.1 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Структура (Юниты)
В Авито горизонтальная структура. Вся наша разработка разбита на множество кросс-функциональных команд, в каждой из которых есть представители разных функций — инженеры, специалисты по качеству, продуктовые менеджеры, аналитики, дизайнеры.
Состав команды в основном определяется ее направлением деятельности. Чаще всего они формируются вокруг реализации какой-то потребности пользователя, либо вокруг определенной части сервиса. Пара примеров.
- Коллеги из юнита Messenger, как можно догадаться из названия, разрабатывают всё, что связано с нашим мессенджером. Мессенджер есть и в десктопной версии Авито и в приложениях, поэтому в команде юнита есть бекенд-, фронтенд- и мобильные разработчики. Для того, чтобы мессенджер был удобным и работал безотказно, в команде есть выделенные дизайнер и QA.
- Unit Leader
- Server-Side Developer
- Client-Side Developer
- iOS Developer
- Android developer
- Designer
- QA
- Юнит TechPR организует митапы, помогает докладчикам готовить доклады, публикует статьи на Хабре и так далее. В нём у нас работает всего 3 человека:
- Unit Leader (Developer Relations manager)
- Event-manager
- Editor
И таких команд у нас несколько десятков. Исходя из их специфики, команды сгруппированы в крупные множества — кластеры, у каждого из которых есть свои продуктовые и технические особенности.
Юниты также можно разделить на платформенные (они занимаются разработкой платформы на базе которой можно строить новую продуктовую функциональность) и на продуктовые, которые пилят непосредственно продуктовые фичи.
Мы стараемся обеспечить максимально независимую работу всех команд. Структура компании позволяет нам быть быстрыми и гибкими. Каждая из команд сфокусирована на своих целях, они способны за короткие промежутки времени выпускать полноценные фичи, не отвлекаясь на второстепенные детали.
Сотрудники могут переходить из одного юнита в другой. Алгоритмизировать этот процесс невозможно. Иногда возникают проблемы, которые можно решить, иногда смена юнита обоснована какими-то объективными причинами. Каждый случай мы разбираем отдельно.
# Роль Unit-Leader
Unit-Leader отвечает за следующие направления работы:
## Стратегия и тактика
Понимает стратегию компании и роль своего юнита в ней, разрабатывает долгосрочную стратегию юнита, организует её выполнение и отслеживает ключевые метрики юнита.
На тактическом уровне, формирует [OKR](https://github.com/avito-tech/playbook/blob/master/goal-setting.md) и отслеживает их достижение, подбирает людей в команду, координирует её работу и управляет ресурсами.
## Коммуникации
Выстраивает коммуникацию внутри команды и с другими юнитами. Представляет и отстаивает интересы юнита в компании: делится текущими проектами, планами, успехами, неудачами своей команды с другими юнитами и взаимодействует с ключевыми стейкхолдерами компании.
## Работа с командой
Действует как тренер и наставник, а не диктатор. Unit-leader собственным примером вдохновляет и мотивирует команду. Обеспечивает ее необходимыми ресурсами, формирует комфортную среду для продуктивной работы: предотвращает конфликты, способствует уважительному отношению между участниками команды. Распределяет ресурсы, чтобы каждый чувствовал свой вклад и пользу в развитии проекта, и помогает решить проблемы, если работник юнита зашел в тупик при их решении. Способствует развитию всех членов команды: подскажет, каких знаний и навыков не хватает, предлагает направления, в которых члену команды нужно стать лучше, как ему расти в компании.