Como você suporta seu código após o término do emprego?

17

Qual é o processo para deixar uma empresa (ou mesmo um grupo / divisão) em termos de suporte ao código?

É melhor lidar com todas as perguntas? Você concede aos desenvolvedores restantes acesso a si mesmo como um recurso futuro? Se sim, existe uma maneira de não dar acesso total?

Eu experimentei em primeira mão que respostas sobre a arquitetura geral de software do desenvolvedor inicial seriam inestimáveis.

Entendo que, se for necessária assistência séria, torna-se um caso típico de negociação de emprego como contrato de suporte. No entanto, caso seja necessária assistência séria, que medidas você pode tomar para facilitar esse processo de contato com você?

Eu estava pensando em fazer algo como criar um endereço de (YOUR_NAME) _codesupport @ (YOUR_FAVORITE_EMAIL_CLIENT) .com.

Minha situação específica:

Eu sou um estudante cooperativo e, como tal, ando pelas empresas em períodos de quatro meses. Isso significa me apresentar a muitas novas bases de código, além de deixar uma parte justa do código órfão para trás quando eu sair de uma empresa. Eu me sinto mal se eu deixar o código indesejado por aí.

James
fonte
2
Sem ofensas, mas duvido que você consiga algo significativamente complexo no período de quatro meses que qualquer desenvolvedor experiente não conseguiu.
Louis Kottmann
1
@Caleb tem a resposta certa. Exceto: você é um estudante cooperativo, o que significa que, em algum momento, espera conseguir um emprego em período integral nesse campo e está trabalhando com empresas em período parcial para obter experiência e contatos. Então, tempere a atitude " @ # $ @ $ # @%, eu vou embora " com um pouco de " Ei, eu adoraria trabalhar com vocês no futuro ".
Ross Patterson

Respostas:

47

Como você suporta seu código após o término do emprego?

Você não Por isso é chamado de fim .

Se eles ficarem surpresos ao vê-lo passar pela porta e começar a usar o equipamento deles um mês depois de sair, você deve se surpreender ao pedir que eles liguem para você e façam um monte de perguntas um mês depois que você sair.

Ok, mais realisticamente, dependendo da situação, você pode responder às perguntas por telefone ou e-mail um pouco, especialmente se você a) gostaria de voltar para lá, b) é amigo das pessoas que trabalham lá, c ) ainda dependem deles para uma boa revisão, d) sentem-se bastante confiantes de que a empresa não abusará do seu gesto de boa vontade e / ou e) a empresa está disposta a compensá-lo por qualquer suporte adicional não trivial.

Isso significa me apresentar a muitas novas bases de código

Essa é uma boa habilidade para desenvolver - você precisará dela.

além de deixar para trás uma parte justa do código órfão quando eu sair de uma empresa.

Parte do seu trabalho enquanto você ainda está trabalhando lá é documentar o que você fez, ou pelo menos garantir que algumas das outras pessoas que trabalham lá tenham um entendimento claro disso. Isso é algo do interesse da empresa e eles devem garantir que eles tenham o que você precisa enquanto você estiver lá.

Eu me sinto mal se eu deixar o código indesejado por aí.

Não escreva códigos indesejados em primeiro lugar. Se o seu código anteriormente bom se tornar lixo (obsoleto, não é mais necessário etc.) antes de sair, limpe-o antes de sair. Se o seu código não é lixo eletrônico quando você sai, o que acontece depois não é algo com que você deve se preocupar.

Caleb
fonte
1
As considerações B e D são as únicas que me levarão a deixar as informações de contato. Eu realmente não fiz o meu trabalho na saída se eles frequentemente precisavam me ligar mais tarde. Ótima resposta.
2
Muitas vezes, as empresas assumem a responsabilidade da pessoa que está deixando o treinamento para substituir seus funcionários e culpam a pessoa que está deixando por quaisquer lacunas de conhecimento posteriormente. No entanto, é realmente responsabilidade das substituições garantir que elas tenham o conhecimento necessário para realizar seu trabalho. Infelizmente, poucas empresas percebem isso.
Akton
19

Normalmente você se prepara para isso cerca de duas semanas antes da data de término programada. Plano de algum tempo para uma transferência de conhecimento para outro membro da equipe e tentar se certificar de que eles podem suportar o código antes de você embalou acima de sua mesa. Não configure um suporte permanente, colocando suas informações de contato no código. Se a situação é tão séria que ninguém além de você pode consertá-la, eles provavelmente podem obter suas informações de contato do RH.

FrustratedWithFormsDesigner
fonte
5
Sim, mas na realidade é a razão de você avisar seu chefe. É o trabalho deles para garantir que eles sejam cobertos antes de você sair.
Doug T.
9

