Pertanyaan Wawancara Pengembang Perangkat Lunak - Adil atau Tidak Adil [ditutup]

10

Saya baru saja menelepon wawancara dengan perusahaan untuk posisi pengembang perangkat lunak pascasarjana dan ditanyai pertanyaan-pertanyaan berikut. Saya harus menambahkan bahwa perusahaan yang bersangkutan bukan vendor basis data.

  1. Bagaimana cara kerja pengoptimal permintaan?

  2. Jika database berkinerja buruk, bagaimana Anda akan menggunakan log kinerja untuk mengetahui masalahnya.

Saya telah bertanya apakah mereka mengajukan pertanyaan seperti itu dari semua calon pengembang perangkat lunak (lulusan atau yang berpengalaman) dalam wawancara telepon pertama. Mereka menjawab bahwa mereka suka menguji pengetahuan kandidat mereka tentang pengembangan basis data.

Saya ingin menulis kepada perusahaan untuk mengatakan bahwa pertanyaan-pertanyaan ini tidak masuk akal untuk ditanyakan pada wawancara pengembang perangkat lunak dan untuk meminta agar wawancara saya selesai.

Saya ingin memeriksa kewajaran asumsi berikut

a) Pertanyaan-pertanyaan itu tidak dapat secara adil diklasifikasikan sebagai pertanyaan pengembangan basis data.
b) Saya pikir pertanyaannya sesuai untuk wawancara DBA tetapi sama sekali tidak masuk akal untuk wawancara pengembang perangkat lunak (berpengalaman atau tidak).
c) Pertanyaan pertama hanya relevan dengan vendor basis data.
d) Pertanyaan kedua tidak adil karena pengembang perangkat lunak biasanya tidak berurusan dengan log kinerja database karena itu adalah pekerjaan DBA.

Mungkin beberapa dari Anda akan berbaik hati untuk mengomentari asumsi saya atau mungkin memiliki saran lain, sebelum saya menulis surat kepada perusahaan.

user607018
sumber
23
Saya lebih suka mempekerjakan pengembang yang bisa menjawab pertanyaan-pertanyaan itu secara adil, daripada yang tidak bisa. Tapi saya tidak akan memutuskan hanya berdasarkan itu.
Dr. belisarius
14
Kami memiliki orang yang diwawancarai yang begitu tidak senang dengan wawancara itu sehingga ia menagih kami selama satu jam waktu konsultasi. Kami sudah mewariskannya, tapi kami senang dia menindaklanjuti untuk memperkuat keputusan kami. :-)
18
hapus dari kandidat_list di mana nama pengguna = "user607018";
Martin York
44
@ user607018 Saya pikir salah satu masalah Anda di sini adalah asumsi Anda bahwa wawancara kerja harus "adil", seperti ujian di sekolah. Itu tidak benar; Wawancara kerja hanyalah cek untuk melihat apakah mereka ingin mempekerjakan Anda. Jika mereka tidak menyebutkan optimasi / kinerja database sama sekali dalam iklan, maka itu cerita yang berbeda, mereka telah membiarkan Anda membuang waktu melamar pekerjaan yang tidak dapat Anda lakukan, tetapi sebaliknya keadilan tidak masuk ke dalamnya sama sekali . Ini adalah kesalahpahaman umum ketika pergi dari dunia artifisial sekolah ke dunia nyata untuk benar-benar menyelesaikan sesuatu.
MGOwen
16
Jika Anda harus menulis pertanyaan SQL, Anda harus tahu jawaban untuk pertanyaan itu. Kalau tidak, Anda akan berakhir menulis kueri jelek, dan orang lain harus membersihkannya setelah Anda. Jadi, pertanyaan itu adil dan dibenarkan.
SK-logic

Jawaban:

86

Jika saya seorang pewawancara (yang kadang-kadang saya lakukan) dan menerima surat dari seorang kandidat yang mengeluh bahwa pertanyaannya tidak adil dan mereka ingin melakukan pergantian, saya akan berterima kasih kepada bintang keberuntungan saya bahwa kami menghindari peluru itu dan segera memindahkan aplikasi ke tumpukan "tolak". Bertingkah seperti ini hanya menunjukkan Anda sebagai pengeluh, dan tidak memiliki sikap "bisa melakukan" yang dicari.

