Em desenvolvimento - cada um por si. Mas às vezes isso leva a um beco sem saída.



Sentei-me por um dia maldito sobre a tarefa. Era necessário projetar um módulo independente, e as pessoas com uma forma severa de perfeccionismo não deveriam receber tarefas de design.

Eu tive uma semana - um infinito inteiro, o que eu não tinha o suficiente. Repetidas vezes, repassava as opções para usar o que precisava fazer, mas a imagem do módulo ideal não se manteve. Sempre houve um caso que mostrou bem: esse design é uma merda. Pensei, toquei violão, tentei escrever, estupidamente no monitor, pesquisei no Google, brinquei com crianças, pensei novamente - a cabeça estava sempre ocupada por um módulo estúpido.

No último dia, eu estava no limite, passei vinte horas trabalhando sem sair. E agora - domingo à noite, eu realmente quero dormir, mas ainda estou sentado e tentando criar um nome adequado para alguma classe no meu pseudo-código, cujo design, é claro, vai para o lixo imediatamente assim que eu o termino, porque é muito imperfeito. Poucas horas antes da dedução, eu não tinha nada além da semana, que foi morta pelas buscas.

Segunda de manhã enviei uma solicitação de recebimento. Ele foi recebido com entusiasmo. Mas do jeito que eu fui ... Eu nunca pensei que ousaria fazer isso.

Eles dizem que o desenvolvimento é um trabalho coletivo. Eu diria de outra maneira: tudo é coletivo no desenvolvimento, exceto o próprio desenvolvimento. Um resultado coletivo, discussões coletivas, sincronizações, onde você fala sobre planos. Mas o processo de trabalhar no próprio código é simplesmente isolado solipsicamente de outras pessoas.

Quando as tarefas são distribuídas (e a descrição da tarefa é 1% do caso), cada uma por si. Você pensa apenas no seu código, escreve sozinho - e Deus proíbe qualquer um de olhar no seu monitor neste momento. Você sai da cabeça das pessoas quando já tem algo para mostrar a elas. Você discute e depois se isola em sua solidão.

Mostrar esboço não preparado - um desastre. É como se você fosse vista não apenas nua, mas sem pele, sem caveira. Eles verão todos os seus pensamentos imperfeitos usuais que ainda não foram tomados em decisões inteligentes.

Ou seja, “trabalho coletivo” não é um tipo de organismo com dez cérebros, onde tudo junto, tudo é dez vezes mais rápido, melhor e banha-se em sinergia. O trabalho em equipe é o mesmo trabalho sozinho, apenas com o ritual de jogar fora feito sozinho.

Nos projetos concluídos, filas de centenas de pessoas são misturadas e, mescladas em um arquivo, perdem a autoria. Mas você não pode vir à equipe e dizer "aqui estão minhas mãos, cerebelo e o arco direito do cérebro, pegue, digite o código com eles". Em uma equipe, cada um faz suas próprias coisas independentemente. Em geral, a solidão da consciência é uma coisa terrível. Rimos da ideia do solipsismo, como se fosse uma religião de membros estúpidos. Mas aqui está a ironia: tudo o que temos para refutá-la é apenas nossa própria percepção subjetiva.

Para se sentir parte da equipe, você precisa trazer os resultados da equipe, falar sobre eles e ouvir. É sempre o caminho de milhares de compromissos. E eu tenho grandes problemas com compromissos.

Aqui está um dos piores: se você deseja trabalhar bem, às vezes precisa escrever um código incorreto para acompanhar os prazos. Eu tentei e não consegui. Não sei se é uma doença, custos ou outra coisa, mas não posso cometer o que considero uma merda. Por um lado, parece que isso não é um problema. A qualidade das minhas decisões cria minha reputação como um cara que trabalha justificadamente por um longo tempo. Eles nunca me dão quebra-cabeças que queimam, porque imediatamente começarei a "foder o cérebro de todo mundo". Eles me perguntam por que, por tanto tempo, explico claramente quais problemas tentei resolver, por que não é trivial e por que era importante fazê-lo de uma maneira realmente de alta qualidade. Eles não me ouvem, mas acreditam em mim.

Por alguma razão, é tão importante que as pessoas pensem - não apenas meus resultados são perfeitos, mas também meus pensamentos. E se alguém vir o meu processo de raciocínio em código bruto, ele me exporá imediatamente.

É claro que muitas vezes me encontrava em situações em que não tinha entendimento ou inteligência suficientes para tornar a tarefa perfeita. Mas sempre acreditei que apenas os fracos pedem ajuda. Isso também faz parte do auto-engano. Alegadamente, para se tornar digno de uma equipe, você deve ser capaz de ser completamente independente.

Em outras palavras, para me sentir satisfeito, quero estar na equipe e sozinho dentro dela. Sinta a contradição? Eu também, mas não posso fazer nada. E o caminho do engano e do auto-engano sempre me pareceu mais agradável do que o caminho do compromisso.

