Baru-baru ini saya mengetahui bahwa Facebook memiliki tantangan pemrograman yang jika selesai dengan benar Anda secara otomatis mendapatkan wawancara telepon.
Ada contoh tantangan yang meminta Anda untuk menulis algoritma yang dapat menyelesaikan masalah tipe Tower of Hanoi . Diberi sejumlah pasak dan cakram, konfigurasi awal dan akhir; Algoritme Anda harus menentukan langkah sesedikit mungkin untuk mencapai konfigurasi final dan menampilkan langkah-langkahnya.
Tantangan sampel ini memberi Anda batas waktu 45 menit tetapi memungkinkan Anda untuk tetap menguji kode Anda untuk melihat apakah itu melewati begitu batas waktu Anda berakhir.
Saya tidak tahu ada solusi matematika lucu yang bisa menyelesaikannya, dan saya tidak ingin mencari satu karena saya pikir itu akan curang. Jadi saya mencoba untuk menyelesaikan tantangan yang terbaik yang saya bisa sendiri.
Saya dapat membuat algoritma yang berfungsi dan berhasil. Namun, saya membutuhkan waktu lebih dari 4 jam, lebih lama dari persyaratan 45 menit. Karena saya butuh waktu lebih lama dari waktu yang ditentukan, saya belum mencoba tantangan yang sebenarnya.
Ini membuat saya bertanya-tanya, pada kenyataannya apakah penting bahwa saya butuh waktu lama? Maksud saya apakah ini pertanda bahwa saya tidak akan bisa mendapatkan pekerjaan di tempat seperti ini (bukan hanya Facebook, tetapi Google, Fog Creek, dll.) Dan perlu menurunkan aspirasi saya, atau apakah fakta bahwa saya benar-benar lulus? pada upaya pertama saya meskipun butuh waktu terlalu lama dianggap baik?