Sebuah. pertanyaan-pertanyaan itu wajar untuk menanyakan topik pengembangan basis data.
b. Salah. Apa pun yang berkaitan dengan pengembangan perangkat lunak adalah permainan yang wajar untuk ditanyakan. Perlu diingat bahwa mendapatkan jawaban yang salah tidak secara otomatis mendiskualifikasi Anda untuk posisi (atau posisi lain di perusahaan); mungkin hanya membantu untuk mengklasifikasikan Anda sebagai seseorang yang tidak akan paling cocok untuk pekerjaan yang berorientasi database.
c. Salah.
d. Salah. Pertama-tama, mungkin tidak ada DBA khusus; kedua, pengembang perangkat lunak harus menyadari berbagai masalah yang dapat mempengaruhi kinerja (dan akurasi), dan setidaknya memiliki pemahaman tingkat tinggi tentang manajemen basis data.

Ambil ini sebagai pelajaran bahwa ada hal-hal yang belum Anda ketahui. Sekarang Anda tahu apa yang harus dipelajari untuk waktu berikutnya.

Eter
sumber
31
+1 untuk "sekarang Anda tahu apa yang harus dipelajari." Hal TERAKHIR yang diinginkan majikan adalah staf yang memiliki "bukan pekerjaan saya" yang disempurnakan.
Dave
7
+1 - akan meningkatkan +100 jika saja saya bisa ... terlalu banyak "pengembang" hari ini yang tahu tentang database dan bagaimana mereka bekerja - namun mereka menggunakannya sepanjang waktu ...
marc_s
+1 Anda harus mengharapkan APA SAJA selama wawancara. Ini permainan mereka, wawancara mereka dan perusahaan mereka
Saya akan memberikan lebih banyak suara jika saya bisa, Anda mengatakan apa yang ingin saya katakan dengan lebih bijaksana. Saya juga akan menunjukkan bahwa pertanyaan yang mungkin tidak Anda ketahui jawabannya mungkin kadang-kadang diminta untuk melihat bagaimana Anda merespons di bawah tekanan. Tetapi saya menemukan tidak ada yang aneh tentang pertanyaan ini sama sekali jika pengembangan database adalah bagian penting dari pekerjaan.
HLGEM
5
Selain itu saya akan mengatakan bahwa "Bagaimana cara kerja optimizer kueri?" tidak selalu berarti bahwa mereka ingin Anda dapat membuat pengoptimal permintaan dari awal. Ini mungkin berarti mereka ingin memeriksa pemahaman Anda tentang pada titik apa pengoptimal berjalan, ketika berhadapan dengan procs yang disimpan, permintaan SQL adhoc, dll. Ini adalah pengetahuan yang benar-benar relevan untuk pengembang yang menulis kode yang mengenai database.
Carson63000
17

Saya pikir ini adalah pertanyaan yang wajar (dan sepertinya itu yang mungkin ditanyakan Google). :) Inti dari pertanyaan ini BUKAN untuk benar-benar menguji pengetahuan terperinci Anda tentang permintaan basis data dan semacamnya, tetapi lebih untuk melihat bagaimana Anda akan mendekati dan memecahkan masalah. Kemampuan untuk melakukan tugas yang sudah Anda lakukan sebelumnya diperlukan, tetapi kemampuan untuk berpikir sendiri dan mendekati masalah baru adalah keterampilan yang vital.

Ketika dihadapkan dengan pertanyaan seperti itu, jika saya kurang dalam pengetahuan khusus dari database yang diberikan, saya pikir respon yang adil akan dimulai, "Yah, saya tidak punya banyak pengalaman dengan teknologi itu secara spesifik, tetapi dalam secara umum saya akan memeriksa log kinerja untuk menemukan operasi yang paling sering dilakukan dan mencoba untuk memeringkat mereka dengan memproses waktu. Dengan cara itu saya bisa mengukur operasi mana yang paling mahal dan mungkin kandidat yang baik untuk optimasi. "

Anda tidak memerlukan pengetahuan teknis khusus untuk jawaban di atas tetapi itu menunjukkan pewawancara Anda bahwa Anda siap untuk memecahkan masalah baru.

