Photo by Stanislav on Unsplash
Durante a minha (curta) carreira como programador, raramente tive que otimizar trechos de código para extrair o melhor rendimento possível, acredito que isso se deve principalmente por ter trabalhado em projetos simples, sem tantos requisitos de performance. Ainda assim, acredito que raramente você estará escovando bits. Porém, em situações adversas e com infra limitada, será necessário lutar por milissegundos.
Imagine o seguinte cenário: uma aplicação multithread, que processa milhões de registros diariamente e que deve fazer isso de forma eficiente. Imagine também que escalar verticalmente e/ou horizontalmente não é uma opção neste exemplo, por enquanto aceite que não há mais recursos e que depois de code reviews e algumas otimizações lógicas você tem a sensação de não saber mais o que fazer. E ai?