Como posso tornar a vida de um novo contratado confortável? [fechadas]

36

Como um membro sênior de uma equipe de software que, infelizmente, tem pouca documentação por razões legadas, quais são as coisas que alguém pode fazer para tornar um novo contratado confortável?

Eu tenho planejado sessões de depuração com a pessoa em pedidos específicos de defeitos / recursos para que ele / ela conheça o código base. No entanto, a base de código é muito grande, e é apenas uma quantidade fixa de código que posso expor a pessoa dessa maneira.

Estou procurando sugestões nos dois casos em que o novo contratado é um graduado recente ou um profissional experiente.

    
por Fanatic23 14.05.2011 / 06:49
fonte

7 respostas

31

Isso realmente se aplica a qualquer novo contratado, seja ele novato ou tenha ampla experiência no setor:

  1. Certifique-se de que você esteja acessível. Se você está muito ocupado para ajudá-los a se familiarizar com o seu sistema, atribua um mentor para eles. Certifique-se que o mentor é gentil e disposto a fazer coisas como sair para almoçar com o novo contratado. O trabalho do mentor é responder a quaisquer perguntas que o novo contratado possa ter e fornecer uma ajuda quando necessário.
  2. Assegure-se de que quaisquer tarefas designadas a elas tenham o menor número de dependências possível. Não há nada que faça com que alguém novo no seu sistema (novo ou com mais de 5 anos de experiência) se sinta sobrecarregado mais do que atribuindo-lhe uma tarefa que tenha dependências espalhadas pelo seu sistema (que eles também precisarão aprender para concluir sua tarefa)
  3. Tenha alguma forma de lista de contato / propriedade disponível por meio de um site de intranet ou algo do tipo. Novas pessoas (especialmente freshers) são geralmente bastante hesitantes em perguntar "quem eu pergunto sobre x sub-system?". Se há uma lista fornecida para eles, eles estão muito mais dispostos a enviar um e-mail ou falar com eles diretamente, sem ter que passar por uma cadeia de pessoas para encontrar o caminho certo.
  4. Obter documentação para cima . Aplique padrões de codificação que incluam comentários que possam ser analisados com um utilitário como o Doxygen. No mínimo, isso fornecerá aos novos contratados a capacidade de navegar pela sua API. Se você usar um IDE como o Netbeans, o uso do formato de comentários do Javadoc fornecerá documentação junto com seu preenchimento de código. Inestimável ao aprender um novo sistema.
  5. Algumas das boas-vindas a reunião / almoço / trote / etc. Entregar alguém em sua mesa sem algumas cortesias pessoais básicas pode deixá-lo se sentir um pouco distante da equipe.
por 14.05.2011 / 07:25
fonte
10

Acho que posso ajudá-lo com isso. Quando eu tinha 18 anos, meu primeiro emprego foi na posição de Jr. .Net Developer. Eles tinham uma estrutura muito grande e ele me incentivou a aprender um curso intensivo sobre CAB e, quando o primeiro projeto chegou, esperava-se que eu estimasse o projeto e aprendesse o SqlServer e sua estrutura. O que tornou essa experiência maravilhosa foi que meu desenvolvedor Sr. esteve presente durante todo o processo, desde as estimativas, até o SqlServer, até a estrutura deles. Eu aprendi o que eu precisava aprender de uma maneira muito oportuna porque eu era capaz de usá-lo como um recurso para perguntas e ajuda. Lembre-se, isso também foi feito enquanto eu estava no Colorado, e ele estava na Califórnia. (Desenvolvimento remoto). Ele me fez ler whitepapers no CAB, apontou-me para bons recursos, etc, então não é como se ele tivesse que fazer todo o ensino, mas quando se tratava de perguntas, ele estava lá. Bottom line, você precisa de alguém para ser o suporte para seus desenvolvedores Jr. Especialmente se você quiser que eles aprendam e cresçam com a empresa e tenham uma boa relação de trabalho. Eles queriam que eu me mudasse para a Califórnia, porque eles estavam satisfeitos com a taxa em que eu era capaz de aprender e progredir, e meu trabalho, infelizmente eu não pude fazer a mudança devido ao custo / etc.

Essa experiência realmente também criou uma característica em mim. Agora estou desenvolvendo software por conta própria com sucesso para empresas e fundações em minha cidade local e ainda tenho apenas 21 anos de idade. Foi o melhor primeiro emprego e sou extremamente grato a Tom Anderson na RenEvo Software & Designs (quem foi meu pai desenvolvedor). Um mentor incrível.

    
por 14.05.2011 / 08:05
fonte
4

A empresa com quem estou agora, a IMO, faz certo para novos contratados. Eis algumas das coisas que vi como eficazes.

Mentores

Talvez um pouco errado, porque alguns desenvolvedores experientes podem não achar que precisam de um, mas temos 1 pessoa que é designada para ser seu mentor. Essa pessoa deve estar disponível para responder a qualquer pergunta que você possa ter. Funciona melhor se eles se sentarem perto do novo contratado. O ponto principal de um mentor é que os novos contratados, especialmente os juniores, estejam confortáveis o suficiente para não cair na armadilha de não fazendo perguntas suficientes .

