Quão efetivamente “vende” um bom design em grandes reuniões

14

Muitas vezes testemunhei uma triste tragédia. Aqui está o que acontece:

  1. Uma revisão do design da equipe para um novo projeto.
  2. Vejo um design simples que possui alguns furos.
  3. Menciono casualmente os buracos e maneiras de evitá-los.
  4. Os avisos são ignorados com comentários como "que 'nunca' acontecem na vida real"
  5. Eventualmente, as coisas que "nunca acontecerão" acontecem
  6. Uma revisão do design da equipe de emergência para um projeto quebrado.

Então o que eu faço? Enfrentar a atitude "eu te disse" não vai ganhar amigos e influenciar as pessoas. Às vezes, os anos passam e os comentários do passo 3 são esquecidos. Definitivamente, não quero ser a praga irritante que lembra o mundo das pegadinhas. Costumo sentar e assistir o Titanic navegar para a Europa.

É frustrante ver projetos ruins avançarem. Também é frustrante que eu não consiga convencer outras pessoas do perigo pendente do caminho atual. Fico pior nas reuniões da equipe, onde todos têm maneiras diferentes de entender termos diferentes. Além disso, os egos tendem a ganhar da razão e do pensamento. Estou procurando boas táticas para convencer as pessoas do grupo a usar algumas idéias novas e complicadas.

Usuário1
fonte

Respostas:

3

Se possível, sugira modificações que não adicionarão tempo significativo a um projeto. Tente enfatizar que, se não for feito agora, o trabalho posterior será muito mais doloroso. Será mais difícil se você estiver tentando convencer sua equipe de que uma nova direção completa é melhor, porque isso provavelmente atrasará o projeto etc.

Não coloque as pessoas no modo de defesa em uma reunião, elas apenas lutarão contra você para ser o vencedor. Você não os fará concordar que a Terra é redonda. Isso é política normal (por exemplo, alguém na FoxNews)

Realmente ajuda a ter o respeito de outros desenvolvedores. Se você é o cara novo na equipe, acho que você é SOL. Então, apenas crie um representante de equipe e realmente tente chegar a um nível em que você não seja dispensado imediatamente. Claro, se você é sempre uma quantidade pessimista, será apenas rotulado como o sujeito "negativo".

Para coisas simples (ou seja, não afeta os agendamentos), faça o seu trabalho da melhor maneira. Se você se esforçar para obter sua saída imediata (por exemplo, criar casos de teste ou obter alguns recursos simples (mas legais)), eventualmente outras pessoas perceberão que seu código funciona de maneira confiável e suporta o teste do tempo. Quando você começa a mostrar alguns truques legais com o código, eles pensam duas vezes em atirar em você na frente de todos.

Por fim, concordo que você não deseja fazer a rotina "Eu te disse", mas lembre-se de tentar dar dicas ao seu chefe / líder técnico quando perceber que você realmente estava certo. Talvez reenvie um email antigo com seus comentários antigos. Pergunte se isso ajudaria a resolver o "novo" problema. Se você não fizer isso, eles nem se lembrarão de que você foi quem falou da primeira vez. Eventualmente, eles perceberão que você não está apenas tentando ser um expositor nas reuniões. Da próxima vez, eles pensarão duas vezes antes de desapontá-lo, principalmente se o seu design "antigo" estiver substituindo o atual quebrado.

cmcginty
fonte
+1 "não fará com que eles concordem que a Terra é redonda" .. muito bem dito! Também gosto da idéia de trazer material antigo para "resolver nosso novo problema" em vez de "ver ... eu avisei".
User1
11

Tente construir uma reputação como a pessoa que pode identificar o que funcionará e não apenas o que você acha que terá um problema em alguns casos de uso raros. Quando vir esses problemas em potencial, considere-os como uma nota de rodapé que talvez precise ser tratada mais tarde.

As pessoas ficam loucas nas congregações. Mencione suas preocupações para uma pessoa-chave fora da reunião. Eles verão isso como menos ameaçador e podem levar algum tempo para ouvir seu argumento, em vez de pensar em defender o design. Eles também podem levar mais tempo para explicar as circunstâncias pelas quais você pode ter um ponto válido, mas não é possível abordar na v1.0.

Chave! Entre na reunião com um entendimento completo da agenda do seu supervisor direto. Talvez eles vejam isso como um projeto menor e a última coisa de que precisam na reunião seja um pessimista, afastando o tempo das questões mais importantes. Peça a eles para ajudá-lo.

