
Existem coisas assim nas estruturas C #. Eles são como classes, mas são armazenados na pilha e funcionam não por referência, mas por valor. No desenvolvimento médio, quase nunca são usados. Estruturas têm muitas vantagens, e sinceramente me afogo pelo fato de que podem ser usadas para melhorar o código. Como, veja, podemos usar os recursos de structs para escrever um código mais seguro e tolerante a falhas.
Esse absurdo pode ser dito por uma pessoa que não sabe que as estruturas têm um construtor padrão vazio que não pode ser removido ou redefinido. Você sabe por que eu não sabia disso? Sim, porque nunca os usei. Afinal, tenho uma experiência de desenvolvimento minúscula. Não quero ler livros sobre sisharp por muito tempo. Por que, se eu for pago mesmo assim?
Antes do meu primeiro emprego, e até receber a oferta de um signatário, estava aprendendo como eu. Eu li livros, descompilei minhas aulas nativas no Dotnet e perguntei aos especialistas: “Como isso funciona? E porque? Como você faria? O que é mais rápido? " O dia em que não aprendi coisas novas foi reconhecido como um fracasso. E em cada tarefa eu vi uma oportunidade de aprender. Ficou feliz com os comentários sobre a revisão, e poderia ligar para um amigo no meio da noite para discutir a decisão com ele.
Fiz tudo isso porque sentia que não era bom o suficiente, não entendia nada. Pareceu-me então que estava puxando meu papel de junho com força, todos ao redor eram inteligentes e competentes e eu realmente queria me tornar o mesmo. Achei que se você estudar tudo normalmente e se tornar um desenvolvedor sênior, você será o tipo de cara que cria um projeto à noite, o faz à noite e o envia ao mercado pela manhã. Entenda bem, com o que pode sonhar um menino de 22 anos? Ele sonha em se tornar um cara legal.
Na época, meu bom amigo, que não trabalhava há um dia como programador, aceitou e conseguiu um emprego como desenvolvedor sênior no Sberbank. Ele estudou muito, fez seus projetos e, por isso, conseguiu passar no concurso da previdência. Com seu salário na época, ele poderia ter contratado dez pessoas como eu para fazer seu trabalho, e fiquei muito ofendido.
Um amigo meu da mesma idade, uma pessoa sem experiência, pegou e tornou-se oficialmente o que eu queria ser. Nenhuma etapa intermediária estúpida com anos de experiência e treinamento. Depois disso, não quis mais estudar.
Em vez de uma dezena de livros, artigos e perguntas para pessoas inteligentes, comecei a perder todo o meu tempo na loteria de entrevistas. Funciona elementar - o desenvolvedor deve saber tantas coisas que esse conhecimento não pode ser totalmente verificado, mesmo teoricamente. Portanto, eles são verificados seletivamente. É como um exame sobre tickets, em que você aprendeu apenas um, mas pode ir a dez desses exames em um dia - e pelo menos um você conseguirá.
Então funcionou para mim. Eu tenho uma boa pergunta, peguei a conversa - e agora o velho Phil já é um desenvolvedor sênior com muito dinheiro. Isso funciona de uma maneira muito estranha. Eu sabia que tinha acertado um jackpot louco e, ao mesmo tempo, estava orgulhoso de ter finalmente me tornado um signor.
O desenvolvimento como um todo é organizado de forma que, quando você não for competente o suficiente, nada acontecerá. Você não notará muitos problemas, mas ninguém morrerá por causa deles. Você foi aprovado no seguro social e, em um novo emprego, ninguém está tentando provar que foi contratado em vão. Pelo contrário, se você começar a falhar, eles tentam convencer você e a si mesmos de que não há erro aqui. Mesmo quando você mostra incompetência flagrante em alguns assuntos, eles simplesmente dirão: "Tudo bem, Phil tem uma lacuna na arquitetura do banco de dados, todos nós temos lacunas." E, não importa como, ninguém perceberá que você tem 10 vezes mais lacunas do que outras.
É fácil confundir um engenheiro normal com uma pessoa que não é competente o suficiente, porque todos os programadores se preocupam por não serem bons o suficiente. Bem, ouça, se contratarmos um calouro para ser um técnico e ele começar a reclamar que não é bom o suficiente, não diremos que é síndrome de impostor, certo? Ele realmente não é bom o suficiente. Ele não tem o conhecimento necessário. E a visão necessária. Ele precisa ser demitido ou rebaixado.
Mas não - o desenvolvedor fala que ele é mau, e as pessoas ao seu redor acham bem, uma pessoa não consegue se entender e se valorizar normalmente, isso não acontece. E eles concluem que ele estava errado - isto é, ele é realmente bom, além de ser autocrítico, o que significa que ele é ainda melhor. E mesmo que um milagre aconteça e um truque seja notado em um dos empregos - ainda não é um fato que eles serão demitidos, e se forem demitidos, você encontrará um novo, e então se sentará e dirá a todos que eles são uns idiotas que não entendem o quão legal você é.
Foi assim que minha carreira foi. Sentei-me em um local remoto, fingi estar trabalhando, passei por um programa de previdência social e, a cada poucos meses, recebia uma oferta mais gorda.
Já fui desenvolvedor sênior, desenvolvedor líder, especialista em consultoria e líder de equipe. Ele trabalhou com russos, americanos, indianos e vietnamitas. Construiu sistemas gigantes e pequenas startups. Ensinei as pessoas a escrever código, tentei inventar minhas próprias ferramentas. Ele desenvolveu sua própria filosofia e abordagem. Comecei a escrever um livro sobre desenvolvimento.
Mas o que esqueci de fazer foi aprender a programar.
Quando você tem uma nota alta, pode delegar qualquer coisa. Ok, você não entende o banco de dados - deixe aquele que entende fazer isso. Precisa otimizar seu desempenho? Não sou um especialista, deixe Lyokha fazer isso. Vou dar a ele minha revisão mais tarde. Em algum momento, percebi que delego quase todas as tarefas que não sei como resolver de antemão. O cérebro é preguiçoso e é bom que a vida geralmente o mantenha em boa forma. Mas se você é um autoproclamado gênio da tecnologia que enganou o sistema, seu cérebro não manterá nada em boa forma. Todo o trabalho realmente difícil será feito por escravos.
A triste realidade é que a maioria das tarefas de desenvolvimento pode ser feita mais ou menos por qualquer um de nós - e quase sempre ninguém tem tempo ou desejo para descobrir o quão bem você fez isso. Os desenvolvedores são pessoas sem responsabilidade. Ninguém nos pergunta sobre os bugs que produzimos há um ano e antes eles geralmente não eram encontrados.
É aceito na indústria que figurões inventam ferramentas legais em seu lazer. Para inventar algo realmente necessário no sisharp, você precisa de um engenheiro de verdade que bebeu um bom gole de merda, encontrou algumas dores difíceis em seus dez anos de experiência e descobriu como curá-la. Então, inventei uma ferramenta para desenvolvedores front-end. Eu conheço o texto datilografado muito bem, mas nunca trabalhei com um front limpo e, portanto, mesmo tendo um conceito completo em minha cabeça e a vontade de codificá-lo rapidamente, descobri que geralmente não tenho ideia de como criar e projetar uma biblioteca de front-end. Como definir configurações, como projetar uma API externa, como e quais testes conectar, qual estrutura de arquivo usar no projeto - sim, eu não sabia merda nenhuma. Então, liguei para meu amigo da frente e o convenci a fazer tudo por mim. Quando o fez, meu interesse pelo projeto já havia esfriado.Eu estava procurando um novo emprego.
No bom, eu queimaria de vergonha e entraria de cabeça no treinamento - mas não vai funcionar. Sou um homem adulto, tenho coisas mais importantes a fazer do que estudar livros didáticos. E a vida não exige isso. Se você quer apenas ter um bom descanso e cortar o dinheiro, você precisa fazer tudo exatamente como eu.
Mas eu me tornei um desenvolvedor para fazer coisas interessantes e importantes. Para construir algo, para trazer algo ao mundo. Resolva um problema real e importante, orgulhe-se da qualidade do seu trabalho. E eu perdi todas as chances disso. E em troca ele recebeu algum show-off incompreensível, a oportunidade de não fazer nada e um sonho americano inacabado. E ainda por cima - uma pilha enorme e simplesmente astronômica de cinismo.
Foda-se com dois, pelo menos vou entender alguma coisa, aprender ou fazer alguma coisa, até que me deixem encurralado. E eles vão me levar a este canto por dois. Eu me sinto um pedaço de merda no trabalho, mas não tenho mais volta - e aceitei. Eles pegam, pagam, não dirigem - bem, pro inferno com ele. Fiquei oprimido o suficiente para aprender a viver aceitando que era um pedaço de merda.
Mas se eu pudesse voltar no tempo, teria feito tudo diferente. Você não precisa bancar o signor de 23 anos para se tornar um especialista sênior realmente bom. É necessário conseguir um emprego por categoria, e de preferência em todos os tipos de Yandex, onde sua experiência de três anos em junho realmente fará de você um intermediário e um intermediário de três anos - um signor novato. Sim, por cinco ou seis anos você receberá menos do que eu. Mas. Mesmo um salário baixo em junho em TI é um bom dinheiro. Você ainda terá a síndrome do impostor, mas ao contrário de mim, você não será um impostor. E o mais importante é que então eu esbarrei no meu teto e nunca me tornarei um desenvolvedor que define o setor. Mas você pode. Você faz o melhor que pode, porra.
Publicidade
Servidores virtuais poderosos com processadores AMD EPYC para desenvolvedores. Frequência do núcleo da CPU de até 3,4 GHz. A configuração máxima permitirá que você chegue ao máximo - 128 núcleos de CPU, 512 GB de RAM, 4000 GB NVMe.