Eu tenho um amigo, também um desenvolvedor. Nunca trabalhamos em um emprego, temos pilhas completamente perpendiculares, mas discutimos muito sobre programação. Trabalhando em aproximadamente as mesmas posições, gostávamos muito de nos encontrar e de nos revermos, como todos somos legais em nosso trabalho.

O momento em que você foi chamado pela primeira vez Senior - fodido, aconteceu conosco ao mesmo tempo. Conversando, ridicularizamos nossos colegas (às vezes inventados), porque nossa amizade com ele sempre continha um alto grau de competição e respeito mútuo. Era impossível vir e dizer: "Antokha, mas hoje eu realmente estraguei tudo". Somos dois impostores que inflam sua auto-estima em uma escala astronômica para serem salvos de sua inutilidade.

Mas quando minha semana de design de módulos terminou, não havia como escapar da inutilidade.

Antokh me ligou no Skype. Eu queria discutir o quão legal ele estava hoje em ser rude com a PMU, que não entende como o desenvolvimento funciona. Aparentemente, eu estava tão desesperada que a auto-estima não funcionou. Eu apenas vasculhei a tela, abri a descrição da tarefa e perguntei: "Como posso fazer isso?" Foi uma violação poderosa do contrato tácito de nossa amizade, mas Antokha simplesmente disse: "abra o IDE".

O código tinha que ser escrito em C #, com o qual nunca havia funcionado, por isso passou pela minha cabeça - passarei muito tempo sem resultado. É melhor dormir e, em um plano para dizer que a estimativa estava errada, continuarei trabalhando. O arquivo de texto acabou de ser aberto no IDE, onde descrevi a última versão do design do módulo. E Antokha de uma vez - "Eu chamaria isso assim". Você pode pegar, o nome surgiu perfeitamente.

Ele começou a fazer perguntas - por que é assim, o que é, como essas coisas estão conectadas. O trabalho começou a ferver. Discutimos muito no processo, mas é como um código de revisão interativo e feito honestamente (quando você não apenas aponta problemas, mas também oferece uma solução). Nós rapidamente deixamos o pseudo-código. Solução, Pastas, Interfaces, Dock, Implementações, IoC. O módulo não funcionou perfeitamente, acabou sendo bom, e o fato de eu não ser o único a pensar assim - derrotou facilmente meu perfeccionismo.

Fizemos o trabalho de uma semana em poucas horas. Sem fechar o Skype, tive o prazer de dirigir no git commit, push. Juntos, eles escreveram uma descrição para a solicitação de recebimento. Eu disse que era uma honra trabalhar juntos e fui dormir.

No dia seguinte, comecei a refletir sobre tudo isso e percebi que alguma merda tinha acontecido. Antokha não conhece C #, ele nunca trabalhou com uma sub-rede, mas trabalhou comigo em termos iguais, se não melhor. Acontece que, idiota, é melhor do que eu ou o quê?

Eu imediatamente queria fazer o trabalho dele com ele, mais uma vez me testar. Mas como propor isso, eu não sabia. Eu decidi esperar, então ele se perguntava, secretamente começando a estudar sua pilha. E ele perguntou. Ele vasculhou a tela, mostrou onde estava preso. Vi imediatamente várias soluções. Eles começaram a discutir, ele começou a codificar. Rápido e legal. Eu sou um js nick, como um esquilo genérico, mas eu realmente o ajudei. O rábano sabe como funciona, mas desde então, sempre que escrevo o código, tenho um Antokha imaginário na minha cabeça que me ajuda. Você involuntariamente tenta a maneira como seu parceiro pensa, e poder pensar de maneira diferente é uma qualidade muito valiosa do desenvolvedor.

Há, no entanto, um problema. NDA maluco. Eu a ignoro porque acredito que Antokha não se apressará em enviar o IMessageReceiver para o meu Instagram.


Pensei durante muito tempo por que isso funcionava e decidi que não era um visual novo. Cada desenvolvedor aborda as tarefas à sua maneira. Há coisas que uma pessoa com minha maneira de pensar decide em um minuto, mas há aquelas em que meu cérebro simplesmente se conduz a um labirinto sem esperança de decisões incorretas.

Mas o conceito de trabalho em equipe que existe agora não funciona. Quando você tem medo de ser um elo fraco, é assustador perceber que sua contribuição é menor que a dos outros. E se você for fraco em alguma coisa - a equipe o expulsará.

Ouvi dizer que os roteiristas que se sentam juntos e tramam com a multidão têm o termo "desnutrição emocional". Este é um estado em que as pessoas não têm medo de pensar em voz alta e em público e os pensamentos de outras pessoas soam como se fossem seus. Portanto, se você encontrar um parceiro com quem possa trabalhar tão facilmente quanto consigo, considere que todos os seus problemas profissionais foram resolvidos.

A cura mais forte para todas as dúvidas e feridas profissionais é quando alguém trata sua imperfeição normalmente.

Source: https://habr.com/ru/post/pt440040/


All Articles