Pertanyaan wawancara .NET apa yang perlu saya antisipasi?
Oleh Aaron Cao · Diperbarui

Bersiaplah menghadapi pertanyaan runtime (CLR, pengumpulan sampah, tipe nilai versus tipe referensi), pertanyaan bahasa (async dan await, LINQ, generik, record), pertanyaan framework (middleware dan injeksi dependensi ASP.NET Core, EF Core), serta skenario seperti kebocoran memori dalam layanan yang berjalan lama atau endpoint API yang lambat. Pewawancara menilai cara Anda bernalar.
Pertanyaan runtime dan bahasa apa yang membuka wawancara .NET?
Pewawancara memulai dari tempat framework bermula: runtime. Bersiaplah menjelaskan fungsi Common Language Runtime (memuat assembly, mengompilasi intermediate language secara just-in-time, mengelola memori), lalu membahas pengumpulan sampah satu tingkat lebih dalam. Rangkaian pertanyaan lanjutannya dapat diperkirakan: mengapa pengumpul sampah bersifat generasional, apa yang membuat objek bertahan hingga generasi berikutnya, untuk apa large object heap digunakan, serta mengapa IDisposable dan using tetap diperlukan jika memori sudah dikelola. Jawab pertanyaan terakhir dengan sumber daya tak terkelola seperti handle berkas dan koneksi, yang tidak diketahui oleh pengumpul sampah sehingga tidak dapat segera dilepaskan olehnya.
- Tipe nilai dan tipe referensi. Di mana masing-masing berada, apa arti penyalinan bagi keduanya, dan biaya boxing.
- async dan await. Jelaskan bahwa task yang ditunggu membebaskan thread pemanggil alih-alih memblokirnya, mengapa
async voiddikhususkan untuk event handler, dan deadlock apa yang dimaksud ketika orang memperingatkan tentang.Result. - LINQ. Eksekusi tertunda adalah jebakannya: kueri
IEnumerabledijalankan ketika dienumerasi, bukan ketika ditulis, dan kueri terhadap penyedia basis data hanya diterjemahkan menjadi SQL untuk ekspresi yang dipahami penyedia tersebut. - Generik, interface, dan record. Constraint, alasan memilih interface daripada kelas dasar demi kemudahan pengujian, serta manfaat kesetaraan nilai pada record.
Jawab setiap pertanyaan dengan mekanismenya dan satu konsekuensi. Menyatakan bahwa pengumpulan generasi nol murah karena sebagian besar objek mati muda merupakan tingkat jawaban yang diinginkan pewawancara; sekadar menyebutkan generasi tanpa alasannya tidaklah cukup.
Seperti apa pertanyaan ASP.NET Core dan EF Core?
Anda percaya diri menulis controller, tetapi khawatir pertanyaannya akan membahas mekanisme internal yang jarang Anda sentuh. Kekhawatiran itu beralasan karena di sinilah pertanyaan framework muncul. Berikut mekanisme tersebut dalam urutan yang biasanya ditanyakan, beserta pertanyaan lanjutan untuk masing-masing.
- Pipeline permintaan. Middleware berjalan sesuai urutan pendaftarannya, dan setiap komponen menentukan apakah akan memanggil komponen berikutnya. Pertanyaan lanjutan: di mana autentikasi ditempatkan relatif terhadap otorisasi, dan apa yang terjadi jika keduanya didaftarkan dalam urutan terbalik?
- Siklus hidup injeksi dependensi. Singleton hidup selama aplikasi berjalan, scoped hidup selama satu permintaan, dan transient dibuat setiap kali di-resolve. Jebakan klasiknya adalah menyuntikkan layanan scoped, seperti konteks basis data, ke dalam singleton; bersiaplah menjelaskan mengapa hal itu merupakan bug.
- Konfigurasi dan options. Sumber berlapis, override lingkungan, dan pola options untuk pengaturan bertipe.
- EF Core. Pelacakan perubahan dan kapan menonaktifkannya untuk kueri hanya-baca, masalah N+1 dan cara eager loading atau proyeksi menghindarinya, migrasi, serta kondisi nyata ketika kueri yang ditulis manual lebih unggul daripada LINQ.
- Pengujian. Bagaimana interface dan container DI membuat layanan dapat diuji, serta apa yang dapat dan tidak dapat dibuktikan oleh penyedia dalam memori mengenai basis data nyata.
Kandidat terkuat menghubungkan semua hal ini: konteks scoped yang di-resolve di dalam layanan latar belakang singleton bukanlah pertanyaan trivia, melainkan bug memori dan kebenaran yang benar-benar pernah dirilis oleh pewawancara, dan mereka ingin mendengar bahwa Anda akan membuat scope secara eksplisit.
Bagaimana jalannya pertanyaan skenario?
Rangkaian wawancara tingkat senior menyajikan suatu gejala dan mengamati metode Anda. Salah satu contoh: seorang backend engineer yang mengikuti wawancara untuk posisi senior di perusahaan logistik diberi tahu bahwa penggunaan memori API ASP.NET Core terus meningkat selama berhari-hari hingga container dimulai ulang. Jawaban yang kuat tidak menebak. Jawaban itu menanyakan apa yang berubah, memeriksa objek yang tertahan oleh cache statis atau subscription event berumur panjang, mencari layanan scoped yang ditahan singleton, memeriksa pertumbuhan large object heap, dan menggunakan snapshot memori sebelum mengusulkan perbaikan. Pewawancara menilai urutan penyelidikan tersebut.
Skenario lain yang berulang: endpoint yang lambat hanya saat beban tinggi, dengan jawaban yang beralih dari panggilan basis data sinkron ke async, kehabisan connection pool, dan caching; race condition dalam koleksi bersama serta biaya penggunaan koleksi konkuren dan opsi locking; permintaan yang harus memanggil tiga layanan downstream serta cara Anda menangani timeout, percobaan ulang, dan kegagalan parsial; serta migrasi yang harus menambahkan kolom tanpa downtime. Dalam setiap kasus, nyatakan batasannya, pilih mekanisme, dan jelaskan trade-off-nya secara lisan.
Semua ini jauh lebih mudah jika Anda telah melatihnya dengan suara lantang beserta pertanyaan lanjutannya, yang merupakan tujuan mode wawancara simulasi; kumpulan bahasa dan peran lainnya tersedia di pertanyaan wawancara berdasarkan peran dan topik.
Dapatkah asisten wawancara AI membantu menjawab pertanyaan .NET?
Dalam sesi percakapan, ya, sesuai batasan yang dinyatakan. Aplikasi desktop native SubcueAI untuk macOS dan Windows menangkap audio sistem serta mikrofon Anda, lalu menampilkan saran jawaban singkat dalam overlay lokal. Jadi, saat pewawancara menanyakan mengapa konteks scoped di dalam singleton merupakan bug, mekanismenya tampil di layar sementara Anda menjelaskannya dengan kata-kata sendiri. Ekstensi browser mendukung panggilan dalam tab browser di Chrome dan Edge dengan hanya menangkap audio tab rapat. Tidak ada bot yang bergabung ke panggilan dan tidak ada apa pun yang disisipkan ke halaman rapat; petunjuk penyiapan tersedia di halaman tutorial.
Batasannya: asesmen berpengawas, layar yang direkam, laptop yang dikelola perusahaan, atau latihan live coding ketika Anda mengetik C# di bawah pengawasan berada di luar cakupan, dan kemampuan asisten paling lemah tepat ketika wawancara meminta Anda menulis kode. Kemampuannya paling kuat untuk pertanyaan runtime, framework, dan trade-off di atas. Masukkan resume Anda terlebih dahulu agar saran mencerminkan sistem yang benar-benar Anda bangun; profil tersebut tersimpan di pembuat resume.
FAQ
Mengapa pengumpul sampah .NET memiliki generasi?
Apa perbedaan singleton, scoped, dan transient dalam ASP.NET Core?
Apa yang sebenarnya dilakukan await?
Apa itu masalah N+1 dalam EF Core?
Dapatkah SubcueAI membantu selama tes coding .NET berpengawas?
Pertanyaan terkait
- Pertanyaan wawancara Databricks apa yang perlu saya antisipasi?
- Pertanyaan wawancara quality engineer apa yang perlu saya antisipasi?
- Pertanyaan apa yang akan muncul dalam wawancara quant?
- Pertanyaan wawancara Snowflake apa yang perlu saya antisipasi?
- Pertanyaan apa yang akan diajukan dalam wawancara guru?
- Pertanyaan wawancara Terraform apa yang perlu saya antisipasi?
← Selengkapnya tentang Pertanyaan Wawancara Berdasarkan Peran & Topik