Skip to content

Instantly share code, notes, and snippets.

@rcoproc
Forked from rondy/Effective_Engineer.md
Last active December 8, 2021 18:27
Show Gist options
  • Save rcoproc/29daefb4527973dcf8e1dd66f3e47eef to your computer and use it in GitHub Desktop.
Save rcoproc/29daefb4527973dcf8e1dd66f3e47eef to your computer and use it in GitHub Desktop.

Texto original em Inglês: https://gist.github.com/rondy/af1dee1d28c02e9a225ae55da2674a6f

  • FWIW: Eu não produzi o conteúdo apresentado aqui (o esboço do livro de Edmond Lau). Acabei de copiar e colar de algum lugar da Internet, mas não me lembro qual é exatamente a fonte original. Também não consegui encontrar o nome do autor, por isso não posso lhe dar os devidos créditos. *

Engenheiro Eficaz(The Effective Engineer) - Notas

O que é um engenheiro eficaz?

  • São as pessoas que fazem as coisas. Engenheiros eficazes produzem resultados.

Adote as mentalidades certas

Foco em atividades de alta alavancagem

  • Alavancagem = Impacto produzido / Tempo investido
  • Use a alavancagem como critério para obter eficácia
  • 80% do impacto vem de 20% do trabalho.
  • Concentre-se em alta alavancagem e não apenas em vitórias fáceis.

Otimizar para aprendizado

  • Troque de emprego, se necessário.

  • Otimizar para aprender é uma grande alavancagem.

  • Adote uma mentalidade de crescimento.

  • Falar com pessoas. Torne-se bom em contar histórias. Fica melhor com o tempo.

  • Aqueles com uma mentalidade de crescimento acreditam que podem cultivar e aumentar sua inteligência e habilidades através do esforço.

  • Seja dono da sua história.

  • Invista na taxa de aprendizado

  • Compostos de aprendizagem. A composição leva ao crescimento exponencial. No início da composição, melhor.

  • Trabalhar em tarefas incontestáveis ​​é um enorme custo de oportunidade. Você perdeu o aprendizado composto.

  • Priorize o aprendizado sobre a lucratividade.

  • Invista seu tempo em atividades com a maior taxa de aprendizado.

  • Procure ambientes de trabalho propícios ao aprendizado

  • Crescimento rápido: empresas em que #problemas >> # recursos. Oportunidade de escolher trabalhos de alto impacto.

  • Verifique se você está trabalhando em projetos de alta prioridade.

  • Abertura: procure cultura com curiosidade, onde todos são incentivados a fazer perguntas.

  • Ritmo acelerado.

  • Pessoas mais espertas que você.

  • Autonomia: liberdade de escolher no que trabalhar. Empresas menores > Mais autonomia.

  • Enquanto no trabalho

  • Crie o hábito diário de adquirir novas habilidades.

  • Leia o código escrito por engenheiros brilhantes.

  • Entre sem medo no código que você não conhece.

  • Sempre esteja aprendendo. Invista em habilidades que estão em alta demanda.

  • Leia livros. Participar de conferências.

  • Construir e manter relacionamentos fortes.

Priorize regularmente

  • Priorize tarefas com base no ROI.

  • Priorização regular é uma atividade de alta alavancagem.

  • Nas listas do TODO:   - Mantenha uma lista de tarefas 'única' onde todas as tarefas estão listadas.   - Não tente se lembrar de coisas. Cérebro é ruim em lembrar. É bastante bom no processamento.

  • Pergunte a si mesmo regularmente: essa é a coisa mais importante na qual devo trabalhar?

  • Concentre-se no que produz valor diretamente.

  • Aprenda a dizer não.

  • Concentre-se no importante e não urgente.

  • Encontre maneiras de entrar no fluxo. 'Um estado de concentração sem esforço tão profundo que eles perdem a noção do tempo, de si mesmos, de seus problemas.'

  • Quando possível, preserve blocos maiores de tempo focado em sua programação.

  • Limite a quantidade de trabalho em andamento.

  • O custo da troca de contexto é alto.

  • Priorizar é difícil.

  • Priorização é alta alavancagem. Isso tem um enorme impacto na sua capacidade de fazer as coisas certas.

Invista na velocidade da iteração

  • A implantação contínua é alta alavancagem.   - Economizará muito tempo na implantação manual do código. Eles são as pessoas que fazem as coisas. Engenheiros eficazes produzem resultados.
  • Mova-se rápido para aprender rápido.   - Mova-se rápido e quebre as coisas.   - Movendo-se rapidamente nos permite construir mais coisas e aprender a taxas mais rápidas.
  • Invista em ferramentas de economia de tempo.   - Se você precisar fazer algo mais do que duas vezes, escreva uma ferramenta pela terceira vez.   - As ferramentas são multiplicadores que permitem dimensionar seu impacto além dos limites de um dia.   - Ferramentas mais rápidas são usadas com mais frequência.   - Ferramentas mais rápidas podem permitir novos fluxos de trabalho que anteriormente não eram possíveis.   - Elevadores de produtividade com ferramentas.   - A propriedade de economia de tempo das ferramentas também é dimensionada com a adoção da equipe.
  • Encurte seus loops de depuração e validação.   - O tempo extra gasto na otimização do fluxo de trabalho de depuração pode ajudar a corrigir bugs irritantes com menos dor de cabeça.   - Depurar é difícil. É demorado. Investimentos iniciais para encurtar loops de depuração valem a pena.
  • Alta cobertura de teste para reduzir quebras na construção e no local.
  • Testes de unidade rápidos para incentivar as pessoas a executá-los.
  • Compilações e recarregamentos rápidos e incrementais para reduzir o tempo de desenvolvimento.
  • Domine seu ambiente de programação.   Um editor. Um idioma de alto nível. Concha. Teclado> Mouse. Automatize fluxos de trabalho manuais. Use shell interativo. Facilite a execução de testes específicos.
  • ** Quanto mais rápido você pode interagir, mais rápido você pode aprender. **

Avalie o que você deseja melhorar

  • Use métricas para impulsionar o progresso.
  • Se você não pode medir, não pode melhorar.
  • boa métrica.
  • Ajuda você a se concentrar nas coisas certas.
  • Impulsiona o progresso.
  • Ajuda a se proteger contra futuras regressões.
  • ** Catraca de desempenho **: qualquer alteração deve melhorar estritamente a métrica.   
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment