Na pergunta Como lidar com meus colegas de trabalho antiquados , várias pessoas discutiram estratégias para lidar com colegas de trabalho que não desejam integrar seu fluxo de trabalho ao da equipe.
Eu gostaria, se possível, de aprender algumas estratégias para "ensinar" um colega de trabalho que é apenas ignorante das técnicas e ferramentas modernas, e possivelmente um pouco apático.
Comecei a trabalhar com um programador que, até recentemente, trabalhava em relativo isolamento, em uma parte diferente da empresa. Ele possui amplo conhecimento de domínio e, mais importante, demonstrou boas habilidades para resolver problemas , algo que muitos candidatos parecem não ter.
No entanto, o código (C #) real que eu vi é um retrocesso para os dias do VB6. Estrutura processual, notação húngara, variáveis globais (abuso de static
), sem interfaces, sem testes, não uso de genéricos, jogando System.Exception
... você entendeu.
Esse programador é um pouco mais velho do que eu e, pelo menos pelas primeiras impressões, não busca ativamente mudanças positivas. Não vou dizer que é resistente à mudança, porque acho que é em grande parte uma questão de como o tópico é abordado e quero estar preparado.
Os programadores tendem a ser pessoas teimosas, e entrar com armas em punho e instituir análises de código rip-it-to-shreds e políticas rigorosamente aplicadas provavelmente não produzirá o resultado final que eu quero. Se fosse um novo contratado, um programador júnior, eu não pensaria duas vezes antes de adotar uma postura de "mentor", mas sou extremamente cauteloso ao tratar um funcionário experiente como um novato sem noção (o que ele não é - ele simplesmente não acompanhou certos avanços no campo).
Como posso elevar o padrão de qualidade de código desse desenvolvedor da maneira Dale Carnegie, por meio de persuasão suave e incentivos não materiais? Qual seria a melhor estratégia para efetuar mudanças sutis e graduais, sem criar uma situação adversa?
Outras pessoas - especialmente desenvolvedores líderes - já passaram por esse tipo de situação? Quais estratégias foram bem-sucedidas em estimular o interesse e criar uma dinâmica de grupo positiva? Quais estratégias não foram bem-sucedidas e seria melhor evitar?
Esclarecimentos:
Eu realmente sinto que várias pessoas estão respondendo com base em sentimentos pessoais sem realmente ler todos os detalhes da pergunta. Observe o seguinte, que deveria estar implícito, mas agora estou explicitando:
Este colega de trabalho é apenas meu "mais velho" em virtude da idade. Eu nunca disse que seu título, esfera de influência ou anos na organização excedem os meus e, de fato, nenhuma dessas coisas é verdadeira. Ele é um programador de LOB que foi absorvido pela principal loja de desenvolvimento. É isso aí.
Não sou um novo contratado, programador júnior ou outro idiota ingênuo com grandes planos de transformar a empresa da noite para o dia. Eu sou basicamente responsável pelo processo do software, mas, como muitos que trabalharam como "leads" sabem, as responsabilidades nem sempre se correlacionam com precisão com o organograma.
Estou não pedir às pessoas como fazer do meu jeito, venha o inferno ou água alta . Eu poderia fazer isso se quisesse, com o resultado líquido sendo que essa pessoa ficaria ressentida e / ou desistir. Por favor, tente entender que estou procurando um método social e cooperativo de promover mudanças.
A menção de "... variáveis globais ... sem testes ... jogando
System.Exception
" teve como objetivo demonstrar que os problemas não são apenas superficiais ou estéticos . Práticas que podem funcionar para aplicativos CRUD relativamente pequenos não funcionam necessariamente para aplicativos corporativos grandes e, de fato, nenhum dos códigos até agora passou nos testes de integração.
Por favor, tente aceitar a pergunta pelo valor de face, aceite que eu realmente sei do que estou falando e responda à pergunta que realmente perguntei ou siga em frente.
PS: Minha mais sincera gratidão àqueles que - ofereceram conselhos construtivos em vez de discutir com a premissa. Vou deixar isso em aberto por mais algum tempo, pois espero ouvir mais no caminho das experiências do mundo real.