Jangan menulis demo untuk wawancara jika Anda bisa menghindarinya; kirimkan kode atau proyek yang ada jika Anda bisa.
Demo dan contoh kode penting karena banyak alasan (yang berbeda-beda menurut pengulas), tetapi kebanyakan tentang menunjukkan kepada pengusaha potensial jenis kode yang Anda tulis di alam bebas dan jenis masalah yang Anda ingin selesaikan. Mereka juga membantu menunjukkan tingkat minat Anda dalam pengembangan perangkat lunak.
Jauh lebih baik untuk mengirimkan beberapa kode yang sudah Anda tulis untuk proyek atau permainan sebelumnya yang telah Anda banggakan, atau yang menunjukkan solusi cerdas untuk masalah - apa pun yang menarik atau sulit atau yang dapat berfungsi sebagai dasar untuk diskusi yang baik.
Menulis kode secara eksplisit untuk diserahkan karena kode sampel cenderung dianggap palsu dan dibuat-buat; dapat dengan mudah mudah untuk mengatakan, misalnya, bahwa seorang programmer berpikir bahwa seorang pemberi kerja potensial ingin melihat kode "yang terdokumentasi dengan baik" dan dengan demikian memberikan komentar yang sangat terperinci tentang segala hal, berusaha keras untuk apa yang mereka yakini sebagai kesempurnaan. Kode sebenarnya tidak sempurna, memiliki kutil dan tepi yang kasar, dan ketika Anda menulis kode secara eksplisit untuk pengiriman demo, Anda cenderung memolesnya sehingga menjadi jelas Anda tidak menulis ini karena Anda suka menulisnya. Anda hanya menginginkan pekerjaan.
Yang mengatakan, jika Anda tidak memiliki pekerjaan yang dapat Anda kirimkan - baik karena Anda belum menulis apa pun atau karena pekerjaan Anda sebelumnya mencegah Anda mengirimkan salah satu kode (di bawah NDA) - Anda tidak memiliki banyak pilihan selain menulis sesuatu yang baru. Dalam skenario itu saya akan mendorong Anda untuk fokus menulis hal itu untuk kepentingannya sendiri , dan melupakan apa yang "inginkan" oleh majikan. Tulis permainan karena Anda ingin menulis permainan. Tulis demo teknologi keren karena Anda ingin menjelajahi teknologi itu, karena itulah yang Anda minati.
- Seberapa penting modularitas kode?
- Seberapa pentingkah menampilkan implementasi algoritma yang khas?
- Seberapa pentingkah untuk memasukkan fitur-fitur baru?
- Seberapa pentingkah kemampuan bermain?
- Haruskah saya mengistimewakan pembacaan kode atau optimisasi kode?
- Seberapa penting dokumentasi kode?
Jawaban untuk semua pertanyaan yang lebih kecil ini, sayangnya, "itu tergantung" (kecuali untuk hal keterbacaan - saya pikir Anda harus mendukung keterbacaan secara umum, terutama untuk "kode demo"). Beberapa majikan mungkin ingin melihat Anda menerapkan quicksort. Orang lain mungkin tidak peduli. Yang lain hanya akan meminta Anda untuk mengimplementasikan kembali quicksort di papan tulis di wawancara.
Jangan fokus pada apa yang Anda inginkan pengusaha , karena pengusaha yang berbeda dan bahkan orang yang berbeda yang dapat meninjau kode Anda akan menginginkan hal yang berbeda. Alih-alih berfokuslah pada apa yang ingin Anda tunjukkan tentang diri Anda sendiri , karena Anda memiliki jauh lebih banyak kendali atas hal itu dan itu akan bermanfaat bagi Anda dalam jangka panjang.