Kenny Wyland
sumber
4
Sebagai alternatif, mungkin perusahaan memang lebih memilih pengembang dengan pengetahuan tentang optimasi kueri. Istri saya bukan DBA, tapi dia melakukan banyak pekerjaan dengan baik untuk mengoptimalkan pertanyaan. DBA terlalu sibuk untuk mengoptimalkan semua pertanyaan yang dapat menggunakannya.
David Thornley
16

Jika adil atau tidak adil bukan pertanyaan, mereka menyewa sehingga mereka membuat aturan dan diizinkan untuk bertanya apa pun yang mereka inginkan (ok bukan segalanya, tetapi hampir semuanya;))

Dan jika Anda masih menginginkan pekerjaan itu, saya tidak berpikir Anda akan melakukan kebaikan jika Anda menulisnya.

RoflcoptrException
sumber
Secara teknis mereka dapat menanyakan apa pun kepada Anda, terserah Anda untuk menjawab atau tidak (dan jika mereka meminta Anda sesuatu yang benar-benar bodoh, Anda tetap tidak menginginkan pekerjaan itu).
o0 '.
16

Strategi yang sangat umum dalam wawancara kerja adalah dengan mengajukan pertanyaan yang berada di luar level posisi yang diwawancarai dan melihat bagaimana seorang calon terlibat. Dengan pertanyaan yang diajukan, Anda dapat diharapkan untuk menjawab sesuatu seperti:

Yah, pengetahuan saya tentang basis data belum sempurna, tetapi saya pikir ini berjalan seperti ini ...

Atau bahkan:

Maaf itu jauh di luar keahlian saya, saya perlu memeriksa rincian log kinerja dengan DBA

Secara umum saya berharap kandidat entry level setidaknya memiliki pemahaman dasar tentang cara kerja database dan juga memiliki sikap "Saya tidak tahu tetapi saya akan mencoba dan belajar".

Jika Anda telah melakukan upaya yang jujur ​​dan mereka mengakhiri panggilan telepon segera maka Anda akan memiliki alasan nyata untuk merasa sulit dilakukan, tetapi seperti yang saya katakan Anda harus belajar bagaimana tampil percaya diri sambil mengakui Anda tidak tahu apa-apa.

David Hall
sumber
12

Saya kenal pewawancara yang tidak menganggap wawancara lengkap kecuali mereka dapat menemukan beberapa pertanyaan teknis semi-relavan yang tidak dapat dijawab oleh kandidat. Tujuannya adalah untuk melihat bagaimana kandidat menangani jenis pertanyaan itu.

Mengakui bahwa mereka tidak tahu? Baik. Membuat spin / BS untuk sebuah jawaban? Pintu.

hotpaw2
sumber
9

IMO, Pengembang perangkat lunak dan peran DBA tidak dikategorikan dengan baik di banyak perusahaan. Anda biasanya perlu tahu setidaknya beberapa bagian dari Database juga jika Anda adalah seorang pengembang perangkat lunak. Jadi, pertanyaan-pertanyaan tampak adil bagi saya, asalkan tidak ditanyakan lebih segar.

Mahesh Velaga
sumber
8

Saya pikir ini adil. Saya tidak bekerja di vendor database tetapi mengetahui cara membaca rencana kueri (dan log kinerja, pada tingkat lebih rendah) adalah SANGAT penting. Mengetahui cara kerja pengoptimal query juga bagus untuk diketahui.

Menanggapi peluru Anda:

a) Hah? Tentu mereka terkait dengan pengembangan basis data dan jika Anda menulis kode dan program Anda perlu meminta data, maka itu relevan.

b) Tidak juga. DBA sebaiknya mengetahui jawabannya tetapi pengembang yang baik juga harus tahu jawabannya. Saya tidak akan mengharapkan jawaban sedetail dari DBA tapi saya mengharapkan sesuatu. Dan jika pengembang tidak tahu, saya mungkin hanya menerima sebagai asnwer "Saya akan meminta DBA untuk mengajari saya" jika pengembang masih relatif baru dalam pekerjaan basis data.

c) Tidak. Ini relevan bagi siapa saja yang peduli dengan kinerja kueri basis data mereka. Jika Anda tidak peduli seberapa cepat kueri Anda berjalan, maka Anda dapat mengabaikannya. Klien Anda, yang memiliki kinerja yang semakin buruk di situs web mereka, di sisi lain, mungkin tidak setuju.

