Eu trabalho para o estado da Califórnia. Nossa equipe de programação, na minha opinião, não é realmente uma 'equipe', pois geralmente trabalhamos sozinhos em projetos ao longo do ciclo de vida completo dos aplicativos / sistemas.
O resultado final é que muitos desenvolvedores estão 'reinventando a roda' ... escrevendo suas próprias camadas de dados, mesmo que a grande maioria de nós trabalhe no mesmo banco de dados Oracle ... escrevendo suas próprias coisas de segurança ... a lista continua em.
Não posso mudar a mentalidade de meus funcionários e não tenho ambições realistas em relação à mudança do processo de nossa equipe ... mas meu objetivo é fazer com que nossa equipe trabalhe um pouco mais, pelo menos para construir um edifício comum peças de bloco que todos nós podemos usar para a funcionalidade clichê.
Os benefícios óbvios são: teste e suporte são muito mais fáceis de manter quando todos os nossos usuários estão familiarizados com uma peça comum, o tempo de produção é menor quando você não está escrevendo o mesmo repositório que alguém já fez e podemos nos concentrar em fornecer melhores soluções para os problemas únicos que nossos aplicativos precisam resolver ... etc.
Estou pregando para o coral, tenho certeza.
O truque é que o Estado não gosta de mudanças, nem seus funcionários. Os gerentes geralmente desconsideram novas idéias simplesmente porque gostam de evitar atritos e preferem continuar como estão.
Existem perguntas semelhantes por aí, mas o que estou procurando é conselhos sobre como qualquer um de vocês pode ter enfrentado uma situação semelhante e qualquer direção para obter um tipo de esforço "de base" que facilitará a abordagem do gerenciamento.
EDIT: Apenas para esclarecer algumas coisas:
o escopo que estou procurando está na loja de TI da minha agência estadual. Não estou tentando coordenar vários departamentos. Conseguimos tirar as pessoas do volante antes de pedir que elas andassem de moto.
A segurança não é muito preocupante, a maioria de nossos aplicativos é interna e escrita em Windows Forms distribuído na Citrix (ugh.) E quase todos usam as mesmas tabelas corporativas no Oracle ... muito poucas, se houver, aplicativos que sejam "classificados" para falar. não deve dificultar a colaboração.
Fui até o ponto de configurar um feed do NuGet, com algumas partes do código compactadas e escrevi alguns repositórios para a Oracle, enviei alguns e-mails, mas recebi pouco feedback. Eu tenho cerca de 1/3 da nossa equipe usando o ReSharper e envio e-mails de vez em quando com dicas ... novamente, sem muitos comentários.