Leonardo Elias

Leonardo Elias

Senior Staff Software Engineer - Front-end

Senior Staff Engineer com mais de 10 anos de experiência em front-end. Especialista em React, TypeScript, Design Systems e integração de LLM/AI. Atualmente na Avenue, lidera iniciativas técnicas estratégicas e criou Design Systems usados por 12+ aplicações. Palestrante da TDC e mentor de desenvolvedores.

Livros Recomendados

Leonardo compartilhou os 5 livros que foram mais importantes em sua trajetória profissional.

1
Learning TypeScript: Enhance Your Web Development Skills Using Type-Safe JavaScript

Por que escolheu este livro

Estava liderando a migração de uma base de código JavaScript para TypeScript em um Design System usado por 12 aplicações. Precisava não só dominar a linguagem, mas também ensinar o time a pensar em tipos. O livro do Josh Goldberg foi perfeito - ele explica o sistema de tipos de forma progressiva sem subestimar o leitor.

Qual conceito mais usa no dia a dia

Conditional Types e Mapped Types. Uso diariamente para criar componentes type-safe no Design System. Por exemplo, um Button que só aceita 'icon' prop quando variant='icon'. Isso previne bugs em compile-time e melhora muito o DX (Developer Experience) do time.

Para quem e quando recomenda

Para desenvolvedores que já usam TypeScript mas querem ir além do básico. Recomendo quando você está criando bibliotecas compartilhadas ou Design Systems - lugares onde types bem modelados fazem diferença enorme na produtividade do time.

350 páginas20224.7
2
Refactoring UI

Refactoring UI

Adam Wathan, Steve Schoger

Por que escolheu este livro

Como desenvolvedor, sempre tive dificuldade com design. Dependia de designers para cada pixel. Quando comecei a criar nosso Design System, percebi que precisava tomar decisões de design sozinho - espaçamentos, hierarquia visual, cores. Este livro mudou tudo - ensina design do ponto de vista do desenvolvedor.

Qual conceito mais usa no dia a dia

Design Tokens e sistemas de espaçamento. Aprendi a criar escalas consistentes (4px, 8px, 16px, 24px...) ao invés de valores arbitrários. Agora nosso Design System tem tokens bem definidos e qualquer dev consegue criar interfaces consistentes sem depender de designers para cada decisão.

Para quem e quando recomenda

Para qualquer desenvolvedor front-end que trabalha com UI, especialmente quem está criando Design Systems. Leia quando você quer criar interfaces bonitas mas não tem formação em design. É o melhor investimento que fiz para melhorar minhas skills de UI.

218 páginas20184.9
3
Atomic Design

Atomic Design

Brad Frost

Por que escolheu este livro

Foi designado para arquitetar o Design System da Avenue do zero. Tinha 80+ componentes para criar e precisava de uma metodologia escalável. Atomic Design me deu o framework mental perfeito - atoms, molecules, organisms. Transformou um problema caótico em um sistema organizado e previsível.

Qual conceito mais usa no dia a dia

A hierarquia Atoms → Molecules → Organisms → Templates. Uso diariamente para decidir onde um componente vive. Um Button é um átomo. Um SearchInput (input + button) é uma molécula. Um FilterBar (múltiplos inputs) é um organismo. Essa clareza arquitetural facilita manutenção e reutilização.

Para quem e quando recomenda

Para engenheiros que estão criando ou mantendo Design Systems. Essencial quando você tem múltiplas aplicações compartilhando componentes. Leia antes de arquitetar seu primeiro Design System - vai economizar meses de refatoração e discussões sobre 'onde esse componente deveria viver?'

232 páginas20164.8
4
The Staff Engineer's Path: A Guide for Individual Contributors Navigating Growth and Change

Por que escolheu este livro

Fui promovido a Staff Engineer e senti uma crise de identidade. Não era mais só 'o melhor coder do time', mas também não era gerente. O que Staff Engineer realmente faz? Como gerar impacto sem autoridade formal? Este livro da Tanya Reilly respondeu todas essas perguntas e me deu um roadmap claro.

Qual conceito mais usa no dia a dia

Influência técnica através de Design Docs e RFCs. Aprendi que Staff Engineers influenciam através de documentação técnica bem escrita, não apenas código. Agora escrevo ADRs (Architecture Decision Records) para decisões importantes. Isso escala meu conhecimento e cria alinhamento sem micromanagement.

Para quem e quando recomenda

Para Senior Engineers considerando o caminho técnico (vs management) ou recém-promovidos a Staff. Leia quando você quer crescer tecnicamente mas não quer virar gerente. O livro mostra que existe uma carreira técnica sólida, impactante e satisfatória sem gestão de pessoas.

450 páginas20224.8
5
Designing Data-Intensive Applications

Por que escolheu este livro

Estava arquitetando um sistema de micro-frontends com Module Federation - essencialmente um sistema distribuído no browser. Precisava entender consistência, particionamento, replicação não só no backend, mas também no frontend. Este livro do Martin Kleppmann me deu os fundamentos teóricos que faltavam.

Qual conceito mais usa no dia a dia

CAP Theorem aplicado ao frontend. Quando design micro-frontends ou Design Systems distribuídos, sempre penso: durante uma falha de rede ou deploy parcial, o que acontece? Prefiro consistência (loading states explícitos) ou disponibilidade (fallbacks e dados stale)? Essa clareza previne bugs sutis em produção.

Para quem e quando recomenda

Para Staff/Principal Engineers que arquitetam sistemas complexos, mesmo no frontend. Leia quando você está tomando decisões que impactarão a empresa por anos. Os princípios do livro (trade-offs, consistência, particionamento) aplicam-se a qualquer sistema distribuído - incluindo SPAs modernas.

624 páginas20174.8