d) Mungkin. Tidak semua pengembang melihat log kinerja, tetapi jika ada masalah Anda bisa mengharapkan DBA mengirimi Anda email bagian yang relevan dan menjelaskan masalah jika Anda tidak tahu bagaimana menafsirkannya. Paling tidak, seorang pengembang harus dapat melihat rencana permintaan dan melihat masalah dasar (Scan Tabel Lengkap => Buruk, Pindai Indeks Cepat => Bagus).

Karena Anda baru lulus sekolah dan Anda mungkin tidak membahas hal-hal ini di kelas, Anda dapat menjawab dengan mengatakan "Saya akan berbicara dengan dev atau DBA yang lebih senior dan meminta bantuan untuk memahami hal ini". Pewawancara mungkin menerima itu karena itu menunjukkan setidaknya Anda bersedia mempelajari hal-hal baru, karena Anda belum memiliki pengalaman untuk mengetahuinya. Pilihan lainnya adalah pergi dan mempelajarinya sendiri.

Semoga sukses di wawancara selanjutnya!

FrustratedWithFormsDesigner
sumber
7

Mereka berhak untuk bertanya apa yang mereka inginkan. Anda mungkin tidak membahas topik-topik ini dalam kurikulum perguruan tinggi Anda, tetapi itu tidak berarti orang-orang yang diwawancarai tidak atau memiliki minat yang cukup pada topik untuk melampaui kurikulum. Mereka mencari yang terbaik. Saya harap Anda setidaknya mencoba menjawab pertanyaan dan tidak bersikap defensif. Jika saya adalah mereka dan mendapat surat cengeng dari Anda, Anda akan masuk daftar hitam.

James
sumber
2
Atau karena itu, hanya karena itu tidak tercakup di sekolah tidak berarti perusahaan tidak memerlukan keterampilan itu!
GrandmasterB
3
Dan jika sang kandidat entah bagaimana mendapatkan kesempatan kedua, mengharapkan pertanyaan yang sama (atau bahkan sesuatu yang samar-samar serupa) akan menjadi kegagalan besar. Satu hal yang saya lakukan untuk mengalahkan berbagi pertanyaan (terutama disukai oleh perekrut) adalah memvariasikan pertanyaan "aneh" cukup signifikan. Lain kali mengharapkan sesuatu tentang integrasi ponsel atau pemindaian barcode.
7

Pengembangan perangkat lunak adalah profesi multidisiplin. Saya tidak berpikir Anda akan mendapatkan jarak tempuh meminta wawancara dari Anda. "Wajar" dalam konteks ini adalah apakah perusahaan tertentu akan menghilangkan Anda dari pertimbangan hanya atas dasar kurangnya keterampilan DBA Anda. Mengajukan pertanyaan itu sangat masuk akal.

Semakin jauh Anda maju dalam karier, semakin banyak yang perlu Anda ketahui. Jika Anda bertanya-tanya mengapa pengembang perangkat lunak harus peduli dengan optimasi kueri, pertimbangkan desain aplikasi. Proyek-proyek baru sering melibatkan diskusi pemodelan data. Ini akan mengarah pada diskusi normalisasi, yang mengarah pada pekerjaan desain database. Prinsip-prinsip desain yang baik mengalir ke implementasi. Desain yang buruk / tidak efektif di tingkat arsitektur memiliki konsekuensi yang seringkali mahal untuk diperbaiki.

Dave
sumber
5

Konsep "adil" tidak masalah di sini. Ini adalah wawancara kerja.

Mereka tidak dapat menolak Anda berdasarkan warna kulit, agama, etnis, atau beberapa hal lainnya. Tapi mereka dapat menolak Anda untuk setiap alasan lain, sebagai alasan bodoh sebagai warna sepatu Anda memakai untuk wawancara. Dan Anda mungkin tidak pernah tahu alasan sebenarnya.

Penting untuk menjadi tangguh saat wawancara. Saya memahami kecenderungan untuk menganalisis secara berlebihan, dan saya sudah cukup sering melakukannya. Tetapi hal terbaik untuk dilakukan adalah menerima bahwa hidup ini tidak adil, dan simpan wawancara yang cukup di dalam pipa sehingga Anda tidak harus menggantungkan semua harapan Anda pada salah satu dari mereka.

Kyralessa
sumber
5