JeffO
fonte
1
"Tente construir uma reputação como a pessoa que pode identificar o que funcionará e não apenas o que você acha que terá um problema em alguns casos de uso raros." Eu acho que isso é importante. Muitos engenheiros gostam de encontrar falhas nos projetos. Não há nada de errado nisso, é uma habilidade valiosa. Mas é importante não tratar as falhas como binárias: se você é um daqueles que vêem uma abordagem como "defeituosa e, portanto, insustentável" ou "correta e, portanto, aceitável", talvez seja útil aprender alguns pontos intermediários. os dois extremos. Veja também en.wikipedia.org/wiki/Worse_is_better
Mike Clark
4

Se você quiser influenciá-los, converse com eles sobre isso fora da reunião de design. Caso contrário, eles vão pensar que você está tentando "marcar pontos" deles. Muitas pessoas nunca querem ter discussões reais em uma reunião com um "público".

Jeremy
fonte
1

Não vejo como essa situação é muito diferente de um desenvolvedor solitário com um chefe sem noção. Infelizmente, perdi a conta do número de vezes que fiquei 'convencido' a construir um projeto de uma certa maneira e enviá-lo, apesar dos meus avisos de destruição iminente. Isso deixa você não apenas construindo, mas navegando pelo proverbial Titanic direto para um iceberg sozinho.

Assim como você descreveu, quando os pedaços atingiram o proverbial balde, meus avisos já haviam sido esquecidos. Às vezes (felizmente para mim) as coisas corriam mal meses ou mais depois que eu não estava mais envolvido no projeto. Infelizmente, isso deixou meu sucessor pensando que eu deveria estar louco, como você pode apostar que o chefe negou qualquer mão nele :)

De qualquer forma, um grupo de programadores "convencidos" pode ser tão ignorante quanto um chefe de cabelos pontudos, às vezes até mais porque eles são totalmente ignorantes, como Jeff O menciona . Quando isso acontece, você tem tempo suficiente para consertar as coisas. Não tente fazer uma única voz da razão ser ouvida por um peido cerebral coletivo. Se você pode fazer isso com eficiência, seu lugar é no congresso, não atrás de um software de escrita de mesa.

Como as ações falam mais alto que as palavras, você pode:

  • Mostre (com cenários de teste) por que o design falhará em circunstâncias normais. Provavelmente, isso resultará em uma reunião menor, na qual você é quem está apresentando, e provavelmente é tudo o que você precisa para ser ouvido.

  • Mostre um produto concorrente que lide adequadamente com o que o grupo pensava serem apenas "casos de canto". Você ficaria surpreso com o quanto o Google antecipa erros em seu programa de planilhas, por exemplo.

  • Reitere o último projeto que exigiu uma reescrita inicial uma semana antes do lançamento.

Em outras palavras, o primeiro passo, não importa o que você faça é lidar com indivíduos ou com um grupo (muito) menor. Se suas preocupações são realmente válidas, tenho certeza de que serão melhor recebidas uma ou duas semanas após o desenvolvimento. Apenas, como você observou, evite a posição 'eu te disse'.

Tim Post
fonte
1

Se possível, revise o design antes (ou mesmo depois) da reunião e converse com os designers em particular. Abater as pessoas em uma reunião na frente de todos os seus colegas tende a torná-las instantaneamente defensivas e de mente fechada sobre suas sugestões, e pode levar a uma reputação de "criador de problemas", mesmo que você ache que está sendo útil.

