Perusahaan saya perlu menyewa pengembang PHP, tetapi tidak ada yang memiliki pengetahuan PHP di perusahaan saya dan kami merasa sulit untuk menguji keterampilan PHP. Jika itu adalah pengembang C / Java saya akan memintanya untuk menulis implementasi cepat dari Game of Life, tetapi PHP adalah bahasa yang sama sekali berbeda.
Saya melihat tes ini dengan minat:
http://vladalexa.com/scripts/php/test/test_php_skill.html
Adakah yang punya saran lebih banyak?
Jawaban:
Kode
Jika Anda meminta kandidat untuk menulis kode, pastikan bahwa:
Jika Anda meminta kandidat untuk membaca kode, pastikan bahwa:
Anda dapat menggunakan tiga atau lebih potongan kode yang berbeda, mulai dari yang lebih sederhana dan hanya maju ke yang berikutnya jika Anda melihat bahwa kandidat mengatasi dengan mudah. Lempar rekursi, untuk membumbui semuanya.
Sumber daya
Mintalah daftar terperinci sumber daya PHP yang digunakan kandidat. Buku, blog, forum, majalah, dll. Begitulah cara majikan saya saat ini mengetahui tentang StackOverflow .
Jika kandidat menyebutkan StackOverflow atau Programmer, Anda TIDAK boleh bertanya atau mencoba mencari tahu nama pengguna mereka. Jika mereka ingin mengiklankan reputasi mereka, mereka akan menyertakan tautan Karir 2.0 di resume mereka.
Kerangka kerja
Setiap pengembang PHP harus mengetahui kerangka kerja PHP paling populer:
dan fasih dalam setidaknya satu dari mereka. Anda dapat memiliki beberapa contoh kode yang siap untuk masing-masing dan meminta kandidat untuk membaca dan menjelaskannya, setelah mereka memberi tahu Anda mana yang lebih mereka kenal.
Debugging & Profiling
Saya selalu merasa bahwa pengembang PHP kurang memiliki keterampilan debugging dan profil (mungkin hanya pengembang PHP yang pernah bekerja sama dengan saya). Jika selama diskusi Anda mengetahui bahwa kandidat aktif menggunakan xdebug , jangan repot-repot dengan sisa wawancara dan hanya mempekerjakan mereka. ;)
Sanitasi input
Ini penting. Anda dapat mulai dengan diskusi tentang mengapa ini penting dan kemudian meminta metode yang paling umum untuk mencapainya. Diskusi ini akan membantu Anda tentang apa yang harus ditanyakan.
Beberapa petunjuk:
PHP snafus
Anda dapat menemukan banyak snafus PHP dalam diskusi yang luar biasa ini . Jika Anda mewawancarai untuk posisi senior, Anda sebaiknya bertanya pada beberapa dari mereka. Beberapa contoh:
PHP menangani nilai-nilai numerik dalam string:
Kode PHP yang valid :
Dalam PHP, string sama baiknya dengan pointer fungsi:
Pengujian unit
Perlu saya katakan lebih?
Kesimpulan
Pengembang PHP yang baik harus menggabungkan berbagai keterampilan & bakat:
Daftar ini terus berlanjut. Pastikan Anda menyesuaikan wawancara dengan kebutuhan spesifik pembukaan pekerjaan, Anda tidak ingin merekrut hanya pengembang yang baik tetapi pengembang yang baik sangat hebat dalam hal apa yang segera Anda perlukan untuk dia lakukan.
sumber
Tes yang Anda tautkan menarik, dan jawaban Yannis Rizos bagus, tapi saya pikir yang juga penting adalah ini:
Jika Anda membutuhkan pengembang yang baik, jangan mencari pengembang PHP. Cari pengembang yang baik yang mengerti PHP. Itu berarti, setidaknya setengah dari wawancara Anda harus mengajukan pertanyaan yang tidak ada hubungannya dengan sintaks PHP atau fungsi PHP.
Tanyakan padanya apa itu MVC, apa itu AJAX, bagaimana HTTP bekerja, bagaimana REST bekerja, bagaimana SQL bekerja, beberapa struktur data, beberapa dasar kinerja (bagaimana Anda mengukur, bagaimana Anda meningkatkan), dasar-dasar pengujian, dasar-dasar keamanan (XSS, XSRF, suntikan, bagaimana Anda bertahan), pengetahuan dasar pemrograman yang diterapkan pada domain PHP biasa - web, jaringan, transformasi data, dll.
Jika dia ahli dalam hal itu, lanjutkan memintanya untuk menulis beberapa kode sederhana, pilih beberapa tugas mudah yang seharusnya tidak memakan waktu lama - seperti menemukan kata-kata dengan sebagian besar vokal dalam satu baris dalam teks, atau membalikkan setiap kata dalam teks, atau mengalikan dua matriks. Anda juga dapat memintanya untuk mengimplementasikan Game of Life di PHP, jika Anda suka :)
Jika dia mengatasinya, maka Anda dapat melanjutkan ke pertanyaan PHP yang lebih rumit, tetapi jangan terlalu membebani ini. Dia bisa membaca sebagian besar dalam manual, dan apa yang tidak bisa dia baca, dia akan belajar dengan cepat jika dia baik. PHP dibangun untuk menjadi sederhana, jadi jika dia seorang programmer yang baik, dan memiliki pengetahuan tentang PHP, dia mungkin akan dapat mengejar ketinggalan. Jika dia tahu cara memprogram secara umum, maka mempelajari cara memprogram dalam PHP lebih mudah daripada sebaliknya - mengetahui minutia sintaksis PHP tidak penting jika Anda tidak mengerti untuk apa unit test atau bagaimana menyingkirkan masalah XSS.
sumber
Sementara jawaban Yannis Rizos adalah jawaban yang bagus - saya tahu saya tidak akan lulus ujian itu dan saya mungkin menggunakan jawaban itu sebagai sumber daya untuk menentukan di mana harus fokus untuk meningkatkan kemampuan PHP saya, saya pikir itu akan bernilai saat Anda menemukan pemrograman sobat yang tahu PHP untuk mengikuti proses wawancara. Semua pertanyaan dalam jawaban sebelumnya baik, tetapi tanpa pengetahuan domain, akan sulit untuk menilai kualitas jawaban.
Yang mengatakan, tergantung pada apa yang Anda butuhkan seperti yang orang lain katakan fasilitas pemrograman umum dan kesesuaian tim mungkin lebih penting daripada pengetahuan khusus bahasa.
sumber
I think it would be worth your while to find a programming buddy who knows PHP to sit in on the interview process.
, saran bagus.