Seperti yang orang lain katakan, pertanyaannya benar-benar valid. Namun, akan aneh jika pewawancara memutuskan apakah akan mempekerjakan Anda sepenuhnya berdasarkan pertanyaan-pertanyaan itu. Mungkin mereka ingin mendengarkan alasan Anda tentang subjek yang mungkin tidak Anda kenal, dan itu teknik wawancara yang valid.

Jika saya merekrut, saya tidak akan mengesampingkan Anda jika Anda mengatakan "Maaf, saya tidak tahu banyak tentang pengoptimal permintaan, tapi saya bisa belajar". Saya akan mengesampingkan Anda jika Anda mulai mengeluh tentang pertanyaan-pertanyaan itu.

Andres F.
sumber
5

Bung, izinkan saya memberi tahu Anda dengan jelas: tidak ada jalan lain di sekitar Database sebagai Pengembang Perangkat Lunak. Setiap proyek yang saya libatkan sejauh ini menghabiskan setidaknya setengah dari waktu pengembangan. Desain DB merupakan bagian integral dari Pengembangan Perangkat Lunak dan semakin banyak Anda tahu, semakin baik Anda menyelesaikan masalahnya. Juga, jangan bingung dengan jenis pertanyaan dan itu konteks banyak. Sebagian besar waktu, majikan hanya ingin melihat apakah Anda dapat berpikir untuk menyelesaikan masalah yang dihadapi atau jika Anda memiliki kepercayaan diri untuk setidaknya mengatakan sesuatu yang masuk akal tentang masalah tersebut. Dengan Anda menjadi lulusan, mereka menyadari bahwa mereka sebenarnya harus menghabiskan waktu untuk mengajarkan semua hal ini kepada Anda, tetapi mereka ingin tahu apakah Anda akan sepadan dengan waktu dan upaya. Tetap tajam dan sopan!

pierrepret22
sumber
Saya seorang pengembang dan saya belum menyentuh database selama bertahun-tahun. Beberapa dari kita tidak melakukan aplikasi web CRUD. Yang mengatakan, untuk banyak peran (mungkin bahkan sebagian besar) argumen Anda.
Kristof Provost
5

Saya ingin menulis kepada perusahaan untuk mengatakan bahwa pertanyaan-pertanyaan ini tidak masuk akal untuk ditanyakan pada wawancara pengembang perangkat lunak dan untuk meminta agar wawancara saya selesai.

Menurut Anda apa yang akan terjadi jika Anda mengirim surat itu? Apakah Anda membayangkan bahwa mereka akan berkata, "Hmm, kandidat ini ada benarnya. Kita harus mendapatkannya kembali, dan mari kita ajukan pertanyaan yang lebih mudah"? Saya jamin mereka tidak akan melakukannya. Padahal, yang akan mereka lakukan adalah membagikan surat itu dan tertawa.

Atasi rasa memiliki Anda. Anda pergi di dunia nyata.

Bagaimana menurut Anda pertanyaan tentang database tidak adil? Anda berpikir bahwa pemrogram tidak perlu tahu database, tetapi perusahaan ini ternyata melakukannya. Itu sebabnya mereka mengajukan pertanyaan! Pewawancara tidak mengajukan pertanyaan hanya untuk itu. Mereka mengajukan pertanyaan untuk mencari tahu apakah Anda mengetahui hal-hal yang mereka butuhkan. Jika Anda tidak tahu apa yang mereka butuhkan, maka Anda bukan orang yang tepat untuk pekerjaan itu.

Jika Anda tidak ingin belajar tentang basis data, itu bagus, tetapi jangan mengeluh jika beberapa perusahaan tidak ingin mempekerjakan Anda. Anda tidak memiliki pekerjaan.

Andy Lester
sumber
1
Saya akan memilih jutaan kali jika saya bisa
HLGEM
4

Bagaimana ini bukan pertanyaan yang adil? Pengembang bekerja dengan basis data. Jangan Anda pikir mereka setidaknya harus akrab dengan faktor-faktor yang terlibat dalam membuat query database efisien dan cepat? Tidak setiap perusahaan memiliki DBA internal ... dan bahkan jika itu, itu tidak kemudian mengambil tanggung jawab untuk menulis pertanyaan yang efektif dari pengembang.

GrandmasterB
sumber
4

