Objetivo aplicado. Relatório Yandex



Por que as metas são necessárias? Como eles devem ser formulados? Que problemas podem surgir? Por ocasião do Y. Subbotnik Pro, preparei um relatório baseado em vários anos de experiência na definição de metas para equipes em Yandex.



- Vou falar um pouco sobre mim, no contexto de por que você deve ouvir meu relato. Eu lidero uma equipe que agora se chama gestão. Trabalho aqui há muito tempo, já vi muitas coisas - toda a evolução de como a gestão é organizada em uma empresa tão grande, como conduzimos metas.



Também adoro ferramentas e metodologias, desde o desenvolvimento até a empresa como um todo. E recentemente, eu, entre outras coisas, chefio o departamento que se dedica à criação de nossas ferramentas internas.







Aviso: o que não vou cobrir na minha palestra? Não vou lhe dizer todos os tipos de definições enciclopédicas - o que são SMART, OKR, KPI. Tudo isso já foi afirmado centenas de vezes na Wikipedia. Você provavelmente já ouviu todas essas coisas. Caso contrário, uma pesquisa rápida com seu mecanismo de pesquisa favorito lhe dará a resposta. Está cheio de artigos muito bons. Eu verifiquei literalmente esta noite.







O que eu vou te contar? Tentarei compartilhar com vocês uma experiência bastante pessoal. E a experiência que temos em Yandex sobre definição de metas. Vou mostrar-lhe uma série de bons exemplos e tentar fazer advertências - que coisas, parece-me, devem ser levadas em consideração e quais riscos não devem ser pisados.



Esta é uma palestra experimental em uma área que não é muito comum para mim. Portanto, se você fizer perguntas, poderei dizer cada vez mais o que você precisa.



Por que liderar metas?



O que isso tem a ver com você? Em primeiro lugar, espero que existam pessoas entre vocês que definem metas para si mesmas. E acho que será útil para você ouvir sobre a experiência para definir melhor as metas. Em segundo lugar, mesmo que você mesmo não estabeleça metas agora, mas simplesmente os alcance, um entendimento comum da metodologia e dos princípios o ajudará a alcançá-los melhor.



Provavelmente, a apresentação do público define objetivos e conquistas. Eu mesmo pertenço a essas pessoas. Normalmente, a pessoa na posição intermediária está envolvida em ambos os fios. Espero que seja interessante e útil para todos.







Vamos falar um pouco sobre por que definir metas. Tenho várias citações que ouvi em momentos diferentes de diferentes colegas e conhecidos: dizem que tudo isso é burocracia, em vez de definir metas e escrever tarefas, faça normalmente, e tudo vai dar certo. Não há necessidade de inventar nada, não há necessidade de perder tempo com isso.







A segunda sabedoria popular é que você só tem que trabalhar muito, muito duro, pegar mais e jogar fora, não se esqueça de descansar. Esse trabalho árduo vai moer tudo, e não importa quais são seus objetivos. Tudo isso, claro, é verdade. Mas apenas parcialmente.







Mesmo se você for um desenvolvedor muito bom e trabalhar muito, muito bem, ainda chegará um momento em que você não terá mãos suficientes para fazer tudo. E você terá que responder à pergunta: o que fazer em primeiro lugar, o que fazer exatamente agora? Tenho um intervalo de tempo finito e mais precisa ser feito. Precisamos de priorização.



Em segundo lugar, se você é um líder, surge um problema - uma e a mesma coisa pode ser feita de uma ampla gama de maneiras diferentes. E você precisa entender como revisar o que seus subordinados fizeram.



Tenho uma conversa sobre nosso sistema de revisão. Lá eu falo com mais detalhes sobre como nosso RPG interno funciona: com níveis, subidas de nível, classificações, etc.



Veja o relatório


Ciclo da vida



Vamos falar sobre o ciclo de vida. Na verdade, vou passar a uma exposição de como funciona em nosso país.







