# внутренние сервисы

Published articles for внутренние сервисы.

This is one page of public article previews, not the complete archive. Follow Next page to continue. Summaries are not the original full articles.

## A component-based approach to managing team responsibility in Badoo and Bumble

DevFeed: [A component-based approach to managing team responsibility in Badoo and Bumble](<https://devfeed.tech/articles/article-23641.md>)

Original publisher: [Read original article](<https://habr.com/ru/companies/badoo/articles/562000/>)

Author: Unclead (Badoo)

Published: 2021-06-09T15:08:15Z

Content type: article

Language: ru

Sources: [Badoo EN](<https://devfeed.tech/sources/badoo-en.md>), [Badoo RU](<https://devfeed.tech/sources/badoo-ru.md>)

Topics: [PHP](<https://devfeed.tech/topics/php.md>), [phpstorm](<https://devfeed.tech/topics/phpstorm.md>), [Git](<https://devfeed.tech/topics/git.md>)

Tags: [badoo](<https://devfeed.tech/tags/badoo.md>), [bus-factor](<https://devfeed.tech/tags/bus-factor.md>), [git-hook](<https://devfeed.tech/tags/git-hook.md>), [php](<https://devfeed.tech/tags/php.md>), [phpstorm](<https://devfeed.tech/tags/phpstorm.md>), [tag-622612a5798e](<https://devfeed.tech/tags/tag-622612a5798e.md>), [tag-a3f08f91b7c9](<https://devfeed.tech/tags/tag-a3f08f91b7c9.md>), [tag-b3a84f87fd83](<https://devfeed.tech/tags/tag-b3a84f87fd83.md>), [tag-c51cc4bf76e5](<https://devfeed.tech/tags/tag-c51cc4bf76e5.md>), [team](<https://devfeed.tech/tags/team.md>)

### AI overview

The article describes how Badoo and Bumble addressed the challenge of identifying teams and maintainers responsible for parts of a growing PHP codebase. It explains the limitations of DocBlock tags, PhpStorm templates, and a Git hook, and introduces a component-based approach intended to centralize responsibility information and let other systems consume updates automatically.

### Source excerpt

Меня зовут Евгений Тупиков, я ведущий PHP-разработчик в Badoo и Bumble. У нас в команде более 200 бэкенд-разработчиков, которые работают над сотнями модулей и отдельных сервисов в наших приложениях. Но поначалу всё было не так масштабно. В 2006 году это был один проект, над которым работала небольшая команда. Каждый разработчик хорошо понимал, как всё устроено: легко ориентировался в коде, знал, какие есть сервисы и как они взаимодействуют между собой. Однако по мере роста проекта всё больше времени занимал поиск "хранителей знаний" -- тех, кто отвечает за ту или иную функциональность и к кому можно обратиться с вопросом или предложением. В этой статье я расскажу, как мы решили проблему разделения зон ответственности и сделали процесс актуализации информации быстрым и удобным с помощью компонентного подхода. Читать далее