Jika mereka mengajukan pertanyaan dari semua kandidat maka mereka sudah adil dan selesai.

Tidak masalah apakah Anda merasa pertanyaan-pertanyaan itu sesuai dengan posisi itu, hanya masalah apakah calon pemberi kerja merasa mereka sesuai - dan jika mereka bertanya maka kemungkinannya memang demikian (baik karena mereka mencerminkan keterampilan yang diperlukan atau karena mereka telah menemukan bahwa tanggapan yang mereka dapatkan memberi tahu mereka hal-hal menarik tentang orang yang diwawancarai).

Terakhir, Anda tampaknya memiliki beberapa ide aneh tentang batas kewenangan pengembang - Saya belum pernah (sejauh yang saya ingat dalam karir 25 tahun hingga saat ini) bekerja dengan DBA khusus ...

Murph
sumber
Anda telah Menghindari perusahaan non-IT perusahaan besar :) Anda harus memperhatikan kami untuk nazis DBA!
ozz
@james "Dihindari" adalah kata yang salah - tapi ya ... intinya adalah bahwa saya telah menjadi "pengembang" untuk sebagian besar waktu itu dan karena itu diperlukan setidaknya beberapa jenis keterampilan DBA (meskipun saya tidak menyarankan bahwa saya seorang DBA ... tetapi sama-sama tidak selalu diperlukan untuk / memiliki dba yang berdedikasi untuk proyek-proyek yang lebih sederhana, meskipun mengakui kesenjangan dalam skillet seseorang kadang-kadang bisa menyakitkan)
Murph
4

Melihat pertanyaan-pertanyaan itu, saya pikir ini adalah perusahaan saya - kami mengajukan pertanyaan-pertanyaan semacam ini kepada SETIAP kandidat sebagai bagian dari wawancara telepon. Selalu. Ini memberi kita standar untuk bekerja.

Sebagian besar tanggapan di atas merangkumnya dengan cukup baik ...

a) Kami menginginkan orang-orang dengan pengalaman luas bukan orang-orang yang hanya dapat melakukan beberapa hal.

b) Pertanyaan ada di sana untuk membantu kami menyelidiki pengetahuan Anda, Anda mungkin tidak tahu jawabannya sepenuhnya (atau sama sekali) pertanyaan adalah titik awal bagi Anda untuk memperluas pengetahuan dan pengalaman Anda.

c) Ingat wawancara ada untuk keuntungan kita DAN ANDA ... dari jenis pertanyaan Anda harus bisa mendapatkan ide tentang peran dan perusahaan dan apakah kami cocok dengan Anda dan Anda cocok dengan kami ...

d) itu pekerjaan, jika Anda tidak melewati wawancara kemudian tumbuh, berhenti merengek dan mencoba lebih baik di wawancara berikutnya.

Paul
sumber
3

Sepertinya mereka tidak memiliki DBA, jadi mereka ingin Anda mengisi peran itu juga. Ini biasa untuk perusahaan kecil.

Navi
sumber
6
Hanya karena sebuah perusahaan menginginkan pengembang untuk memahami cara memperbaiki skrip database mereka TIDAK berarti mereka tidak memiliki DBA. Saya lebih suka memiliki pengembang yang dapat mengoptimalkan barang-barang mereka sendiri daripada memuntahkan skrip SQL apa pun ke server dan berharap DBA mendapatkannya. DBA memiliki lebih banyak hal yang perlu dikhawatirkan daripada memperbaiki skrip Anda sepanjang waktu.
1
Tidak semua perusahaan menggunakan DBA seperti itu. Pertimbangkan pengembang komersial yang mendistribusikan perangkat lunak kepada klien. Klien mungkin memiliki DBA, tetapi pengembang masih perlu menulis kueri yang digunakan oleh perangkat lunak mereka secara efisien.
GrandmasterB
Saya bekerja untuk sebuah perusahaan kecil (sekitar dua lusin orang ketika saya bergabung) yang tidak mendapatkan DBA nyata sampai nanti. Ketika saya meminta kueri dari setengah menit menjadi setengah jam, saya harus mencari tahu sendiri.
David Thornley
1
Bagaimanapun, tidak masuk akal untuk menginginkan pengembang yang tahu lebih dari sekadar pemrograman.
Andres F.
3

