Semua karyaStudi kasus 01 / 03

20 menit jadi 5: lebih sedikit menunggu, lebih banyak rilis

Dulu satu build di agency butuh 20 menit. Saya merombak pipeline dan skrip otomasinya. Sekarang cukup 5 menit.

Konteks
Digital Agency
Peran
Senior Frontend Developer
Kapan
2023
Stack
GitHub Actions · Yarn
Sebelum: 20mSesudah: 5m

Waktu build CI/CD, sebelum dan sesudah: turun 75%.

01 · Masalahnya

Push fix satu baris, lalu tunggu 20 menit untuk melihatnya live. Begitu juga setiap review dan rilis. Sehari kami cuma muat 2 sampai 3 build, dan 2 sampai 3 frontend developer yang perlu deploy harus gantian antre.

02 · Batasan

Budget runner, target deploy, dan kebiasaan tim tetap sama. Rilis juga tidak boleh berhenti selama saya memperbaikinya.

03 · Yang saya lakukan

  1. Ganti package manager

    Setup npm yang lama adalah langkah paling lambat. Pindah ke Yarn yang lebih baru dan merapikan package-nya memangkas sebagian besar waktunya.

  2. Lockfile dikunci di CI

    Lockfile di-commit dan CI meng-install persis sesuai isinya, jadi build tidak bisa pelan-pelan kembali lambat.

04 · Hasil

  • 20m → 5m
    waktu build per run (−75%)
  • 2–3 → 6–8
    build per hari

05 · Kalau diulang, ini yang saya ubah

Ukur dulu. Firasat saya bahwa npm adalah langkah paling lambat ternyata benar, tapi tetap saja itu firasat. Lain kali saya akan mencatat waktu setiap langkah sebelum mengubah apa pun, supaya perbaikannya dipilih oleh data.

Studi kasus berikutnyaSafer.Memperkuat auth di sisi frontend