Como permanecer firme quando colegas estão negligenciando o processo?

14

O problema que estou enfrentando:

  1. Os membros da minha equipe começam a trabalhar em projetos sem os documentos técnicos / funcionais prontos - mesmo se o processo da nossa empresa exigir que eles estejam lá antes de começar.
  2. Os membros da minha equipe aceitam soluções baratas e não estruturadas e implementam hacks muito ruins no software sem pensar duas vezes quando o gerenciamento de projetos observa que eles têm "tempo limitado".
  3. Os membros da minha equipe começam a trabalhar em projetos que trabalham em conjunto com um projeto inacabado de outra equipe - que não foi testado e inacabado. (causando muito trabalho extra).
  4. As melhorias e as fases inteiras do software não são planejadas adequadamente e geralmente resultam em front-end / design não concluído quando o desenvolvedor de back-end precisa iniciar o trabalho.

Esses problemas foram discutidos infinitamente por várias vezes desde que comecei a trabalhar aqui. Todos concordaram e o ponto principal é que devemos aplicar o processo, o que significa que o desenvolvedor de back-end não começará até que tudo seja resolvido.

Essas questões continuam acontecendo - e estou ficando realmente desmotivado até o ponto em que estou realmente irritado com o trabalho em si e com alguns de meus colegas.

Os membros da minha equipe reclamam muito - mas apenas um para o outro. They keep on going - whatever the situation is. O resultado?

  1. Eu fico insegura, talvez seja eu?
  2. É assim que as coisas devem acontecer?

Minha pergunta? How can I say no against work ignoring the process if everyone else seems to mindlessly accept?.

Isso sem parecer um desenvolvedor irritante que está apenas procurando algo para reclamar o tempo todo.

Wesley van Opdorp
fonte
Esse é o trabalho do controle de qualidade para garantir que o processo seja seguido.
Mouviciel
Temos equipe de gerenciamento, vendas, gerenciamento de projetos e desenvolvimento. O controle de qualidade está faltando - infelizmente.
Wesley van Opdorp
O papel de um processo não é claro para todos e, portanto, não é aplicado como deveria. É por isso que o controle de qualidade existe: para aplicar a aplicação do processo. Definir um processo sem pessoas encarregadas de executá-lo é como definir leis sem policiais e juízes.
Mouviciel 31/05
O que seu chefe disse quando você discutiu isso com ele?

Respostas:

8

Todo mundo realmente concordaram?

Uma vez tive uma situação em que queríamos melhorar os processos. Propusemos um Processo diferente, e todos pareciam concordar.

Mas então, toda vez que eu queria seguir esse processo, havia uma exceção, devido a "assuntos mais importantes", que sempre pareciam razoáveis ​​à primeira vista. Portanto, com efeito, o processo nunca foi seguido de fato, mas todos pensaram 'em princípio, estamos seguindo o processo'.

O problema era: se você propõe uma melhoria, não há ninguém que discorde (quem não gosta de melhorias?). Mas se você apresentar os custos, geralmente, há muitas divergências. E perder a maneira conveniente de fazer as coisas é um custo enorme para a maioria das pessoas.

Para demonstrar isso, formulei a questão de maneira diferente: 'Priorize todas as coisas que devo fazer (implementar recursos, remover bugs, seguir o processo aprimorado, limpar a mesa e chegar a tempo)'.

Após o processo, ficou atrás da limpeza da mesa e não se atrasou 5 minutos. Então, basicamente, eles concordaram em algo completamente diferente do que eu propus.

O problema pode ser que eles não querem pagar os custos pela qualidade. Isso pode levá-los a racionalizar sua crítica como chorona, mas, na minha experiência, não é. A dívida técnica pode não ser tão visível e é fácil atribuí-la às circunstâncias, mas, eventualmente, a realidade ocorre.

Felizmente, até então eles perceberam isso, ou você trocou de emprego.