Saya sama sekali tidak melihat ada yang salah dengan itu. Mengapa pengembang tidak boleh, terutama jika mereka akhirnya bekerja di database, tidak mengetahui rahasia barang-barang tersebut?

Haruskah pengembang perangkat lunak tidak mengetahui perangkat lunak pengoptimalan atau cara mengakses log peristiwa aplikasi untuk mengetahui masalah kinerja? Jika demikian, mengapa tidak sama untuk seseorang yang merupakan pengembang basis data? Mengapa mereka tidak bisa menjadi satu dalam satu kesatuan?

Jika saya mewawancarai seseorang untuk posisi pengembangan perangkat lunak yang juga melibatkan pengembangan basis data, Anda benar saya akan memastikan mereka tidak hanya menyadari apa yang mereka lakukan tetapi mereka juga dapat meningkatkan kinerja kode mereka atau kode yang ada sebagai basis data dapat berupa leher botol yang besar.

Alih-alih mengembangkan sikap, mungkin tindakan yang lebih baik adalah "Saya tidak tahu jawabannya tapi inilah yang saya lakukan untuk menemukannya".

Keris
sumber
3

Seperti yang telah ditunjukkan oleh orang lain, dalam sebuah wawancara hampir semua jenis pertanyaan adalah permainan yang adil asalkan tidak menyentuh semacam daerah yang dilindungi secara hukum (misalnya usia, ras, jenis kelamin, dll) dan itu tidak biasa memiliki pewawancara melemparkan pertanyaan pada Anda hanya untuk melihat bagaimana Anda bereaksi terhadap pertanyaan dan bagaimana Anda akan berusaha mencari solusi untuk pertanyaan itu. Selain itu, karena tampaknya Anda adalah lulusan baru, mereka agak terbatas dalam hal dapat bertanya kepada Anda tentang pengalaman kerja Anda dan masalah apa yang telah Anda pecahkan dalam pengaturan produksi. Jadi, jika perusahaan melakukan banyak pekerjaan yang berorientasi pada database, pertanyaan yang mereka ajukan juga mungkin relevan dengan posisi yang Anda wawancarai.

Sehubungan dengan asumsi Anda:

a) Pertanyaan-pertanyaan itu tidak dapat secara adil diklasifikasikan sebagai pertanyaan pengembangan basis data.

Mungkin tidak. Jika Anda melakukan pengembangan basis data, Anda akan menggunakan pengoptimal permintaan dan merencanakan dari waktu ke waktu untuk mencoba dan memastikan tidak ada masalah yang jelas dengan pertanyaan Anda. Jika perusahaan memiliki administrator atau pakar basis data yang dapat meninjau kueri, mereka mungkin tidak punya waktu untuk melihat semuanya dan mereka juga tidak ingin melihat setiap kueri dengan kode yang buruk. Demikian juga, itu juga tidak biasa bagi pengembang untuk bertanggung jawab untuk menjaga lingkungan pengembangan mereka, untuk memasukkan basis data apa pun dan membuat DBA menangani sisi produksi.

b) Saya pikir pertanyaannya sesuai untuk wawancara DBA tetapi sama sekali tidak masuk akal untuk wawancara pengembang perangkat lunak (berpengalaman atau tidak).

Mereka kemungkinan cocok untuk wawancara DBA; tetapi terlepas dari itu, mereka juga merupakan topik yang harus dipahami oleh pengembang jika hanya pada tingkat mampu mengenali di mana masalah mungkin terjadi dan untuk melakukan pemecahan masalah dasar sendiri. Seperti yang saya sebutkan sebelumnya, jika perusahaan memiliki sumber daya yang terbatas maka mereka ingin memastikan mereka tidak membuang waktu orang dengan sesuatu yang mungkin menjadi masalah mendasar.

c) Pertanyaan pertama hanya relevan dengan vendor basis data.

Detail spesifik mungkin spesifik untuk vendor, tetapi konsep umum dapat diterapkan di mana saja dan kadang-kadang bisa menunjukkan kepada Anda bahwa hanya konsep umum yang Anda butuhkan. Jika Anda tidak ingin terkunci dalam tumpukan pengembangan tunggal (yaitu LAMP ) maka Anda harus dapat menunjukkan selama wawancara bahwa Anda memahami konsep inti dan merasa nyaman untuk pindah ke tumpukan pengembangan yang berbeda.

