Pertanyaan Wawancara Backend Developer: Apa yang Ditanyakan

Oleh Aaron Cao · Diperbarui

Pertanyaan Wawancara Backend Developer: Apa yang Ditanyakan
Wawancara backend berkisar pada lima area: desain API, database dan pemodelan data, caching dan performa, concurrency dan reliability, serta satu sesi system design, biasanya bersamaan dengan sesi coding. Pewawancara tidak terlalu peduli tools apa yang Anda sebutkan, melainkan apakah Anda bisa menjelaskan trade-off dan menceritakan bug yang pernah Anda debug.

Wawancara backend berkisar pada lima area: desain API, database dan pemodelan data, caching dan performa, concurrency dan reliability, serta satu sesi system design, biasanya bersamaan dengan sesi coding. Pewawancara tidak terlalu peduli tools apa yang Anda sebutkan, melainkan apakah Anda bisa menjelaskan trade-off dan menceritakan bug yang pernah Anda debug.

Apa yang dicakup wawancara backend developer?

Deskripsi pekerjaan backend developer biasanya mencantumkan belasan teknologi, sehingga sulit menebak mana yang benar-benar akan diuji dalam wawancara. Bagian ini memetakan area pertanyaan yang berulang di berbagai proses wawancara backend. Stack teknologinya berbeda-beda antar perusahaan, tetapi topik dasarnya tetap sama.

  • Desain API. REST versus RPC, versioning, pagination, respons error, autentikasi, dan idempotency key.
  • Database dan pemodelan data. Memilih penyimpanan relasional atau dokumen, index, join, transaksi, isolation level, query N+1, dan menjalankan migrasi skema dengan aman.
  • Caching dan performa. Invalidasi cache, kedaluwarsa, cache stampede, dan cara melakukan profiling pada endpoint yang lambat.
  • Concurrency dan reliability. Race condition, lock, queue, timeout, dan retry dengan backoff.
  • System design. Studi kasus seperti URL shortener, rate limiter, atau notification service.
  • Coding. Struktur data dan soal praktis, biasanya dalam bahasa pemrograman pilihan Anda.

Sesi bahasa dan framework tertentu membahas lebih dalam; hub bank pertanyaan mengumpulkan kumpulan soal untuk Go, Java, Spring Boot, microservices, dan lainnya.

Pertanyaan database dan API apa yang paling sering muncul?

Pertanyaan-pertanyaan ini muncul dalam beberapa bentuk di hampir semua proses wawancara backend. Latih menjawab masing-masing secara lisan dalam waktu kurang dari dua menit:

  • Apa yang terjadi saat Anda menambahkan index pada sebuah kolom, dan kapan index justru merugikan?
  • Apa perbedaan antara isolation level read committed dan serializable, dan kapan Anda perlu memilih level yang lebih ketat?
  • Bagaimana cara menemukan dan memperbaiki query N+1 pada sebuah ORM?
  • Bagaimana cara membuat endpoint pembayaran aman untuk di-retry oleh klien?
  • Bagaimana cara melakukan paginasi pada result set besar yang berubah saat pengguna scroll?
  • Kapan Anda akan memilih document store dibanding database relasional?
  • Bagaimana cara melakukan rename kolom tanpa downtime?

Jawaban yang kuat selalu mengikuti pola yang sama: sebutkan pilihan default Anda, sebutkan biaya dari pilihan itu, lalu jelaskan situasi yang membuat jawaban Anda berubah. Pewawancara biasanya menanyakan lebih lanjut soal situasi perubahan itu, jadi siapkan contoh nyata.

Bagaimana cara menjawab pertanyaan system design dan debugging?

Untuk system design, mulailah dengan mengklarifikasi requirement: siapa yang memanggil service ini, apa yang tidak boleh hilang, dan operasi read atau write mana yang paling dominan. Setelah itu, gambarkan desain paling sederhana yang berfungsi, dan baru tambahkan cache, queue, atau sharding jika Anda bisa menjelaskan requirement mana yang memaksanya.

Pertanyaan debugging adalah tempat pengalaman nyata terlihat. Seorang backend engineer yang mengikuti wawancara untuk posisi mid-level di perusahaan payment ditanya mengapa latency sebuah endpoint menjadi dua kali lipat setelah sebuah rilis. Alih-alih menebak-nebak penyebabnya, ia menjelaskan langkah-langkahnya: memeriksa apa yang berubah dalam deploy, membandingkan trace untuk jalur yang lambat, membaca query plan, dan mengonfirmasi perbaikan terhadap metrik latency yang sama. Ia kemudian mengaitkannya dengan insiden slow-query dari pekerjaan sebelumnya, dan sisa percakapan pun berfokus pada insiden itu, bukan pada tools.

Siapkan dua cerita produksi sebelum wawancara backend apa pun: satu bug yang berhasil Anda lacak, dan satu keputusan desain yang sekarang akan Anda ambil secara berbeda.

Bagaimana cara berlatih, dan di mana peran asisten langsung?

Membaca jawaban tidak sama dengan mengucapkannya. Jalankan daftar pertanyaan di atas secara lisan dengan bantuan timer, atau biarkan alat mock interview mengajukan pertanyaan dan menindaklanjuti jawaban yang masih kabur.

Untuk wawancara video langsung itu sendiri, SubcueAI mentranskrip ucapan pewawancara dan menyusun poin jawaban terstruktur dalam overlay lokal, baik di aplikasi desktop pada macOS atau Windows (Zoom, Google Meet, Microsoft Teams) maupun di Side Panel ekstensi browser untuk panggilan di tab Chrome atau Edge. Tidak ada bot yang bergabung ke dalam panggilan. Fitur ini paling berguna pada sesi yang bersifat percakapan, seperti diskusi desain dan pertanyaan seputar pengalaman. Sesi coding pada layar yang dibagikan, penilaian yang diawasi, wawancara satu arah yang direkam, dan perangkat yang dikelola perusahaan berada di luar cakupan yang bisa ditangani dengan aman, dan apa pun yang Anda tampilkan di layar akan terlihat. Panduan setup ada di halaman tutorial.

FAQ

Apa saja pertanyaan umum dalam wawancara backend developer?

Pertanyaan seputar desain API, index dan transaksi database, caching, concurrency dan retry, satu studi kasus system design seperti rate limiter atau URL shortener, dan biasanya satu sesi coding.

Apakah wawancara backend untuk posisi junior mencakup system design?

Biasanya versi yang lebih ringan. Kandidat junior lebih mungkin mendapat tugas desain kecil, seperti mendesain API untuk satu fitur, dibanding sistem terdistribusi yang lengkap. Proses wawancara mid-level dan senior biasanya menyertakan sesi desain khusus.

Bahasa pemrograman apa yang sebaiknya saya gunakan dalam sesi coding backend?

Bahasa yang paling Anda kuasai, kecuali lowongan pekerjaan mensyaratkan bahasa tertentu. Pewawancara menilai kemampuan pemecahan masalah dan kejelasan, dan berjuang dengan sintaks yang asing hanya menghabiskan waktu yang Anda butuhkan untuk menjelaskan.

Bagaimana cara mempersiapkan wawancara backend dalam waktu singkat?

Prioritaskan pertanyaan database dan desain API, latih satu studi kasus system design secara lisan dari awal sampai akhir, dan siapkan dua cerita produksi: satu bug yang pernah Anda debug dan satu keputusan desain yang ingin Anda ubah.

Pertanyaan terkait

← Selengkapnya tentang Pertanyaan Wawancara Berdasarkan Peran & Topik