Olá Habr!
Meu nome é Ekaterina, sou líder da equipe de cobrança do serviço MySklad.
Há cerca de dois anos e meio, a equipe de desenvolvimento da MyStore era composta por 20 pessoas. Durante esse período, triplicamos, desde o início de 2019, temos três novas equipes. No contexto de um crescimento rápido, tivemos que mudar o modelo de treinamento "o líder da equipe dirá e mostrará tudo pessoalmente" para um modelo mais escalável.
Se você também encontrou um problema desse tipo e quer descobrir como o solucionamos, seja bem-vindo ao gato!
Como era antes
Quando cheguei ao MySklad, há dois anos e meio, meu treinamento era caloroso, mas não muito produtivo. Timlid enrolou-se em uma cadeira à minha mesa e me disse: como configurar o ambiente de trabalho, quais componentes estão no projeto, como eles interagem, como funciona no produto, é testado e desenvolvido.
Quando um novo desenvolvedor da equipe aparece a cada seis meses, essa abordagem funciona bem - o novo funcionário se comunica muito com o líder da equipe e os desenvolvedores seniores e rapidamente conhece a equipe. Mas levou muito tempo para o líder da equipe e os desenvolvedores seniores colocarem o recém-chegado em operação, embora, na realidade, todos tenham dito a mesma coisa.
A partir de algum momento, os recém-chegados começaram a chegar não um aos seis meses, mas duas ou três pessoas por mês. O tempo de integração começou a demorar mais e, no final, escrevemos o primeiro artigo para iniciantes - contamos como configurar um ambiente de trabalho. Antes deste artigo, demorava três dias para implantar o ambiente de desenvolvimento e conhecer o projeto, agora duas horas são suficientes.
0 dia na empresa
Antes mesmo de o novo funcionário trabalhar, resolvemos vários problemas importantes:
Equipa Como regra, mesmo antes da entrevista, tentamos decidir em qual equipe a pessoa trabalhará. Se um dos líderes de equipe gostou do candidato, ele conduzirá uma entrevista e considerará uma pessoa de olho em sua equipe. Obviamente, levamos em conta as necessidades de equipes, habilidades e os desejos de um novo funcionário - alguns estão mais interessados no back-end, outros adoram a interface do usuário.
Local de trabalho. Um novo funcionário deve ver imediatamente um laptop e tudo o que é necessário para trabalhar em sua mesa. Ele não deve tropeçar nos administradores e nocautear o equipamento através de bilhetes e pedaços de papel. No MySklad, no dia do trabalho, um recém-chegado já preparou um local de trabalho com um laptop, monitor e mouse, um notebook da empresa com uma caneta e uma caneca legal. Assim, o funcionário pode começar imediatamente a configurar o ambiente de trabalho.
Acesso a recursos corporativos. Forneça imediatamente acesso a correio, Slack, Gitlab, Confluence e outros.

Vá para o lado do MySklad - temos canecas e deliciosos refrigerantes
1 dia na empresa
O objetivo do primeiro dia útil é familiarizar-se com a estrutura organizacional da empresa e obter respostas para perguntas organizacionais. A maioria das informações necessárias é armazenada no Confluence. No final do dia, o novo funcionário deve ter um ambiente de trabalho personalizado e começar a se familiarizar com a estrutura do projeto.
Na prática, fazemos isso. No início do dia, Eichar envia um artigo ao novo funcionário com informações úteis: como preencher corretamente um perfil em Slaka; para quem executar, se o monitor quebrar, o notebook acabar, você estará perdido, confuso e não sabe o que fazer. Spoiler: para timlid e o mesmo eycharu.
Além disso, fornecemos links para artigos com assuntos organizacionais comuns. Recomendamos que você se familiarize com eles no primeiro dia e entre em contato com eles enquanto trabalha na empresa.
Aqui está a estrutura das informações com as quais apresentamos o novo desenvolvedor no primeiro dia. Você pode usar essa estrutura se desejar criar documentação semelhante para sua empresa ou equipe.
Para um novo funcionário:
- Ferramentas básicas para o trabalho. Fornecemos links para correio corporativo, Slack, calendários, Jira.
- Regras para preencher um perfil em Slaka.
- Regras para preencher a assinatura no correio (opcional).
- Estrutura organizacional da empresa e plano de assentos no escritório. Para que o novato esteja sempre ciente de quem, sobre quais problemas e em que direção seguir.
Geral:
- Salário. Horário de competência, regras para dividir por salário e adiantamento.
- Hospital Como pagar e o que fazer com a licença médica.
- Férias Todas as instruções necessárias e aplicação de amostra.
- Treinamento de remuneração. Como, quanto e a quem ir, se você de repente quisesse assistir a uma conferência ou cursos.
- VHI. Quando, como, o que está disponível, a quem perguntar.
- Outros pães. Aqui, sobre o horário de trabalho, a capacidade de trabalhar remotamente, a remuneração das refeições e, em geral, sobre tudo o que você ainda deseja dizer a um novo funcionário.
Todos os artigos organizacionais são maximamente compactados e estruturados. Neles, coletamos apenas o mais necessário para uma vida adequada no escritório. Uma leitura mais ou menos cuidadosa leva cerca de uma hora.
Nesse ponto, o iniciante já está orientado no escritório e entende quem deve enfrentar um problema específico. Se os cookies terminarem, ele não os procurará nos administradores.
Em seguida, o líder da equipe dá instruções ao novo funcionário:
Comum a todas as equipes de instalação do local de trabalho. Ele diz como descarregar o projeto, baixar os componentes necessários e quem pode ajudar a iniciar o projeto localmente em um laptop e verificar seu desempenho. Essas etapas são seguidas por links para repositórios.
Separe para uma equipe específica. Ele contém requisitos específicos para trabalhar em tickets, conduzir uma revisão e enviar um ticket para teste. Por exemplo, temos status e tipos de ticket personalizados no Jira. Eles podem confundir até a pessoa que trabalhou anteriormente com Gira. Portanto, coletamos em um único local os requisitos que todos os tickets criados no bugtracker devem atender.
Essas ações são estruturadas na forma de uma pequena lista de verificação:

Os links contêm artigos que descrevem itens específicos da nossa empresa ou de uma equipe específica
Demora em média de três a quatro horas para se familiarizar com os artigos técnicos e iniciar o aplicativo localmente. Como resultado, o recém-chegado possui um ambiente de desenvolvimento totalmente configurado e está pronto para começar a desenvolver o primeiro ticket. Mas antes disso, no final do dia, organizarei uma pequena manifestação com um novo funcionário: darei as principais orientações do trabalho da equipe, responderei perguntas sobre o material estudado durante o dia.
1 semana na empresa
Na primeira semana na empresa, um novo desenvolvedor se familiariza com as principais funcionalidades do aplicativo e faz os primeiros tickets.
Para me familiarizar com a funcionalidade do projeto, tenho uma pequena lista de verificação separada:

Com isso, o desenvolvedor começa a entender os principais pontos do aplicativo, a localização no código dos principais pontos de entrada, pode navegar por conta própria.
Em seguida, o primeiro ticket é emitido para o iniciante em desenvolvimento. Seleciono tickets para novos desenvolvedores com antecedência e faço uma pequena lista deles no Confluence. Isso é importante e aqui está o porquê.
Em cada ticket, verifico que todas as descrições eram compreensíveis. Não deve haver definições específicas do produto; se forem, devem ser acompanhados de links para a documentação. A lista gerada de tickets permite que o novo desenvolvedor execute tarefas por conta própria sem perguntar aos colegas - todas as tarefas nesta lista estão prontas para o trabalho. E o mais importante, o plano de desenvolvimento das tarefas para o próximo mês é imediatamente visível.
No processo de trabalhar em um ticket, um novo desenvolvedor pode verificar artigos recebidos anteriormente, enviar o ticket para revisão e teste. Com essa abordagem, já na primeira semana, a tarefa finalizada vai para o prod, e o desenvolvedor recebe feedback da decisão tomada por ele.
1 mês na empresa e além
Se você pensou que nosso sistema com listas de verificação e bilhetes leva uma pessoa a nadar solitário, não é assim. Desde o primeiro dia, o líder da equipe cuida do recém-chegado, solicita os componentes do produto, compartilha artigos da base de conhecimento que ajudarão a resolver o problema.
Se o desenvolvedor puxar, no primeiro mês já podemos confiar uma grande tarefa de arquitetura.
Durante o período do teste, realizamos várias reuniões presenciais: no final da primeira semana de trabalho, no final do primeiro mês e no final do julgamento. Trocamos feedback sobre eles, compartilhamos planos para tarefas e ajustamos o que pode dar errado. E geralmente dizemos: "Ótimo, continuamos trabalhando!"
Resultados
Com a ajuda da documentação do produto e da empresa, listas de verificação para integração e instruções para configurar o ambiente de trabalho, reduzimos bastante o período decorrido antes do desenvolvimento do primeiro ticket. Agora, o lançamento do primeiro pequeno bilhete já ocorre nos primeiros dias de trabalho e, antes da introdução do onboarding, demorava cerca de duas semanas.
A introdução de reuniões provisórias durante o período experimental também ajudou muito. Agora, corrigimos os problemas que surgem imediatamente e não esperamos o final do período de teste. Tornou-se mais fácil para nós resumir os resultados intermediários e finais e para os iniciantes entrarem no trabalho.
Os Timlids começaram a gastar menos tempo em uma história oral sobre coisas básicas - nós os registramos em artigos. Agora você só precisa ficar de olho nos iniciantes para usar as informações corretamente. Também conseguimos escalar a contratação - a equipe de desenvolvimento triplicou em dois anos e meio.