Slide 1

Slide 1 text

KINERJA WEB 101 Edisi 2022 Irfan Maulana Principal Engineer Web Platform - Tokopedia

Slide 2

Slide 2 text

Irfan Maulana (mazipan) 2013-2015 2015-2018 2018-2019 2019-sekarang SML Tech Blibli.com Bizzy Tokopedia

Slide 3

Slide 3 text

Hal yang akan dibahas 04 05 06 01 02 03 Kenapa memilih web? Kenapa kinerja web penting? Bagaimana mengukurnya? Aksi yang bisa dikerjakan Kesimpulan Prinsip pekerjaan

Slide 4

Slide 4 text

Kenapa memilih web? Berbagai alasan kenapa kita masih membuat web, kenapa web masih dicintai penggunanya, dan kenapa web menjadi solusi yang terbaik bagi kalian dan pengguna.

Slide 5

Slide 5 text

Kenapa memilih web? Dapat dibagikan ke orang lain dengan sangat mudah Tidak perlu memasang aplikasi tambahan, bisa langsung diakses Dapat dengan mudah dicari melalui berbagai mesin pencarian MUDAH DIBAGIKAN MUDAH DIAKSES MUDAH DICARI Memperbarui konten tanpa perlu meminta pengguna melakukan aksi tambahan SELALU TERBARUKAN

Slide 6

Slide 6 text

Kenapa kinerja web penting? Berbagai studi kasus yang menyatakan bahwa kinerja web bisa memberikan dampak positif atau negatif terhadap bisnis kalian.

Slide 7

Slide 7 text

Mempertahankan pengguna Meningkatkan traffic dari search engine dan pendaftaran 15% Meningkatkan konversi 7%, menurunkan bounce-rate 7%, meningkatkan jumlah halaman per sesi 10% Mengurangi waktu tunggu yang dirasakan sebanyak 40% Mengurangi waktu muat rata-rata 850ms Situs berkinerja tinggi melibatkan dan mempertahankan pengguna lebih baik daripada situs berkinerja rendah. Pinterest COOK https://s.id/webperf-pinterest https://s.id/webperf-cook

Slide 8

Slide 8 text

Meningkatkan konversi Situs lambat berdampak negatif pada pendapatan, dan situs cepat terbukti meningkatkan rasio konversi. AutoAnything Ketika AutoAnything mengurangi waktu muat hingga setengahnya, mereka melihat peningkatan penjualan sebesar 12% hingga 13%. Furniture Village Retailer Furniture Village mengaudit kecepatan situs mereka dan mengembangkan rencana untuk mengatasi masalah yang mereka temukan, yang menghasilkan pengurangan 20% dalam waktu buka halaman dan 10% peningkatan rasio konversi. https://s.id/autoanything https://s.id/furniture-village

Slide 9

Slide 9 text

Pengalaman pengguna Dalam hal pengalaman pengguna, kecepatan itu penting. Sebuah studi konsumen menunjukkan bahwa respons stres terhadap penundaan kecepatan seluler mirip dengan menonton film horor atau memecahkan masalah matematika, dan lebih besar daripada menunggu di antrian kasir di toko ritel. https://s.id/case-study-ericsson

Slide 10

Slide 10 text

Mengenai manusia Situs dan aplikasi yang berkinerja buruk juga dapat menimbulkan biaya nyata bagi orang-orang yang menggunakannya. https://s.id/case-study-ericsson

Slide 11

Slide 11 text

Bagaimana mengukurnya? Cara umum yang dikerjakan banyak orang untuk mengukur sebuah web performa.

Slide 12

Slide 12 text

Mengukur kinerja web Sebaiknya punya data historis agar bisa dipantau perkembangannya dari waktu ke waktu. Lighthouse, PageSpeed Insight Webpagetest.org, GTMetrix, SiteSpeed.io Google Analytics, New Relic, Akamai mPulse, RayGun, AppDynamics

Slide 13

Slide 13 text

