Para lhe dar um pouco de conhecimento: eu trabalho para uma empresa com aproximadamente doze desenvolvedores do Ruby on Rails (+/- estagiários). Trabalho remoto é comum. Nosso produto é composto de duas partes: um núcleo bastante gordo e fino para grandes projetos de clientes construídos sobre ele. Projetos de clientes geralmente expandem o núcleo. A substituição dos principais recursos não ocorre. Devo acrescentar que o núcleo tem algumas partes ruins que precisam urgentemente de refatorações. Existem especificações, mas principalmente para os projetos dos clientes. A pior parte do núcleo não foi testada (não como deveria ser ...).
Os desenvolvedores são divididos em duas equipes, trabalhando com um ou dois pedidos para cada sprint. Normalmente, um projeto de cliente está estritamente associado a uma das equipes e OPs.
Agora, nosso problema: com bastante frequência, quebramos as coisas um do outro. Alguém da equipe A expande ou refatora o recurso principal Y, causando erros inesperados em um dos projetos de clientes da equipe B. Principalmente, as mudanças não são anunciadas pelas equipes, portanto os bugs atingem quase sempre inesperados. A equipe B, incluindo o OP, considerou o recurso Y estável e não o testou antes da liberação, sem saber das alterações.
Como se livrar desses problemas? Que tipo de 'técnica de anúncio' você pode me recomendar?