Documentação

Você já mencionou isso, mas a documentação pode ajudar. Nós temos um documento em nosso wiki aqui que basicamente descreve suas duas primeiras semanas no trabalho. Quando você termina suas duas primeiras semanas de trabalho, você se envolveu, conseguiu o terreno e ficou confortável trabalhando lá.

    
por 14.05.2011 / 16:21
fonte
1

Paciência

Entrar para uma nova empresa pode ser bastante assustador, especialmente se você tiver um novo produto para aprender e usar ferramentas diferentes para o que está acostumado. Dê-lhes tempo para se adaptarem ao novo ambiente e obter velocidade. Atribua tarefas a eles, mas esteja ciente de que isso levará muito mais tempo do que um programador experiente normal levará.

Suporte

Você não precisa necessariamente atribuir um mentor dedicado a eles, mas tenha certeza de que há muitas pessoas por perto que podem oferecer ajuda quando precisarem.

Todos têm maneiras diferentes de aprender, alguns podem achar que precisam de um mentor, outros podem achar que um mentor os retarda. Não existe um tamanho único para todas as soluções, então, em vez disso, deixe-os encontrar seu terreno e apoiá-los, e seja paciente ao aprender as cordas.

    
por 17.10.2011 / 13:31
fonte
1

Eu comecei em um novo trabalho há 4 meses, e eu realmente acho que meu novo local de trabalho fez um ótimo trabalho com esse novo contratado.

Amigo

Eles têm um chamado "programa de amigos", onde os desenvolvedores podem se inscrever para ser um amigo / mentor para novos funcionários. Quando um novo desenvolvedor é contratado, um desenvolvedor da mesma equipe (que se inscreveu para ser um amigo) é apontado como o amigo / mentor do novo cara. É de sua responsabilidade colocar o novo cara em funcionamento, ajudá-lo com os problemas que ele vai encontrar, ir almoçar com ele, apresentá-lo ao time e assim por diante.

Baixa dependência

Isso também foi mencionado anteriormente, mas comece com tarefas que não são críticas e muito difíceis de fazer, sem total conhecimento do código-base. Não há nada pior do que ser jogado em uma base de código que você não conhece e, em seguida, precisar executar a partir do primeiro dia. Se possível, faça atribuições que sejam relativamente fáceis e abrangentes em todo o sistema. Dessa forma, ele terá algum conhecimento do sistema.

Você provavelmente tem pequenas tarefas que não teve tempo de fazer, quando escreveu o código pela primeira vez. Dê essas tarefas para ele.

C. Treinamentos de novos contratados

Isso é provavelmente um luxo para a maioria, mas eu trabalho em uma grande empresa que pode fazer isso. Todo mês ou a cada dois meses mais ou menos, algum tipo de treinamento de nova contratação é organizado. É basicamente uma série de apresentações, com o objetivo de dar aos novos contratados algum tipo de conhecimento sobre o sistema, como os testes são feitos, como o rastreamento de erros funciona e assim por diante.

Onde eu trabalho, há muitas equipes diferentes, trabalhando em tarefas completamente diferentes, mas no mesmo software. Um membro de cada equipe é designado para fazer uma apresentação sobre sua parte do software, onde eles dão uma introdução ao que essa parte faz, como funciona e assim por diante. Além disso, há treinamentos em testes (estou trabalhando como testador) sobre como os testes são escritos, como eles são executados, como são verificados na base de código e assim por diante.

Para resumir, seja gentil com os novos contratados e não espere trabalho sério deles no primeiro mês ou mais. Dê a eles ferramentas para obter ajuda e, se possível, dê a eles algumas apresentações ou vídeos.

    
por 17.10.2011 / 13:54
fonte
1

Desenhe um esboço rápido em um pedaço de papel. Blocos funcionais e dados viajam entre eles. Para que o novo contratado possa manter essa lista à mão e procurar onde está o local que ele está tentando tocar, e quais módulos a afetam hierarquicamente.

Tudo o resto vem com o tempo. Mas é a grande figura que faz você se sentir idiota quando precisa alterar duas linhas de código, mas não tem ideia do que efeitos colaterais podem causar em módulos dependentes, blocos de código, etc.

    
por 11.12.2011 / 23:38
fonte
0

Além do que foi dito antes, identifique as necessidades de treinamento e forneça-o fornecendo tempo, material, aulas internas, livros, etc. As chances não são de que todos saibam tudo. Faça-o ciente de que está tudo bem.

Mantenha-o longe de caras "maus". Normalmente, há pelo menos uma pessoa arrogante em cada organização (esta é a minha lei):

Se você designar um mentor, certifique-se de que o mentor saiba que o trabalho do mentor é ajudar e que ele não está fora de seu coração. Arranje tempo na agenda do mentor para isso.

Acompanhar seu progresso no primeiro mês, inferir seus problemas, se puder.

    
por 16.10.2011 / 22:06
fonte