Aksi yang bisa dikerjakan Kumpulan berbagai aksi nyata yang bisa dikerjakan baik secara umum maupun spesifik untuk meningkatkan performa web.

Slide 14

Slide 14 text

Mempercepat request-response Perbaikan kinerja web dimulai dari bagian paling belakang. Server yang mumpuni Edge/CDN untuk mendekatkan jaringan Cache, set http header Kurangi waktu proses di server Kurangi waterfall request (setup http/2, async process)

Slide 15

Slide 15 text

Memampatkan sumber daya Pastikan sumber daya yang digunakan sudah optimal Gunakan pemampatan di semua lini (Brotli/gzip) Minify & optimize JS, CSS, HTML Kurangi penggunaan static text Kurangi kualitas gambar

Slide 16

Slide 16 text

Memperkecil sumber daya Semakin kecil sumber daya yang harus dimuat, akan lebih baik Buang kode duplikasi dan tidak dibutuhkan Perhatikan penambahan kode, penggunaan pustaka dari pihak ketiga, cari alternatif pembanding, ukur sebelum dipakai, evaluasi setelah digunakan Gunakan tipe gambar yang optimal (webp, avif)

Slide 17

Slide 17 text

Kurangi jumlah permintaan Semakin sedikit permintaan sumber daya, akan lebih baik Gabungkan yang bisa digabungkan Gunakan cara muat yang tidak saling tunggu Evaluasi penggunaan vendor analitik Internal CSS pada bagian kritis Cache permintaan yang sama dengan sebelumnya

Slide 18

Slide 18 text

Kirim hanya yang dibutuhkan Pastikan sumber daya yang dikirim, sudah tepat guna Pecah kode (code-splitting), tunda pengiriman (lazy-load), muat saat dibutuhkan Muat bagian yang terlihat pertama kali, sisanya tunda Pastikan tidak ada sumber daya dari halaman lain yang termuat Sesuaikan dimensi gambar dengan penampungnya, sediakan beberapa ukuran, adaptasikan

Slide 19

Slide 19 text

Atur prioritas Sumber daya kritis harus didahulukan Bagian teratas, harus didahulukan, gunakan preload untuk memaksa prioritasnya lebih tinggi Bagian di bawah dan kemungkinan besar akan dikunjungi, bisa di prefetch https://medium.com/reloading/preload-prefetch-and-priorities-in-chrome-776165961bbf

Slide 20

Slide 20 text

Adaptasi dengan pengguna Pahami kondisi pengguna, sesuaikan Pahami kemampuan device, kondisi memori, kondisi baterai, kondisi jaringan dan dukungan fitur. Sesuaikan sumber daya yang akan dikirimkan Buang polyfill/shim yang tidak dibutuhkan pada peramban modern. Bisa bedakan sumber daya berdasarkan jenis dan versi peramban Utamakan penggunaan fitur bawaan, sebelum melirik ke pustaka pihak ketiga https://addyosmani.com/blog/adaptive-loading/

Slide 21

Slide 21 text

Baca selengkapnya web.dev/fast

Slide 22

Slide 22 text

Prinsip pekerjaan Prinsip utama yang harus dipahami oleh kalian yang ingin bergelut dalam bidang optimalisasi kecepatan web

Slide 23

Slide 23 text

Prinsip perbaikan kinerja web BERTAHAP BERKELANJUTAN KOLABORASI DATA YANG UTAMA

Slide 24

Slide 24 text

Kesimpulan Rangkuman dari sesi presentasi Kinerja Web 101

Slide 25

Slide 25 text

Kesimpulan Web memiliki keunggulan dan kelemahannya tersendiri Di web, pada prinsipnya: lebih kecil lebih baik, lebih sedikit lebih baik, sesuaikan dengan kebutuhan dan kondisi pengguna Diperlukan kerja bersama, bertahap, berkelanjutan, dan mengutamakan data pada saat mengerjakan perbaikan kinerja web

Slide 26

Slide 26 text

TERIMA KASIH! Credit: template by slidesgo