Minha equipe criou um site para um cliente há vários anos. A capacidade do site vem crescendo muito rapidamente e nosso cliente está nos pedindo para aumentar nossa equipe para atender às necessidades de manutenção e solicitação de recursos.
Começamos com um pequeno número de desenvolvedores e nossa equipe cresceu - agora estamos na casa dos dois dígitos.
Quais mudanças de gerenciamento / desenvolvimento são mais benéficas quando a equipe passa de uma pequena equipe "do tamanho de uma garagem" para mais de 10 desenvolvedores?
Respostas:
Eu diria que existem aproximadamente duas estradas principais:
Boa sorte!
fonte
Crescemos de cerca de 10 para quase 200 nos últimos 7 anos. A primeira coisa que precisa mudar é que você precisará de uma documentação melhor e de processos mais padrão. Os requisitos podem precisar ser mais formais também.
Você também deve contratar especialistas à medida que cresce. Se você possui um back-end de banco de dados, deve ter pelo menos um especialista em banco de dados dedicado. Você provavelmente deve gastar dinheiro com um testador.
Você terá mais projetos em andamento e uma maior necessidade de gerenciá-los; portanto, se você não estiver usando um agora, precisará de um sistema de gerenciamento de projetos e um rastreador de erros. Você precisa criar um acesso à implantação e limitar a produção apenas às pessoas que farão as implantações, sem precisar fazer alterações diretamente no produto. Seus desenvolvedores precisarão ser limitados para selecionar direitos apenas no prod.
Como você tem equipes maiores, você terá mais problemas com as pessoas e terá maior probabilidade de contratar pessoas menos qualificadas (relativamente fácil conseguir três bons desenvolvedores quando isso é tudo o que você tem, muito mais difícil contratar 30 de uma só vez). Mesmo que você tente conseguir as melhores pessoas, quanto mais você contratar, maior será a probabilidade de ter um fracasso; portanto, esteja preparado para deixar as pessoas irem também.
A coordenação entre as pessoas é fundamental. Duas equipes que fazem alterações mutuamente exclusivas em um produto são uma coisa ruim.
Com apenas dois ou três desenvolvedores, você não pode se dar ao luxo de ter pessoas juniores - todos devem estar trabalhando no nível sênior. Com muitos desenvolvedores, você não pode se dar ao luxo de não ter pessoas juniores. Contrate alguns juniores e treine-os da maneira que você deseja. Geralmente, é melhor trabalhar em algum lugar que não tenha uma carreira no mesmo nível.
À medida que sua equipe cresce, muitos de seus desenvolvedores atuais se tornarão a nova equipe de gerenciamento. Alguns odeiam isso, garanta que eles tenham a oportunidade de promover um desenvolvedor sênior, e não o gerenciamento. Não perca todo o seu conhecimento técnico para o gerenciamento. Recompense aqueles que não participam do gerenciamento porque você precisa de seu conhecimento detalhado do sistema atual para atualizar as novas pessoas.
fonte
Se o projeto for grande o suficiente para mais de 10 desenvolvedores, será fácil dividir-se em áreas menores. Divida a equipe em equipes menores, de 3 a 5 pessoas cada, e dê a elas autonomia sobre sua área. As APIs deverão ser desenvolvidas entre as equipes. Eu recomendo que cada equipe descubra seus requisitos e faça com que uma ou duas pessoas de cada equipe envolvida se encontrem para discutir a API. É mais fácil ter uma discussão e tomar decisões quando menos pessoas estão envolvidas.
fonte