ti-enxame.com

Devo aceitar um trabalho se a programação em pares for necessária?

Foi-me oferecido um trabalho interessante, mas há uma grande ressalva para mim: eles usam programação em pares.

Eu odeio a idéia de programação em pares e provavelmente não sou adequado para isso: gosto de fazer pausas frequentes, odeio ver alguém programando (eu constantemente cutucava o par para me codificar), tenho que estar na íntegra controle da máquina em que estou trabalhando, gosto de ouvir música e, basicamente, não gosto de ficar preso a outra pessoa. Eu nem sou uma pessoa social.

No entanto, nunca trabalhei com programação de pares verdadeiros (além de algumas vezes por um curto período de tempo para ajudar alguém ou resolver uma tarefa complexa juntos) ... então é realmente uma programação de pares tão ruim assim? E, dada a minha atitude, devo recusar o emprego ou devo deixar o meu atual e tentar?


Para as pessoas que perguntaram: estou procurando um emprego em que o design e o desenvolvimento formal sejam usados, pois odeio o meu trabalho atual em que estamos "codificando na natureza". A empresa está muito interessada no meu perfil técnico, por isso insistiram que, mesmo quando eu especifiquei, nunca trabalhei com programação em pares e que provavelmente não iria gostar (além de ser um programador solitário não sociável, não gosto e acredito no próprio conceito de programação em pares).

29
Wizard79

Com base nos seus vários comentários aqui, você parece ter uma perspectiva/disposição semelhante a mim mesma sobre o assunto. E eu experimentei a "Programação em Par". E eu certamente não ingressaria em uma empresa que exigisse que eu mordesse um escorpião. :)

O que eu recomendaria é: Vá com seu intestino.

Se a empresa forçar você a fazer a programação em pares e você souber que não deseja, não participe.

Se eles lhe derem a oportunidade de mostrar que você pode produzir um trabalho melhor mais rápido do que qualquer um dos dois desenvolvedores atuais juntos, vá em frente e prove.

Antes que você decida definitivamente, eu certamente concordaria com a recomendação de que você pede para conversar com os desenvolvedores existentes lá e sentir como eles são pessoas. (Eu provavelmente recomendo isso para qualquer novo trabalho, independentemente das metodologias usadas.)

16
Peter Boughton

Adivinha o que - ninguém gosta de programação em pares no início.

Quando tentei programar em pares, eu era contra a ideia e tinha muitas objeções semelhantes às suas. Não gosto de ver alguém codificando, gosto de ouvir música, sinto que vou trabalhar mais rápido sozinha, não quero parar e me explicar constantemente, etc etc etc.

Então eu tentei. E adivinha? Ainda sugado. Estávamos tendo todos os tipos de problemas - eu queria trabalhar horas diferentes para o outro cara, tivemos diferentes configurações do teclado e atalhos, nossos mesas não funcionou muito bem para programação em pares, etc.

Isso durou cerca de uma semana. Durante essa semana, reescrevemos todo o sistema de login herdado de um aplicativo distribuído. Tivemos que aprender como alguns problemas de threading seriamente difíceis funcionam, descobrir como funcionavam os sumidouros remotos, alterar toneladas e toneladas de código legado para trabalhar com o nosso novo módulo de login e executar algumas das codificações mais agitadas que eu já fiz em minha carreira. Após uma semana disso, nós o implantamos .. e tudo funciono. Nem um único erro . Nenhum.

Foi quando eu imaginei que poderia haver algo nesse absurdo de programação de pares. Começamos a fazer mais programação em pares. Nós até começamos a forçar todos a trabalhar em pares. Balançou. Provavelmente aprendi mais em um mês fazendo isso do que nos 2 anos anteriores . Os outros problemas não foram embora. Às vezes, você fica preso a um par que não gosta. Vai acontecer. Às vezes, você luta para encontrar horas de trabalho sobrepostas. Às vezes, você quer apenas trabalhar por conta própria. Mas as vantagens da programação em pares são simplesmente incríveis.

Desde então, eu sempre tentei fazer o máximo possível de programação em pares. É simplesmente a melhor maneira de aprender. Essa empresa obriga todos a fazer programação em pares? Onde me inscrevo? Parece-me que eles são realmente esclarecidos e você estará em um ambiente de trabalho muito intenso. Impressionante.

Dito isto, verifique se os pares são rotacionados com frequência. Você não quer ficar preso ao desenvolvimento com outro desenvolvedor por meses a fio - ficará louco. Somos todos humanos, afinal. Além disso, verifique se essa é uma prática contínua há algum tempo. Se não é, não é o fim do mundo, mas se é uma prática aceita, é uma enorme luz verde.

Confie em mim, você quer trabalhar para uma empresa como essa.

30
Jaco Pretorius

A programação em pares é uma ótima ferramenta! Pode ser muito mais eficiente - duas cabeças são melhores que uma - e uma ótima maneira de aprender novas técnicas. Claro, existem outros benefícios também. Mas, se você não está comprando, não terá nada com isso. Dada a sua atitude, parece que você não se encaixaria nela e provavelmente seria uma perda de tempo. Parece que sua mente já está decidida antes mesmo de você tentar.

18
Muad'Dib

Vejamos isso de outro ponto de vista: dada a sua predisposição, você provavelmente está fazendo um desserviço ao empregador. Eles certamente não querem contratar alguém que "odeie" uma de suas práticas de desenvolvimento. Você os informou de sua perspectiva, considerando um ambiente de colaboração tão estreita? Caso contrário, você está potencialmente se deturpando.