Eu peguei essas fotos. O que vemos aqui? Certamente, muitos estão familiarizados com os estágios do ciclo de vida de quase qualquer coisa - miramos, atiramos, olhamos onde acertamos. Normalmente no mundo Agile, isso é como o planejamento de sprint. Ou retro, ou demo - quem pode fazer isso.







Mas adoro projetar processos de forma que coisas complexas possam ser expressas por meio de fórmulas e princípios simples e escaladas de forma fragmentada. A imagem com o fractal de Mandelbrot nos dá dicas sobre isso.



O que nós temos? Diferentes partes do nosso processo fractal. Existem intervalos de revisão de seis meses para os funcionários.







A cada três meses - visualização intermediária, em que resumimos os resultados provisórios do período de revisão.







Uma vez por mês, há sinais verdes onde as equipes contam às equipes relacionadas o que aconteceu nos alvos. Isso é necessário para que os comandos sejam sincronizados entre si.







E aqueles sprints de duas semanas.







Como você pode ver, o resultado é uma imagem fractal, muito semelhante à metodologia que você precisa primeiro apontar, entender exatamente o que você vai fazer, fazer e depois olhar o resultado.







Isso é muito importante porque as pessoas que dão os conselhos da sabedoria popular acima mencionados estão fechadas no meio. Eles apenas atiram. Mais ou menos eles não apontam, mais ou menos eles não olham para onde acertam. E isso dá processos muito menos previsíveis e controláveis ​​do que se você seguir esses três estágios simples.



É como se todo relatório tivesse uma introdução, corpo e conclusão. Da mesma forma, toda ação proposital deve ter uma definição de metas, execução e resumo.







Para que esses resultados possam ser somados, para que o estabelecimento de metas também possa ser feito, para se mirar corretamente, é necessária uma propriedade tão importante como a mensurabilidade.



Na história sobre mensurabilidade, darei um antiexemplo. Eu tenho um conceito alado (dentro do Yandex) - metas de "caixa de seleção".



Metas de caixa de seleção





Este é um antipadrão. Seus objetivos provavelmente não serão muito bons se soarem como "fazer uma nova versão do componente X", "iniciar o serviço Y" ou "refatorar Z". Por que isso é ruim?



  • , , . . , , , - : , , , , . , .



    «», — X? ?
  • , . , , . — « X», - .
  • A avaliação do resultado se torna mais complicada. Por exemplo, você precisa avaliar duas equipes. Sem um processo de revisão e calibrações, você não será capaz de descobrir que uma equipe cometeu um erro, no estilo MVP, e a segunda fez tudo bem, por séculos e em grandes detalhes.


Portanto, minha recomendação é tentar evitar metas "checkboxing", tentar traduzi-las em um plano mais mensurável.



Criar uma métrica e definir metas faz parte de trabalhar em uma meta



Pode surgir a questão de que algo é muito difícil de medir. E às vezes você precisa começar a correr. Já está claro que o serviço X ou refatoração Y precisa ser feito, mas ainda não há métricas que permitiriam medir isso. Não entendemos quais metas queremos definir como imagem de destino. Como ser?



Usamos o padrão de que o próprio processo de criação de métricas e determinação de metas já faz parte do trabalho da meta. Não é necessário bloquear o início do trabalho em uma meta se você não a formulou totalmente.







Vou dar alguns exemplos de nossos objetivos no mundo real. A Yandex tem uma equipe que trata da chamada Beleza da Foice, deixando-a ainda mais bonita. Quando ela apareceu, havia apenas uma ideia geral. Aqui está você, tanta gente, faça.



A equipe nem sabia o que é beleza e quantos por cento dessa beleza desconhecida pode ser alterada. No entanto, eles começaram a trabalhar em paralelo. Havia uma opinião intuitiva de que algumas coisas são mais bonitas e vamos fazer isso. E, em paralelo, eles começaram a criar um sistema que medisse essa mesma beleza. E, como resultado, obtivemos um sistema, uma métrica, sobre a qual Anton Vinogradov falou em seu relatório “Beleza Yandex: Design para milhões”:



