Versi pendek
Jika pekerjaan terdiri dari memelihara aplikasi, keterampilan yang perlu Anda uji selama wawancara adalah:
Kemampuan untuk memahami basis kode besar dengan dokumentasinya, tes unit , dll.
Kemampuan untuk refactor kode dan membawa perubahan tanpa melanggar semuanya.
Meminta orang membaca kode tidak akan membantu Anda mengevaluasi kemampuan itu.
Versi panjang
Apakah Anda diminta menulis kode? Jika ya, seperti yang dicatat Sign dalam jawabannya , ini sudah cukup. Jika kita menggeneralisasi sedikit, orang yang menulis kode sumber yang jelas dan mudah dipahami akan dapat membaca kode sumber yang ditulis oleh orang lain.
Jika Anda tidak diminta untuk menulis kode, maka, Anda mungkin diwawancarai oleh seseorang dari departemen sumber daya manusia. Wawancara semacam itu tidak bisa terlalu teknis, dan sebagian besar tidak berharga, karena wawancara itu tidak mengasah keterampilan dan kemampuan Anda untuk bekerja dengan baik, melainkan jumlah tahun yang Anda habiskan di perguruan tinggi dan hal-hal lain yang tidak ada hubungannya dengan pekerjaan itu.
Ada beberapa alasan lagi untuk tidak meminta membaca kode untuk pekerjaan pemeliharaan:
1. Sulit dilakukan dengan andal
Konkretnya, apa yang akan Anda lakukan jika Anda seorang pewawancara? Buat kandidat Anda membaca beberapa kode. Kode apa? Dalam bahasa apa? Seberapa baik atau buruk ditulis? Dengan atau tanpa komentar? Dengan atau tanpa dokumentasi?
Lebih penting lagi, apa yang diceritakannya tentang kandidat? Seberapa baik berkorelasi dengan basis kode itu sendiri?
Katakanlah Anda memiliki aplikasi VB.NET lama untuk dipelihara. Anda tahu bahwa kode sumber sebagian besar jelek dan belum teruji, dan beberapa komentar sudah kedaluwarsa atau menyesatkan. Selama tiga bulan terakhir, Anda memiliki pengembang yang sangat terampil mengerjakan solusi; dia refactored dan unit menguji bagian-bagian paling penting dari aplikasi, menambahkan komentar di mana ada kebutuhan untuk komentar, dan, yang paling penting, menulis dokumentasi terperinci tentang arsitektur keseluruhan, bagian-bagian penting dan perangkap.
Anda sekarang merekrut seorang pengembang untuk mempertahankan basis kode ini. Selama wawancara, apakah Anda akan memberikan kode warisan (jelek yang belum teruji), atau potongan kode yang dire-refored oleh pengembang sebelumnya?
Apakah Anda akan memberikan dokumentasi? Untuk membaca dokumentasi, kandidat harus menghabiskan setidaknya beberapa jam. Ini membuatnya tidak mungkin dilakukan selama wawancara.
2. Membaca potongan kode pendek tidak sama dengan membaca kode proyek yang sudah dikenal
Ingat, tugasnya adalah mempertahankan proyek. Sulit untuk mempertahankan basis kode besar pada hari - hari atau minggu-minggu pertama ketika Anda tidak terbiasa dengan proyek. Jauh lebih mudah untuk melakukannya setelah beberapa bulan ketika Anda telah menulis semua dokumentasi dan memiliki pandangan yang jelas tentang basis kode keseluruhan.
Hal yang paling penting untuk diuji adalah apakah orang itu akan efisien bulan-bulan itu . Anda tidak peduli jika orang itu tidak akan dapat memahami apa pun dalam dua hari pertama.
Dengan meminta seseorang untuk membaca sepotong kode pendek dari awal, Anda tidak menguji bagaimana orang ini dapat menangani kode LR yang telah didokumentasikan dan didokumentasikan oleh ribuan orang .
3. Mempertahankan kode sumber tidak hanya membacanya
Saat Anda mempertahankan basis kode, Anda memodifikasinya . Pengembang yang baru saja membaca kode tidak membawa apa pun yang bermanfaat bagi perusahaannya.
Keterampilan yang berguna adalah kemampuan untuk memperbaiki kode , untuk menambahkan tes unit , untuk memprediksi dampak perubahan , dll. Anda tidak menguji keterampilan itu dengan meminta seseorang untuk membaca kode selama wawancara.