d) Pertanyaan kedua tidak adil karena pengembang perangkat lunak biasanya tidak berurusan dengan log kinerja database karena itu adalah pekerjaan DBA.

Ini umumnya benar, tetapi jika bagian dari pekerjaan Anda adalah menulis perangkat lunak untuk database yang diberikan yang harus sangat responsif maka Anda perlu memastikan bahwa Anda melakukan upaya terbaik dalam menulis pertanyaan-pertanyaan itu sehingga kolega yang ada seorang ahli dalam bidang tertentu tidak sedang dihambat oleh pertanyaan yang ditulis dengan buruk. Meskipun Anda mungkin tidak perlu mengetahui detail yang lebih baik dari apa yang diceritakan oleh log, Anda mungkin harus dapat mengidentifikasi masalah yang jelas.

Semoga semua ini membantu!

rjzii
sumber
2

Hanya karena Anda adalah pengembang softare bukan berarti Anda hanya harus tahu topik pengembang perangkat lunak. Memiliki beragam pengetahuan dari manajemen server hingga teknologi basis data sebenarnya merupakan keterampilan yang sangat berguna untuk dimiliki sebagai pengembang. Saya tidak akan memiliki masalah untuk mengajukan pertanyaan semacam ini kepada para kandidat. Jika mereka tidak melakukannya dengan benar, baiklah, itu tidak mencoret mereka dari daftar (saya tidak berharap mereka tahu segalanya), tetapi jika mereka bisa menjawab, itu menunjukkan kepada saya bahwa pengembang lebih dari sekadar hanya programmer set keterampilan yang khas, dan itu adalah jenis langka.

Josh
sumber
+1, sepenuhnya setuju. Dan jika sebaliknya, calon karyawan mulai mengeluh tentang "ketidakadilan" dari pertanyaan, mereka termasuk jenis yang lebih umum dari tidak mempekerjakan .
Andres F.
2

Saya juga memiliki perselisihan serupa dengan calon majikan yang mengajukan pertanyaan kepada saya tentang penutup lubang got. Saya bertanya kepada Anda, apa kaitannya dengan penutup lubang got dengan pemrograman!

leebriggs
sumber
3
Apa pertanyaan sebenarnya tentang penutup lubang got? Saya yakin Anda itu adalah eksperimen pikiran yang dibuat untuk mengukur kemampuan Anda untuk berpikir dan tidak ada hubungannya dengan penutup lubang got.
Kenny Wyland
Pewawancara yang baik akan menanyakan pertanyaan-pertanyaan semacam ini untuk lebih memahami bagaimana Anda berpikir dan memecahkan masalah. (Meskipun pertanyaan putaran-manhole agak lelah hari ini).
2
Ini pertanyaan wawancara yang sangat umum: "Mengapa manhole cover bundar?" dan jawaban yang diharapkan seharusnya "sehingga mereka tidak bisa masuk (dan jatuh ke) lubang." (dan bukan sejumlah alasan masuk akal lainnya, seperti "karena lubangnya bulat (karena itu dibor bulat)" atau "sehingga Anda dapat menggulung penutup untuk memindahkannya setelah mengangkatnya (jika tidak perlu menyeret, atau dua orang untuk pindah) "
Jimmy
Pertanyaan ini mungkin mirip dengan # bola golf yang dapat masuk ke pertanyaan bis. Tidak selalu ada jawaban yang benar, tetapi pewawancara ingin melihat bagaimana Anda berpikir, bagaimana Anda akan menyelesaikan masalah. Penting untuk berpikir keras ketika diwawancarai.
2
Pernyataan ini tentu saja bercanda, saya ragu apakah ada orang yang menggunakan pertanyaan lubang terkenal dalam dua puluh tahun terakhir. Intinya adalah bahwa dalam sebuah wawancara, Anda mengikuti aturan pewawancara. Jika suatu pertanyaan tampaknya tidak tepat, angkatlah dan jelaskan alasan Anda.
0

Tanggapan dari formulir Yah saya tidak yakin tetapi saya akan mencarinya dengan pergi ke, dan juga yang baik. Tidak ada yang mengira Anda tahu segalanya tetapi bisa mencari sesuatu adalah keterampilan utama

Zachary K
sumber