Veja o relatório


A essência do sistema: fazemos uma comparação lado a lado da versão antiga com a nova. Em seguida, calculamos a soma das mudanças positivas de cada uma de nossas implementações em um determinado período de tempo.



No primeiro semestre de trabalho com esse objetivo, formulamos uma métrica. Fizemos uma visão em porcentagem - um pouco do teto. No próximo semestre, com base no nosso desempenho, já entendemos como essa métrica se move, quais implementações a afetam, o que você pode querer lá.







O segundo exemplo no contexto de trabalho com métricas é um dos nossos contornos mais antigos, a equipe que lida com a velocidade das interfaces.



Quando começou, havia também uma mensagem geral: por favor, faça o carregamento do Sickle mais rápido. Mas como medir se é rápido ou não? Houve reclamações como: “Estou abrindo no meu telefone, algo me parece lento. Os motores de busca dos concorrentes são mais rápidos! " Para começar a fazer este trabalho, não foi necessário formular exatamente a métrica. Nós sabíamos coisas comuns: se você enviar muitos bytes pela rede, executar muitos códigos em JS, demorará muito. Vamos começar a fazer algo e, ao longo do caminho, coletar métricas reais, entender como iremos medi-las.



Há também um relatório sobre isso. Andrey Prokopyuk contou sobre todos os nossos detalhes de como a velocidade é medida em usuários reais e em medições sintéticas internas:



Veja o relatório


Ao mesmo tempo, os caras trabalharam para atingir um objetivo significativo - reduzir esses mesmos bytes.



Meça o incomensurável



A próxima pergunta que pode surgir: bem, queremos medir e é mais ou menos claro na velocidade do frontend - existe uma régua que nos permite detectar bytes. Mas como você pode medir algo geralmente incomensurável? Com a beleza você surgiu lado a lado, e se não houver nada? Por exemplo, você precisa medir a felicidade dos usuários no desenvolvimento interno.







Primeiro, vale a pena pensar novamente. Como eu disse, com a mesma beleza que parecia subjetiva, pudemos derivar uma métrica mais mensurável.



Em segundo lugar, você pode pensar sobre métricas de proxy. Aqui, também o enviarei ao seu mecanismo de busca favorito: você pode encontrar muitos artigos sobre o que é uma métrica proxy e como selecioná-la. Resumindo, a métrica proxy permite que você aproxime indiretamente seu real estado de coisas, para fazer suposições como: "Se continuarmos a ser muito usados, nossa interface provavelmente não será tão ruim."



É claro que isso terá algum grau de erro e permissibilidade. Mas se você impor um número suficiente de métricas proxy, no final você pode obter uma aproximação boa o suficiente, o que não exigirá a criação de uma grande métrica complexa.



Este último foi sugerido nos comentários ao meu relatório anterior: é sempre possível para qualquer assunto muito incomensurável reunir um júri de usuários ou especialistas e pedir-lhes que os avaliem em uma escala. Faça isso regularmente e, assim, obtenha um sistema de coordenadas, uma métrica reproduzível que permitirá que você entenda se está progredindo corretamente. Mesmo essa métrica ainda será melhor do que as metas de "caixa de seleção". Como o Porthos: "Eu luto só porque luto!"



Algumas palavras-chave para ajudar nas pesquisas com usuários: csi nps. Mas acho que a ideia é clara.



Antibug métrica



Outro exemplo é sobre a métrica antibug. Temos um processo especial que nos permite melhorar a qualidade de nossas interfaces e torná-las menos bugs.



Agora vou te dizer como funciona. Vários pontos podem ser ilustrados nele.







