1 poin oleh GN⁺ 2023-12-01 | 1 komentar | Bagikan ke WhatsApp

Penemuan bug aneh dan proses penyelesaiannya

  • Saat menjalani giliran on-call di tim alat internal, para pengguna yang memakai perangkat lunak internal Gusto mengalami masalah browser Chrome crash.
  • Masalah ini menimbulkan berbagai gangguan pada layanan pelanggan.
  • Untuk menyelesaikannya, mereka meminta bantuan rekan yang berpengalaman, tim infrastruktur produk, dan tim IT.

Petunjuk pertama

  • Mereka mencoba mencari kesamaan di antara para pengguna yang terdampak.
  • Tidak semua karyawan Gusto terdampak, dan perangkat lunak yang berhadapan langsung dengan pelanggan tidak mengalami masalah.
  • Halaman web perangkat lunak internal lainnya berfungsi normal.
  • Crash terjadi secara tidak konsisten, dan masalah tidak muncul di Safari maupun Firefox.

Petunjuk kedua

  • Muncul hipotesis bahwa versi Chrome mungkin menjadi penyebab masalah.
  • Saat sebagian pengguna memperbarui versi Chrome, masalah tampak teratasi, tetapi ternyata tidak sepenuhnya hilang.
  • Mereka juga menduga ekstensi Chrome mungkin menjadi penyebab, tetapi masalah tetap bisa direproduksi tanpa ekstensi.

Sulitnya mereproduksi bug

  • Tim infrastruktur meminta semua engineer untuk mencoba mereproduksi masalah.
  • Kecuali dua engineer di Turki, tim engineering tidak melaporkan crash.
  • Fitur pelaporan crash Chrome dinonaktifkan demi keamanan, sehingga penyelesaian masalah menjadi lebih sulit.

Titik balik yang beruntung

  • Seorang engineer di Denver melaporkan bahwa masalah mulai muncul setelah mengunduh aplikasi desktop Grammarly.
  • Mereka menemukan bahwa menghapus aplikasi Grammarly dan me-restart komputer dapat menyelesaikan masalah.

Kemajuan

  • Setelah debugging menjadi memungkinkan, mereka mencoba berbagai cara untuk menemukan penyebab masalah.
  • Aplikasi internal utama dibangun di atas ActiveAdmin, tetapi bagian yang lebih baru yang menggunakan React tidak mengalami crash.
  • Saat menyelidiki bagian kode yang sama, mereka menemukan bahwa menu dropdown 'My History' adalah penyebab masalah.

Penyelesaian masalah

  • Dikonfirmasi bahwa file gambar 'loader-spinner.gif' menyebabkan masalah.
  • Setelah GIF tersebut diganti dengan gambar lain, halaman tidak lagi crash.
  • Tidak jelas apakah Grammarly atau Chrome yang akhirnya memperbaiki masalah, karena sekarang GIF aslinya tidak lagi membuat Chrome crash.

Kesimpulan

  • GIF animasi yang tak terduga ternyata menjadi kunci penyelesaian debugging.
  • Mereka menyelesaikan masalah melalui rasa ingin tahu dan kolaborasi.
  • Gusto menawarkan kesempatan untuk bekerja bersama orang-orang yang kolaboratif dan penuh rasa ingin tahu.

Opini GN⁺

Hal terpenting dari tulisan ini adalah penjelasan rinci tentang proses menemukan dan menyelesaikan bug yang disebabkan oleh faktor tak terduga. Tulisan ini menunjukkan kompleksitas dan ketidakpastian dalam rekayasa perangkat lunak, sekaligus menekankan betapa pentingnya kerja tim dan kemampuan memecahkan masalah dengan gigih. Ini memberikan contoh menarik tentang bagaimana tim engineering berkolaborasi untuk menyelesaikan masalah yang sulit dipahami, dan akan menjadi kisah yang sangat menarik bagi orang-orang yang tertarik pada bidang engineering.

1 komentar

 
GN⁺ 2023-12-01
Komentar Hacker News
  • Rasa heran dan curiga terhadap bug yang dipicu oleh file GIF tertentu

    Seorang pengguna menyebut sulit dipercaya bahwa serangkaian kebetulan dalam kode bisa bertumpuk hingga memunculkan bug yang disebabkan oleh file GIF tertentu. Ia juga mengungkapkan keraguan terhadap aplikasi Grammarly, dan heran karena banyak orang pada dasarnya memasang aplikasi yang mirip spyware hanya untuk mendapatkan saran tata bahasa, serta perusahaan mengizinkannya.

  • Masalah garis bawah yang tidak tercetak saat mengerjakan makalah penelitian profesor universitas

    Seorang profesor universitas mengalami masalah teks bergaris bawah yang tidak tercetak saat mengerjakan makalah penelitian, dan akhirnya diketahui bahwa penyebabnya adalah kombinasi driver kartu video tertentu dan driver printer.

  • Berbagi pengalaman bug terkait Grammarly

    Seorang pengguna membagikan bahwa ia pernah mengalami bug serupa di departemen tertentu tempat ekstensi Grammarly terpasang. Masalah itu hanya terjadi pada URL lingkungan staging, dan halaman menjadi macet akibat regular expression yang salah.

  • Mengungkapkan kekecewaan terhadap perbaikan bug

    Seorang pengguna mengatakan ia menikmati proses perbaikan bug itu seperti membaca novel detektif, tetapi akhirnya kecewa karena penyebab pastinya tetap tidak diketahui.

  • Masalah audio saat dual boot Windows dan Linux

    Setelah reboot dari Windows, muncul masalah tidak ada suara di Linux. Pengguna itu menemukan bahwa penyebabnya adalah Windows tidak mematikan perangkat audio sepenuhnya dan malah mengalihkannya ke mode siaga.

  • Ketertarikan pada munculnya bug di lingkungan web tahun 2023

    Seorang pengguna menyatakan ketertarikannya pada bug yang muncul akibat perpaduan kompleks berbagai teknologi, dan bertanya-tanya apakah bug Chromium itu sudah diperbaiki.

  • Berbagi pengalaman bug terkait alat aksesibilitas Chrome

    Seorang pengguna membagikan pengalaman bahwa alat aksesibilitas Chrome pernah menimbulkan bug serupa, dan menyebut kemungkinan Grammarly bergantung pada alat aksesibilitas Chrome.

  • Berbagi kebingungan akibat pengaturan terjemahan halaman

    Muncul masalah ketika seorang pengguna mengklaim bahwa frasa dalam informasi yang ia masukkan berubah saat disimpan, tetapi kemudian terungkap bahwa hal itu terjadi karena opsi Chrome "Terjemahkan halaman ini" sedang aktif.

  • Berbagi pengalaman desktop Linux crash akibat CSS situs web

    Seorang pengguna membagikan pengalaman bahwa CSS pada halaman pencarian Yahoo pernah menyebabkan desktop crash di Red Hat Linux, dan menyarankan agar bug tersebut dilaporkan ke tim pengembang Chrome.

  • Pendapat bahwa memperbaiki bug itu bisa menjadi kerentanan keamanan yang penting

    Seorang pengguna berpendapat bahwa jika bug itu bisa dieksploitasi atau diperbaiki secara deterministik, maka itu bisa menjadi kerentanan keamanan yang sangat berharga.