Uma maneira boa (mas geralmente difícil) de apresentar "críticas" é fazer perguntas importantes - deixe a outra pessoa tentar responder à sua pergunta e perceber a falha por si mesma. Então, parece muito mais com a própria idéia e é mais provável que a levem adiante. Novamente, isso funciona melhor em discussões privadas, mas pode ser um caminho mais diplomático e eficaz em uma situação de reunião (Observação: tente evitar entrar em uma discussão ou uma longa discussão para convencer as pessoas na reunião. Basta transmitir a ideia e tentar Talvez seja melhor deixar de lado e depois conversar com os designers após a reunião para "esclarecer algo que eu não entendi direito" do que ser "o cara que fez 30 minutos simples" reunião desperdiçar minha manhã inteira ")

Outra abordagem é enviar por e-mail suas sugestões (diplomaticamente) para o designer principal (ou uma lista de distribuição relevante, porém pequena). Isso pode ajudar a considerar suas idéias e também fornece uma "trilha de papel" para apoiar qualquer situação de "eu te disse" no futuro (se as coisas ficarem em forma de pêra, você pelo menos terá provas de que tentou ajudar, mas foi mas se as coisas ficarem ruins, você provavelmente não estará trabalhando na empresa certa)

Por fim, lembre-se de que às vezes você pode estar "errado". As pessoas com quem você está conversando podem ter uma compreensão mais clara ou mais completa do design do que você e têm boas razões para a abordagem (por exemplo, fui recentemente acusado por um membro da equipe de criar um design "ineficiente", mas era um design deliberado, como eu sabia que o desempenho ainda seria aceitável, mas reduziria pela metade o custo de desenvolvimento - era uma decisão de negócios e não de qualidade de código). Apenas tente ter uma mente aberta sobre as idéias dos outros - às vezes o que parece ser uma má idéia para você pode ser uma boa ideia por razões que você não considerou.

Jason Williams
fonte
0

Quando encontrar o cenário "que nunca acontecerá", lembre-os de todos os momentos no passado em que eles precisaram consertar os itens "que nunca acontecerão". Mas você tem que ter cuidado para não aparecer como "eu te disse". Acho mais eficaz trazer à tona problemas passados ​​(e quão caros e dolorosos eles eram para consertar) ao discutir por que você acha que devemos fazer algo agora para este projeto como exemplos de por que você acha isso importante antes que eles tragam o "que" nunca vai acontecer "citação.

Acho que talvez o seu problema seja você dizer que menciona casualmente uma maneira de evitar um problema. Talvez você deva vir munido de mais informações e mostrá-las com mais detalhes por que isso representa um risco para o sistema. Às vezes, isso significa abordar o assunto em uma segunda reunião depois que você tiver tempo para fazer uma pequena pesquisa. Crie um argumento de negócios sobre o quão barato é fazer agora e vice-versa quanto é caro fazer mais tarde.

HLGEM
fonte
E, em algum momento, você tem que viver com a filosofia de que não tem tempo para fazer o que é certo, mas há muito o que fazer.
Jeffo
0

Parece que sua melhor aposta é trabalhar para chegar a uma posição de líder de equipe. Use essas oportunidades para apontar para os poderes que você viu que aconteceriam e que poderiam ter sido evitados. Você não precisa vender sua equipe atual a descoberto.

Kavet Kerek
fonte
0

O "casual" em "mencionar casualmente os buracos" parece ser um problema. Tente usar (ou trazer, se não existir) algum processo escrito para analisar os riscos do projeto. Normalmente, o resultado de uma reunião de análise de riscos é uma tabela simples de duas colunas: o risco e qual é a estratégia acordada para atenuar o risco ("achamos que isso nunca acontece" é uma atenuação aceitável; o importante é registrar o pensamento atual sobre o assunto na época). Verifique se seus problemas estão registrados como riscos. Os riscos devem ser revisados ​​regularmente; é provável que algumas pessoas tenham chegado ao seu ponto de vista muito antes da crise realmente acontecer e uma revisão de riscos funcionará como um "OMG que acontece"; seríamos loucos de continuar assim "catalisador. A longo prazo, uma trilha de papel é uma evidência útil para dizer" olha, parece que temos um problema institucional aqui "e conseguir atitudes para projetar ou o que mudou.

timday
fonte
0

Como implementar suas idéias

O primeiro das reuniões refere-se a problemas como desafios. Você corrige problemas, supera desafios. Desafios são coisas boas, problemas não são.

Comece devagar e use esta técnica em um único desafio de cada vez. Da próxima vez que você quiser que seu chefe adote uma de suas idéias, faça o seguinte:

  • Desenvolva três abordagens semelhantes, mas diferentes
  • Diga ao seu chefe que você precisa da ajuda dele com algo
  • Explique que você não tem certeza de qual dos três métodos é o melhor curso de ação para resolver o problema
  • Peça a ele para ajudá-lo a escolher um dos três

1. Isso é extremamente poderoso. O que você está fazendo é oferecer opções, não um ultimato. Ultimatos, na maioria das vezes, não são abatidos porque não é idéia deles e só há uma opção.

2. Seu uso das palavras é muito importante aqui. " Eu preciso da sua ajuda ".

3. Deixe o chefe escolher "A", "B" ou "C". De fato, deixe o chefe criar a opção "D", retirando seções de "A", "B" e "C". O que você está fazendo é deixar seu chefe fazer uma escolha.

Nesse ponto, você pode se importar menos com a opção que ele escolher, porque são todas as suas idéias. Ele pensará que está realmente resolvendo o problema porque você deixa a decisão se tornar dele.

Michael Riley - também conhecido por Gunny
fonte
0

Tenha Proof of Conceptsua ideia implementada. Se você mostrar à sua equipe algo funcionando e resolver o problema atual em mãos, eles irão gostar.

Rachel
fonte