Primeiro, construímos gráficos de resumo do número ponderado de bugs para as equipes. Ou seja, contamos o número de bugs que aparecem na janela flutuante e atribuímos pesos a eles na proporção de sua prioridade. Temos menores, triviais, normais, críticos e bloqueadores que diferem uns dos outros por uma ordem de magnitude. O menor e o trivial têm peso 1, o normal tem 10, o crítico tem 100 e o bloqueador tem 1000. O resultado é um gráfico que reflete quantos bugs estão atualmente no serviço, levando em consideração suas prioridades.



Em segundo lugar, começamos a construir esses gráficos separadamente para os bugs que a própria equipe e os testadores da equipe encontraram e para aqueles relatados por usuários externos. Então suspendemos o componente do alvo, executamos o alvo. Dentro de nós, esse processo é chamado de política de zero bug. Mas é claro que zero é um ideal inatingível e cada equipe pode ter um zero diferente a qualquer momento. Lá um limite é definido - que o peso não seja superior a 50 ou 100.



Se uma equipe está apenas começando a trabalhar em um antibug, dizemos que ele deve ser reduzido em 20% a cada mês. São seis meses no semestre, cinco meses para uma queda de 20%, mais mais um mês para manter esse resultado. Assim, é possível que um semestre atinja o valor alvo e tenha um pequeno número de bugs.



A métrica antibug é de 20% baseada no princípio de que deve haver mais bugs encontrados por conta própria do que bugs do usuário. Ou seja, o teste no projeto deve funcionar melhor e os usuários devem encontrar menos bugs do que nós.



O último critério é o cumprimento do SLA de fechamento. Mesmo que você não tenha muitos bugs, mas eles estejam pendurados por um longo tempo, isso pode incomodar os usuários: o número de pessoas afetadas por um bug em produção cresce a cada dia até que esse bug seja corrigido.



E aqui estão dois pontos. Além da metodologia de como medimos, estimamos esse peso e o número de bugs, há outro exemplo de como você pode combinar vários critérios diferentes em uma métrica.



Você simplesmente coloca pesos e porcentagens nesses critérios e diz que um afeta 40%, o segundo 20%, o terceiro 40%. Aqui está um exemplo, e essa métrica permite que o trabalho mais ou menos unificado no antibug seja distribuído entre dezenas de equipes em Yandex.







Voltamos à palavra-chave "equilíbrio". Você tem que tentar encontrá-lo. Vou lhe contar sobre vários equilíbrios, exatamente o fato que você precisa ter em mente quando estiver envolvido no processo de definição de metas.



O primeiro é um equilíbrio entre "poucos gols" e "muitos gols". Não deve haver poucos gols, pois não será ambicioso o suficiente para a equipe. Você simplesmente não utilizará todo o seu potencial. Demais também é ruim: começando em algum ponto, a sobrecarga de reconhecer e manter uma meta se tornará muito grande. Eles vão se acumular no total e vão incomodá-lo.







Temos alguns desses exemplos. Por exemplo, havia uma equipe composta por oito pessoas. Eles tiveram cerca de seis gols. Eles disseram: “Como equipe, não podemos rastrear seis alvos ao mesmo tempo. Precisamos rastreá-los nos sinais verdes, entender constantemente se cada um deles está progredindo bem conosco. Vamos nos dividir em duas equipes de quatro e distribuir esses três gols para uma equipe e os outros três para outra. Este é um método de trabalho que, em última análise, permite que você concentre as pessoas um pouco mais estreitamente em um objetivo específico.



O próximo equilíbrio é o equilíbrio entre nossos desejos e capacidades. Se não houver equilíbrio em uma equipe que está engajada no estabelecimento de metas, muitas vezes há um viés em uma direção ou outra. Suponha que você tenha uma alta administração forte e ele lhe diga: "Definitivamente precisamos fazer isso." E todas as metas são definidas a partir de nossos desejos - queremos que isso aconteça, e tudo o que você quiser, "tire e coloque no chão". Tal situação pode estar carregada com o fato de que esses desejos não estarão alinhados com a realidade e simplesmente não serão satisfeitos.