Como empregador, eu ficaria muito frustrado em contratar alguém que soubesse, entrando, que eles não ficariam felizes com as práticas de desenvolvimento que implementamos. É uma receita de descontentamento e frustração para todos os envolvidos.


Editar Dado que eles entendem de onde você é (e estão dispostos a levá-lo, como você mencionou no seu comentário), por que não discutir como você se sente com alguns desenvolvedores da empresa? É possível que eles sejam capazes de resolver quaisquer preocupações ou preconceitos que você tenha contra o PP. Também é importante que eles saibam que você não está muito interessado na ideia, já que trabalhará com eles em período integral.

Também lhe dará a oportunidade de aprender algo sobre as pessoas com quem você trabalhará tão de perto.

Se todos estiverem a bordo, eu certamente defenderia PP pelos mesmos motivos mencionados nas respostas aqui. Você tem responsabilidade imediata pelo que está escrevendo; outro conjunto de olhos em seu código provavelmente detectará defeitos ou pontos problemáticos que, de outra forma, você poderia perder; você obtém grande exposição à perspectiva de outra pessoa sobre codificação (e fornece sua própria experiência); e o resultado final geralmente é muito melhor do que você esperaria.

Agradeço seu viés contra o PP; há momentos em que eu não quero nada além de ficar sentado em um computador batendo em um problema, e PP fica frustrante (eu também sou um introvertido, o que significa que PP me deixa um pouco mais cansado) final do dia) porque alguém está sempre lá. Dito isto, os resultados, na minha experiência, falam por si e sou muito mais amigável com isso regularmente.

10
bedwyr

Eu tentei programação em pares e odiava. Partilho quase todas as dúvidas e preocupações que você manifestou contra. Eu me demiti por esse mesmo motivo.

Meu conselho pessoal é sempre contra o par e, dada a sua atitude, recomendo fortemente que você nem tente.

9
Wizard

Parece que você definitivamente não está empolgado com a programação em pares, mas o fato de você ter feito a pergunta me levaria a acreditar que você está mantendo uma mente aberta para isso.

Por que não ser sincero com o empregador e deixar que ele saiba como você se sente. Se eles ainda pensam que você é o candidato que deseja, você pode sugerir um teste de 2 semanas (ou qualquer que seja o período de tempo) para verificar se o seu sentimento inicial é válido ou não. Se o empregador recusar, não parece que você realmente queria começar o trabalho, portanto não há grandes perdas. Se o empregador concordar, você saberá pelo menos definitivamente de uma maneira ou de outra para o próximo emprego.

5
Walter

Recentemente, fui a um retiro de código de programação em pares. Eu não uso no trabalho e sou muito novo nisso. Eu sou como você no sentido em que gosto de ter controle da minha própria máquina. Vários programadores que programam em pares muitas vezes enfatizam que a programação em pares melhora significativamente as habilidades de codificação de alguém porque você recebe feedback constante, seu código está sendo constantemente revisado e é menos provável que você escreva código hacky. Concordo com o fato de que é uma mudança significativa para alguém que nunca programou em pares antes. No entanto, é difícil ter uma opinião forte sobre o assunto, a menos que você tente por um longo período de tempo.

4
ysolik

Eu odeio a idéia de programação em pares

...

Na verdade, nunca trabalhei com programação em pares

Você deve esclarecer isso primeiro.

Você não pode dizer que não gosta de algo sem tentar. Pessoalmente, não gostei do molho de tomate até que realmente o provei.

4
user2567

Eu sou um pouco germofóbico. Eu odeio a idéia de alguém tocando meu mouse e teclado. Eu odeio a idéia de tocar o mouse e o teclado de outra pessoa. Dou um longo caminho ao redor do perímetro do complexo de escritórios, em vez de atravessar o pátio para chegar à cafeteria só para não precisar tocar em nenhuma maçaneta da porta.

Por outro lado, gosto do conceito de programação em pares. Eu posso aprender algo interessante. Ou eu poderia instruir. De qualquer forma, seria uma boa experiência.

Minha proposta (para mim): emparelhe a programação à distância. Use o Office Live Meeting e compartilhe sua tela. Cara fica em sua mesa, eu fico na minha.

3
Anthony Pegram

Existe alguma maneira de fazer alguma programação em pares de forma independente, para ter uma idéia melhor? Parece haver pessoas que gostam de programação em pares e outras que não gostam, e antes de se comprometerem com um trabalho que usa a programação em pares, você realmente quer ter a sensação de que pode fazê-lo.

Como alternativa, você pode conversar com o gerente de contratação ou com alguém em uma posição semelhante e conversar sobre isso. Eles podem ter uso para um programador sem par. Eles podem ter experiência com pessoas que se sentem negativas em relação à programação de pares. Diga ao gerente por que não se sente à vontade com a programação em pares, mas enfatize que você não tem experiência e está muito interessado no trabalho.

No momento, você está na melhor posição de negociação possível com a empresa: eles ofereceram e você ainda não aceitou. A empresa tem interesse em contratá-lo e é muito improvável que o abandone apenas porque você precisa conversar com alguém da empresa primeiro.

2
David Thornley

Se você já conhece a tecnologia, vai odiá-la. Mas se você não conhece a tecnologia, aprenderá com a PP. Se você não o conhece e não faz PP, fica sentado lá e não consegue fazer nada.

O pior caso possível é que ambas as partes o conheçam e isso se transforme em uma corrida ou um concurso de mijar.

0
oregon111