20 coisas que aprendi em 20 anos como engenheiro de software
(simplethread.com)- Ainda não sei muita coisa: somos pessoas que precisam aprender a vida inteira
- O mais importante no desenvolvimento de software é construir o que é necessário
- Os melhores engenheiros de software pensam como designers
- O melhor código é não ter código, ou ter código que não precise ser mantido
- Software é um meio para um fim
- Às vezes é preciso parar de afiar a serra e começar a cortar alguma coisa
- Se você não entende bem o que é possível, não consegue projetar um bom sistema
- Todo sistema acaba se tornando irritante no fim, então supere isso
- Ninguém pergunta "por quê" o suficiente
- Devemos focar muito mais em evitar programadores 0,1x do que em procurar programadores 10x
- A maior diferença entre um engenheiro sênior e um júnior é se ele formou opiniões próprias sobre ferramentas ou sobre como escrever software
- As pessoas não querem inovação de verdade
- Seus dados são a parte mais importante do sistema
- Procure por tubarões tecnológicos (tecnologias que sobreviveram por muito tempo mesmo com mudanças rápidas)
- Não confunda humildade com ignorância
- Engenheiros de software devem escrever regularmente
- Mantenha o processo o mais enxuto (Lean) possível
- Engenheiros de software também precisam sentir senso de dono (como qualquer ser humano)
- Não dá para saber em uma entrevista se um candidato será um bom colega de equipe
- Sempre tente construir sistemas menores
Importante
- No início deste texto há o seguinte aviso.
Ao ler um “blog cheio de conselhos”, a maior parte dos conselhos depende de contexto, mas muitos deles não são transmitidos junto com esse contexto
Conselhos sem entender o contexto são inúteis ou até prejudiciais - Por isso, ele escreveu um pouco sobre o próprio contexto,
- Na primeira metade da carreira, trabalhou em pequenas e médias empresas/startups; depois foi para uma consultoria e passou a atuar com negócios de maior porte
- Depois fundou a SimpleThread e a fez crescer de 2 para 25 pessoas
- Há 10 anos, trabalhava principalmente com pequenas e médias empresas; hoje, atende uma mistura de grandes e pequenas empresas
- Então, no caso dele,
- Sempre trabalhou em equipes pequenas e enxutas, onde precisava fazer muita coisa começando do bem pequeno
- Valoriza mais “software que funciona” do que uma ferramenta específica
- Está sempre começando novos projetos, mas também precisa manter vários sistemas
- Entre a maioria das considerações, prioriza a produtividade de engenharia
- Tendo esse contexto em mente, leia os pontos acima. Como aqui só foram trazidos os títulos, consulte o texto original para os detalhes.
14 comentários
Vou voltar aqui para ler uma vez por dia. 04/06/23
Isso é
parece melhor.
O mais importante no desenvolvimento de software é criar o que é
necessárioIsso parece melhor.
Muito bom, obrigado~!
As pessoas não querem inovação de verdade <- o que isso quer dizer?
As pessoas falam sobre inovação, mas dizem que, na prática, quando você traz algo inovador, a maioria das reações é negativa. Por isso, ele afirma que é preciso seguir em frente pensando no longo prazo.
O alerta realmente toca fundo.
Uau, que texto realmente ótimo..
Então, “tubarões técnicos” significa mais tecnologias comprovadas e estáveis do que tecnologias “antigas”.
Ah, a formulação estava um pouco estranha. Corrigi.
Que bom texto.
Gostei muito das partes que você destacou separadamente como "importantes". Principalmente porque isso também forneceu contexto.
Ah, muito melhor. Corrigi.