keppla
fonte
2
'seguir o processo aprimorado' é a única opção não orientada a objetivos, portanto o resultado não é nada inesperado. Nesse contexto, soa mais como "está seguindo o processo pelo bem do processo" e não uma atividade orientada a objetivos (maior qualidade, produtividade, etc.).
MaR
'o processo aprimorado' é um prazo curto para coisas como 'teste pelo menos superficialmente antes da implantação', e isso é orientado a objetivos: o objetivo é reduzir o trabalho necessário para limpar as coisas posteriormente, que foi o que inevitavelmente aconteceu. Não é que eu tirei um processo do nada e o tornei dogma. Foi derivado de problemas recorrentes que afetaram a produtividade. O que eu chamo de 'processo' neste post foi mais ou menos para seguir 2 ou três itens do teste de joel.
keppla
1
o que eu queria ressaltar é que importa como você vende "o processo". Eu diria que "testar pelo menos superficialmente antes da implantação" teria uma pontuação muito melhor do que "seguir o processo aprimorado" em comparação com a "mesa de limpeza".
MaR 31/05
@ MaR: eu concordo, eu negligenciei esse aspecto no meu post. No trabalho, eu não disse 'siga o processo', mas mais algo como 'concordamos, que precisamos testar primeiro, para evitar irritar ainda mais o cliente com um serviço quebrado. Por que estamos ignorando isso agora?
keppla
3

Talvez seja você

Você parece preferir uma maneira muito estruturada e organizada de codificar, seus colegas de equipe parecem ter uma abordagem mais "fazer as coisas". Agora você menciona que isso leva a muito "desperdício de tempo"; portanto, talvez alguma estrutura esteja em ordem e não haja desculpa para trabalhos mal feitos. No entanto, os projetos de software tendem a ser fluidos e impor muita estrutura também causará muita sobrecarga organizacional.

Talvez todos vocês devam se reunir no meio e tentar uma abordagem mais ágil e interativa, mas estruturada.

Homde
fonte
1
Se os companheiros de equipe não gostam da abordagem 'dele', por que eles concordaram em primeiro lugar? Lendo o post dele, não tenho a impressão de que foi apenas sua proposta. E, mesmo uma abordagem fluida não funciona sem especificações, na minha opinião a diferença não é a ausência, mas o caráter provisório explícito das especificações.
keppla
Primeiro, não discordar de algo não é o mesmo que se comprometer com algo :) Talvez seus colegas de equipe não vejam outras alternativas. Mesmo que o processo tenha sido idéia da gerência, talvez seja necessário alguma adaptação à realidade para garantir a adesão de todas as partes. Concordo que é preciso haver algumas especificações, mas, infelizmente, às vezes especificar algo pode ser tão difícil quanto construí-lo. Um ágil, processo iterativo pode permitir a especificação a cristalizar à medida que avançam
Homde
Ele declarou explicitamente que sua equipe concordou, não que eles não discordassem. Por favor, não me interpretem mal, não sou contra processos ágeis, mas eles também são exatamente isso: processos, que precisam de pelo menos um compromisso básico. Se todo mundo ignora o Standup, ninguém mantém um Backlog, as 'especificações' são apenas um 'a propósito ...' que alguém fica recebendo enquanto passa pelo gerente, até mesmo um processo ágil morre. E, na minha experiência, isso nem sequer está pintando uma imagem em preto. Nem toda empresa é google. A maioria parece lembrar Dilbert mais de perto.
keppla
2
Eu concordo, eles precisam encontrar um processo no qual todos possam comprar. O acordo tácito não vale nada. Eles provavelmente precisam experimentar e ver o que funciona para eles, ou seus colegas de equipe são simplesmente incompetentes e precisam ser demitidos. "process-nazi" que garante que o processo se torne um hábito. Funciona apenas se o processo tiver
adesão
... Aliás, eu não usaria o google como um bom exemplo de processo. Eles parecem sofrer de um caso grave de engenharia devido a muita sobrecarga estrutural. Última vez que ouvi que eles estavam tentando voltar às suas raízes de inicialização
Homde
2

Quem é responsável por essas pessoas? Alguém os contratou e alguém pode demiti-los / responsabilizá-los.