Além disso, o desequilíbrio é se os marinheiros apreenderam o poder no navio. Então a equipe tentará formular metas de forma que tudo seja preciso, garantido. Como eu disse, isso está repleto de subutilização de seu potencial. Deve haver sempre um desafio, uma saída da sua zona de conforto, um ponto onde você chega. Por meio da tensão, a evolução ocorre. É importante que essa tensão não seja a ponto de romper os ligamentos. Deve estar se desenvolvendo. E esse equilíbrio deve ser buscado.



Também existe um equilíbrio entre a chamada largura e a profundidade. Sempre há uma escolha, o que é melhor - elaborar um objetivo em detalhes, mas apenas um, ou obter muitos objetivos, mas no final não ter tempo para resolver cada um deles pelo menos até certo ponto. Não há nenhum conselho universal aqui, porque as situações da vida são muito diferentes. Alguns fios são muito importantes para suportar pelo menos de alguma forma e, neste sentido, a largura é necessária. Por exemplo, escovar os dentes, comer, praticar esportes, trabalhar são tópicos igualmente importantes. Aqui é impossível dizer - deixe-me escovar os dentes muito bem durante o primeiro mês, três vezes ao dia, no mês que vem vou praticar esportes muito bem, etc.



Mas também existem situações opostas, quando é importante que a gente trabalhe até o fim, é bom encerrar algum assunto e seguir em frente. E não comece dois reparos ao mesmo tempo. Se houver essa oportunidade, você pode primeiro fazer uma coisa, investir bem, segui-la e depois fazer outra.



É necessário um equilíbrio entre as duas formulações: "reorientar-se no tempo para a realidade mudada" e "render-se às primeiras dificuldades". Às vezes, você pode começar a fazer algo e descobrir que as tarefas são mais difíceis do que o esperado. Ou fatores externos aconteceram, como coronavírus ou qualquer outra coisa. É muito tentador, sendo guiado pelo princípio Agile, adaptar-se de forma flexível à realidade alterada e, por exemplo, subestimar seu KPI, desistir de alguns objetivos ou algo mais. Aqui nos encontramos na mesma situação que no estabelecimento de metas inicial, apenas na dinâmica.



Não desista nas primeiras dificuldades, mesmo na dinâmica, ao continuar a alterar a distribuição do peso dos alvos, mas também não bata a cabeça na parede quando já não der resultado.



A última coisa que quero falar neste slide é o equilíbrio entre os diferentes objetivos. Às vezes, os objetivos começam a entrar em conflito uns com os outros.



Neste lugar particular, temos metodologias claras para a troca de um pelo outro. Mas também é importante avaliar o resto, os mesmos objetivos conflitantes a uma distância suficiente. De que forma um poderia trocar um pelo outro?







E algumas analogias e imagens sobre equilíbrio. Ele, na forma em que o formulo para mim, é de dois tipos:



  1. « ». — , , - — , .



    , . : « , ». , , . , : .
  2. «». , , . . , : - . , , . , , .




No final, queria reproduzir tudo o que falei e mostrar os slides novamente. Mas não eram tantos e parecem mais ou menos compreensíveis.



Um breve resumo de todo o relatório: O estabelecimento de metas é difícil. Você pode descobrir que o próprio estabelecimento de metas toma uma quantidade significativa de tempo. Mas vale a pena! Pelo menos este é meu julgamento de valor baseado em minha experiência pessoal.



Estou muito feliz que geralmente chegamos a um sistema com metas e continuamos a evoluí-lo e aprimorá-lo. Todos esses esforços, parece-me, estão valendo a pena.



Pode haver um anúncio da nossa ou de qualquer uma das suas ferramentas, pois pode-se ceder ou pegar qualquer ferramenta para a realização de tarefas ou objetivos. Basta pesquisar em seu mecanismo de pesquisa favorito por [nome da ferramenta, espaço, alvos]. Você certamente encontrará um artigo que descreve exatamente como fazer isso. Obrigado pela atenção. Desejo a todos o mesmo sucesso de rebatidas como neste gif.






All Articles