Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Web Performance: Não deixe o usuário desistir d...
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Amanda Vilela
December 14, 2019
Programming
200
1
Share
Web Performance: Não deixe o usuário desistir do seu site
Talk apresentada no JS Day Recife 2019
Amanda Vilela
December 14, 2019
More Decks by Amanda Vilela
See All by Amanda Vilela
Construindo sua primeira página web: Sua porta de entrada para uma carreira de front-end
amandavilela
1
110
Como tornamos os sorteios da BrazilJS on the Road Sorocaba mais divertidos utilizando JS
amandavilela
0
92
Sobre Carreira e Comunidades
amandavilela
0
67
PWA beyond theory - How to create your progressive web app
amandavilela
0
97
Crie seu Próprio Plano de Carreira
amandavilela
0
71
Como otimizar a performance da sua aplicação JS
amandavilela
0
120
Você nem sempre precisa de um framework JS
amandavilela
0
96
Que tal usar CSS em vez de JS?
amandavilela
1
120
Front-end: o que é, mercado e como começar
amandavilela
1
100
Other Decks in Programming
See All in Programming
Road to RubyKaigi: Play Hard(ware)
makicamel
1
520
When benchmarks go bad - what I learned from measuring performance wrong
hollycummins
0
310
Programming with a DJ Controller — not vibe coding
m_seki
3
730
Spec Driven Development | AI Summit Vilnius
danielsogl
PRO
1
130
第3木曜LT会 #28
tinykitten
PRO
0
120
PicoRuby for IoT: Connecting to the Cloud with MQTT
yuuu
2
730
AI時代のエンジニアリングの原則 / Engineering Principles in the AI Era
haru860
0
980
GitHubCopilotCLIをはじめよう.pdf
htkym
0
310
Cache-moi si tu peux : patterns et pièges du cache en production - Devoxx France 2026 - Conférence
slecache
0
330
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
440
属人化しないコード品質の作り方_2026.04.07.pdf
muraaano
0
300
ハーネスエンジニアリングとは?
kinopeee
13
6.6k
Featured
See All Featured
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
54k
What's in a price? How to price your products and services
michaelherold
247
13k
We Have a Design System, Now What?
morganepeng
55
8.1k
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.2k
Prompt Engineering for Job Search
mfonobong
0
290
The Curse of the Amulet
leimatthew05
1
12k
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
1
2.6k
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
190
Visualization
eitanlees
150
17k
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
1
180
Building the Perfect Custom Keyboard
takai
2
740
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
11
900
Transcript
Web Performance Não deixe o usuário desistir do seu site
Amanda Vilela Desenvolvedora front-end, freelancer na Toptal, organizadora de algumas
comunidades de Sorocaba. • amandavilela.com • @amandavilela___ Oi :) 2
Importância da performance
Usuários não gostam de coisas lentas
Como melhorar a performance?
None
None
First Contentful Paint (FCP)
Time To Interactive (TTI)
None
Carregar o mínimo e mostrar algo relevante para o usuário
1. Remova o que não tem importância
None
Minifique o código
None
- 12,4 KB
• Minifier: An online tool minifies JavaScript or CSS via
copy and paste. • Grunt: An NPM minification package that integrates into the Grunt workflow. • Gulp: An NPM minification package that integrates into the Gulp workflow. • Frameworks: Separe o modo desenvolvimento de produção
Revise a necessidade de certas libs
None
None
None
Só envie o código que o usuário precisa
None
None
None
- 7,5 KB
None
None
- 43,3 KB
None
None
None
Remova imagens desnecessárias
None
Otimize as imagens que restarem
None
None
None
None
• SVG no que for possível, mas não esqueça de
otimizar também: svgomg • Substitua GIFs por vídeos: WebM e MP4, ffmpeg
Não redimensione imagens no HTML nem no CSS
Imagens responsivas
Antes: Depois:
2. Use Lazy Load
First-View e o Above the Fold
None
None
None
Cuidado com o reflow!
None
None
None
None
3. Evite carregar a fonte no CSS
None
None
None
Self host para melhor performance
None
4. Reduza a quantidade de requests
None
CSS Inline
sim, CSS Inline
Above the Fold
None
None
- 44,1 KB Antes: Depois:
Cuidado com o tamanho do DOM!
5. Ative o GZip
None
6. Reduza os scripts bloqueantes
Uma tag <script> que: • Está no <head> do documento;
• Não tem um atributo defer; • Não tem um atributo async;
Carregamento assíncrono de CSS
None
7. Lazy load no JS
None
None
None
None
Comparação
8. Adapte com base na qualidade da rede
None
None
None
None
9. Faça cache dos recursos estáticos
HTTP cache headers
None
Service Worker
None
None
10. Código transpilado e mais bytes
None
None
11. Use HTTP2
Monitorando Métricas
None
None
None
None
None
None
Performance Budgets
budget.json
None
None
None
Lighthouse Bot
None
Referências • https://www.awwwards.com/brain-food-perceived-performance • https://developers.google.com/web/fundamentals/performance/why-performance-matters • https://developers.google.com/web/tools/chrome-devtools/coverage • https://developers.google.com/web/tools/chrome-devtools/evaluate-performance •
https://web.dev/fast/ • https://www.filamentgroup.com/lab/inlining-cache.html • https://web.dev/using-lighthouse-bot-to-set-a-performance-budget/
Slides: speakerdeck.com/amandavilela
Pull Request em: https://github.com/JSdayBR/recife
http://bit.ly/toptal-amanda
Obrigada!