Treine a pessoa substituindo você o máximo que puder (se houver alguém).

Acho melhor deixar a documentação com o código, de preferência verificada no controle de origem, se não houver um sistema central de documentação. Faça o que fizer, documente o máximo que puder sobre:

  • Como instalar e executar um sistema completamente funcional no computador de outro desenvolvedor
  • Como construir
  • Como implantar

Coloque uma cópia de tudo em um local central.

Envie todos os detalhes por e-mail para todas as partes interessadas .

Eu sempre me certifico de que eles entendam que podem me ligar se tiverem uma pergunta, como aonde isso foi, etc. É bastante comum que eles liguem para você mais tarde e perguntem se você deseja trabalhar ao lado se eles estiverem em uma situação. ligar. Isso depende de você com base em sua nova situação e contrato de trabalho. Não há nada errado em dizer: "desculpe, eu simplesmente não tenho tempo agora". É quase sempre verdade de qualquer maneira.

Scott Whitlock
fonte
2
"Tire uma cópia de tudo", mas siga as leis trabalhistas aplicáveis. Algumas empresas proíbem isso, e você pode criar mais problemas tentando ser útil.
1
Não acho que ele queira dizer "leve uma cópia com você". A maioria das empresas possui um arquivo no qual mantém cópias de versões de software.
Robert Harvey
2
@ GlenH7 - Eu não quis dizer que você deveria levá-lo com você. Vou editar para esclarecer.
Scott Whitlock
Havia uma grande discussão sobre levar ou não o código com você. As preocupações legais (IMHO) são os maiores problemas. Sua edição torna sua intenção muito mais clara, obrigado por colocar isso. Eu recomendo sua resposta novamente, mas, hum, o sistema não me permite por algum motivo. ;-)
3

Algumas coisas que eu gostaria de mencionar.

Nos negócios, o dinheiro está acima dos sentimentos. O empregador geralmente não tem os mesmos sentimentos que você tem do seu próprio lado. Depois que você sai da empresa, o negócio está feito. As negociações e os detalhes do período de aviso prévio são etapas para mitigar seus riscos.

É claro que as pessoas se ajudam com suas escolhas pessoais, mas as empresas realmente não esperam que você volte consertar as coisas para elas, mesmo que você tenha escrito no passado. Mas há exceções, mas isso depende de como você é importante para o trabalho.

Um dos meus amigos havia deixado a empresa há 1 ano e recentemente ele foi contatado por um dos gerentes de projeto para corrigir um problema com o código que ele escreveu há alguns anos. Considerando a recuperação e a complexidade para corrigir o problema, ele era a opção mais fácil. Finalmente, ele os ajudou a resolver o problema; mas por seus interesses pessoais e ética. E note que vários empregadores não podem concordar com isso. ou seja, ele está voltando para sua antiga empresa e resolvendo problemas.

O que você deve notar é que,

  • Quem faz negócios sérios atua profissionalmente nessa situação. Eles não te querem mais.
  • A maior chance de receber uma ligação de ex-empregador é uma ligação pessoal. Normalmente, não será uma decisão organizacional abordá-lo e corrigir o código. Também respeitam o seu tempo e as tarefas atuais antes de perguntar o seu tempo.
  • As empresas corporativas mantêm o máximo sigilo por seu código e design. Eles não querem expor nem mesmo a ex-funcionários.
  • Principalmente, os funcionários que abandonaram a empresa ingressarão em empresas com domínio semelhante. E a ex-empresa e a nova empresa podem ser concorrentes. Se você possui patentes e se baseia na natureza do princípio operacional da empresa, a maioria das empresas não permitirá que ex-funcionários trabalhem com eles, mesmo que o ex-funcionário queira.
  • No seu caso específico, suspeito que um período de quatro meses possa torná-lo muito crítico para a organização e o projeto, a menos que você esteja dando a eles radicalmente algo novo em suas cabeças.
sarat
fonte
+1 por abordar o risco legal da empresa de expor o código a ex-funcionários que não estão mais contratados. Eu nunca pensei sobre como apoio poderia prejudicar uma empresa até agora
James
2

todas as coisas que os outros disseram e depois:

Considere a co-programação .
Sente-se com duas pessoas atrás de uma mesa. Programe tudo em pares. quando um deles (você) sai, o outro ainda tem todo o conhecimento.

Existem muitas outras vantagens, mas esse é outro tópico.

Boris Callens
fonte
Eu realmente gosto desta resposta! Eu adicionaria um link para torná-lo bonito.
Malachi