"Minha empresa exige ..." não tem sentido sem alguma aplicação.

Você não pode exigir tempo que não permita o processo de produção.

Parece que essa falta de controle e expectativas irreais são as razões da baixa qualidade.

Você pode: sair, tornar-se o desenvolvedor líder, não fazer nada ou começar a trabalhar com aqueles que se sentem da mesma maneira que você. Certifique-se de que todos saibam que você seguirá os procedimentos corretos até que alguém encontre um caminho melhor e os altere. Parece "Regras da Casa da Sidra".

JeffO
fonte
2

Parece que você não deseja que seus colegas de trabalho sigam um processo completamente diferente, apenas que eles tomem decisões diferentes. Claro, existem regras (diretrizes?) Sobre o que eles devem fazer e os ignoram. Mas o problema que você descreve é ​​que eles precisam tomar uma decisão (começar a trabalhar no projeto ou rejeitar uma especificação) e decidem continuar. Essa decisão não será alterada se você continuar lembrando as regras; eles simplesmente não se importam tanto com regras quanto você . Eles querem se sentir úteis, e dizer não não os faz se sentir úteis .

Se você deseja que o comportamento deles mude, lembrá-los continuamente das regras provavelmente não é muito eficaz; é mais provável que eles o ignorem. Tente encontrar uma maneira de mudar o processo para fazê-los se sentirem mais úteis enquanto ainda seguem o processo. Você pode implementar algum tipo de revisão de código, verificando o código um do outro e aprendendo um com o outro para impedir que hacks cheguem ao código de produção? Você pode alterar a maneira como as especificações (docs / ext.interfaces / front-end) são tratadas de uma decisão finalizada / não finalizada em preto e branco para um processo mais cooperativo, onde perto do final da especificação é solicitado que um desenvolvedor ajuda terminar? (E você deve aceitar que os requisitos serão alterados)

Principalmente não é você, não são eles, é o processo. Se você (e seu gerente geral) puder encontrar uma maneira de organizar as coisas em que as pessoas não precisam ir tanto contra o caráter delas, o processo será seguido muito mais rapidamente.

Jaap
fonte
2

Esse é o ponto em que eu gostaria de entrar com uma sessão de porta fechada com o líder da minha equipe. Espero que você tenha um relacionamento de trabalho suficientemente bom com o lead, para torná-lo muito informal.

O objetivo da reunião é descobrir por que a equipe está fazendo as coisas do jeito que está fazendo. Se todos se reuniram, assentiram, sorriram e concordaram com um novo processo, então por que eles ainda não estão mudando? As chances são boas de que isso seja muito mais profundo do que simples desatenção ou incompetência. É provável que existam motoristas no trabalho que não sejam visíveis a olho nu.

Comece a reunião assumindo que seus colegas de trabalho seguiriam, se pudessem, um processo que leva a menos pânico, menos dívida técnica e maior qualidade do produto - afinal, quem não quer isso? Então, qual é a força invisível?

Parece que há muita implementação / integração antes do trabalho inicial de design e protótipo da interface do usuário. A empresa está com falta de pessoas que podem fazer esse trabalho inicial? Talvez você possa ser voluntário. Existe um problema para obter consenso com as partes interessadas? Talvez sua equipe possa encontrar uma nova maneira de se comunicar com eles ou adotar uma nova abordagem para documentar suposições.

Se você começar com um em um, onde você perguntar à sua liderança por que, então poderá abrir a porta para uma discussão que evite a defensividade e se concentre em problemas e soluções.

Outro truque pode ser perguntar se você pode ser pioneiro em uma nova maneira de fazer as coisas. Apoie o líder da equipe para forçar um pouco o problema e permitir que você adote a abordagem que está advogando - provavelmente surgirá um problema ao alterar o "sistema", para que você queira o gerenciamento. Mas se você se mostrar mais produtivo e livre de estresse, é um bom argumento para mudar a maneira como as coisas acontecem e é provável que ganhe advogados.

bethlakshmi
fonte