Bir Junior Geliştirici Kiralama, Ne sormalıyım? [kapalı]


56

Şu anda yönetebildiğimden daha fazla projem olduğu için, bana yardımcı olmak için küçük bir geliştirici kiralıyoruz. Hiç arkadaş ya da en azından bir tanıdık olmayan birini işe almadım. Gerçekten ön plana çıkan tek aday ile telefon görüşmesi yaptım (kağıt üzerinde), ancak bunu daha önce hiç yapmadım.

Projelerimizin tümü, birden fazla sunucu ve istemcide, saatte milyonlarca işlemi gerçekleştiren, veri yoğun web uygulamaları olan yüksek ölçeklenebilirliktir. Dile / yığına özgü olmak için, hepsi Windows Server 2008 R2 üzerinde çalışan ASP.Net MVC2, WebForms ve C # 4, MSSQL 2008 R2 kullanıyoruz.

Ona ne sormalıyım? Telefon görüşmesini nasıl yapılandırmalıyım?


5
Neden küçük bir geliştirici ve son sınıf değil?
Meslek

10
Maliyet; şirket sadece bu çeyrekte karlı oldu ... ve egom kırılgan;)
Jeremy Boyd

48
Birçok yönden, "ucuz" bir geliştirici, deneyimli / pahalı bir geliştiriciden daha maliyetli olabilir. Kırılgan ego yorumu düpedüz korkutucu. Sizden daha zeki insanları asla işe almazsanız, o zaman her zaman öğretmen ve hiçbir zaman öğrencisiniz. Bu şekilde tozun içinde kalacaksın.
JohnFx

6
Dışarıda bazı sahte gençler var (<3 yıllık deneyim ama çok fazla beceri). Yaş önemli mi
James P.,

2
Junior Developers'ı işe alıyorsanız, bu onların deneyimlerini değerlendirebileceğiniz anlamına gelir. Çünkü kısa kariyerlerinde fazla tecrübeye sahip değiller. Öte yandan, programlama becerilerini değerlendirebilir ve nasıl kod yazdıklarını görebilirsiniz. Böylece ilk adım, http://tests4geeks.com gibi bazı yetenekler testi olabilir . İkinci adımda, evde basit programlar yazmalarını isteyebilirsiniz. Senin durumunda, JSON ve AJAX kullanarak bazı verilerin listesini gösteren MVC uygulaması olabilir. Liste bir zamanlayıcı tarafından otomatik olarak yenilenir, böylece kaydedilen öğe referans olmadan görülebilir ..
sert

Yanıtlar:


49

Hangi teknoloji bloglarını okuduklarını sorun, başvuru sahibinin mevcut teknolojide neyi ilginç bulduğunu ve nedenini sorun.

Temel olarak, bir telefon görüşmesi için, bunun teknoloji ve programlama konusunda hevesli biri olup olmadığını ve daha fazla şey öğrenmek ve öğrenmekle ilgilendiğini öğrenmek istersiniz.

Bu küçük olduğu için, birçok gelişmiş konu bilmelerini bekleyemezsiniz, ancak bir programcı gibi düşünebileceklerinden emin olmak istersiniz - onlara basit bir sorun verin ve nasıl çözeceklerini size yönlendirmelerini isteyin. Problemleri nasıl düşündükleri ve çözdükleri konusunda size fikir verecektir.


Keşke iki cevap seçebilseydim, çünkü hem senin hem de Peter K. çok iyi bir kombinasyon.
Jeremy Boyd

5
Bu cevap sınırlıdır ve yalnızca bu tavsiyeye uyan kişilere zarar verir . Telefon ekranında, Steve Yegge'nin tavsiyesine uyun . Bir kişi için kodlama zorlukları yaşayın ve Joel'in Gerilla Rehberini Mülakatlar'a uyun . Bir tasarım sorunuz var - "<ortak, önemsiz bir yazılım parçası eklemek" için gereken tüm adımlar nelerdir? " Deneyimden bağımsız olarak tüm iyi işe alımların bu sorunlara hızlı ve iyi cevap verdiğini göreceksiniz .
Robert P,

Keşke Yegge, Joel ve Atwood gibi endüstri insanlarından +3 @RobertP blogları, röportaj yapan ya da herhangi bir liderlik pozisyonunda olan herkes için birer hazinedir. ya da sektördeki herhangi biri gerçekten, ama özellikle de, rehberlik edecek veya diğer mühendisleri ölçecek şekilde konumlanmışsanız.
Jimmy Hoffa

26

Telefon görüşmelerine açık uçlu bir yaklaşımla yaklaşıyorum, ancak üzerine bir yapı koymak için, genellikle kişiden, gönderdikleri özgeçmiş üzerinden konuşmasını rica ediyorum. Çoğu zaman, özgeçmişlerinden geçme şekilleri başka sorular soracak ve nasıl olduklarını daha iyi anlayacaksınız.

Telefon görüşmesi sırasında düşünülmesi gereken diğer bir şey de sormak: Bu kişiyle çalışabilir miyim? Enerjikler mi? Can sıkıcı? Hassas?


20

Onlarla kodla.

Her zamanki röportaj işlerini kesinlikle yapmalısın. Ama onlarla bir çift programlama oturumu yapmadan kimseyi işe almıyorum.

Yaklaşımım: 2-3 saat ve bir oyuncak problemi alıyorum (örneğin, tam yığın bir geliştirme için "Twitter v 0.1 yapalım" ya da arka uçtaki bir kişi için "İlkellerin Listesini uygulayalım"). Aynı bilgisayarda oturup, onunla nasıl başa çıkacağımızı tartışacağız. İlk ünite testini yazacağım ve "bu geçişi yap" diyeceğim. Belki de gitmelerine yardımcı olacak bir sonraki sınavları yazarım. Ve sonra genel olarak koşmalarına izin veriyorum, sadece ara sıra atlıyorlar. Zamanımız azaldığında, onları durduracağım ve bir sonraki yere nereye götüreceklerini ve onu zorlamadan önce ne yapmak istediklerini soracağım.

Aradığım Şeyler:

  • İyi işbirliği yapabilirler mi?
  • Temelleri anlıyorlar mı?
  • Bir problemi parçalara ayırabilir mi?
  • Temiz koda değer veriyorlar mı?
  • Kendi böceklerini mi yakalarlar?
  • Bir şey bilmediklerinde saçmalamaya mı çalışıyorlar?
  • Kodlamayı seviyorlar mı?

17
Bir Junior’ın TDD tarzı modaya sahip bir çift programlama oturumunda, hatta genel olarak ünite testlerinde iyi olacağından şüpheliyim.
Martin Blore

3
Genç programcının arka planına bağlı. Geçen hafta bu işte harika olan birini tuttum. Daha genel olarak, yine de, röportaj yaparken bulmaya çalıştığım şeyin bir parçası. Test bölümünde iyi olmazlarsa, o zaman testleri kendim yazacağım veya test etmeden ilerlemelerini sağlayacağım. Her iki durumda da güçlü ve zayıf yönlerini görmeme izin verin.
William Pietri

2
Bunu, 10 yıllık deneyimden sonra, küçükken boşver. Korkunç bir düşünce!
AnthonyBlake

3
Kendimi küçük bir programcı olarak kabul eder ve nasıl ve ne yapabileceğimi göstermek için bu yaklaşımı memnuniyetle karşılardım. Sıklıkla, kullanımları ve genel uygulamalarıyla ilgili olarak sözlük mükemmel tanımlamaları gerektiren sorularla karşılaşıyorum. staticVikipedi’deki anahtar kelimenin kullanımlarının ezberlenmiş bir listesini teklif etmeyi mi yoksa yerinde ve uygulanabilir bir bağlamda nasıl kullanabileceğimi göstermeyi mi tercih edersiniz ?
amcc

7

What's your Stack Overflow account name?

Birisinin kodunun nasıl görüneceğini bilmenin en iyi yollarından biri, ilk elden görmektir. Bunu yapmanın en iyi yollarından biri SO.

Aksi takdirde standart sorular uygulanır. Zor durumları ve bunların üstesinden nasıl geldiklerini sorun. Hangi yeni dilleri öğrendiklerini veya öğrenmeyi düşündüklerini ve nedenini sorun. Onlara hangi IDE'yi kullandıklarını ve neden seçtiklerini sorun. Hangi kaynak kontrolü?

Belirli bir projeyle ilgili olmayabilecek açık uçlu sorular sorarak çok şey öğrenebilirsiniz, ancak bunun yerine onların düşünce süreçlerinde sizinle birlikte çalışmalarına izin verecektir.


Github hesapları için daha iyi isteyin, ancak bir hesabı olsa muhtemelen bu bilgiyi paylaşırlardı.
Meslek

7
Bir keresinde SO'ya giriş yaptım ve oradaki insanların% 90'ını fark ettim, sadece web geliştirmeyi önemsiyorum ... sonra ayrıldım ... temsilcim için çok fazla.
Pemdas

3
Bu işe yarayabilir, ancak mutlaka doğru değildir. Biri, ödeme işlerinde katkıda bulunan gündelik tavsiyelere göre önemli bir çaba gösterebilir.
NoChance

5
Buna değer, şirketimdeki en iyi geliştiricilerin bazıları ya SO hesabına sahip değil ya da <100 itibarına sahipler. Tabii ki yüksek itibarlı bir hesaba sahiplerse harika, ama çok okuyamıyorsunuz. Onlarda yüksek olan yok.
Jeremy Wiggins

Aslında, aday SO üzerinde biraz aktifse (veya bazen geçmişte aktif olmuşsa), muhtemelen CV’sindeki bağlantıyı bulacaksınız. Öte yandan, görüşmeci nadiren böyle bir şeye bakmak için zaman bulamaz. Bazı durumlarda sizin için iyi olabilir, çünkü örneğin SO'ya gönderdiğim her soru / cevaptan gurur duymuyorum.
Radu Murzea 19:13

6

Burada hızlıca okuduğumda görmediğim bir şey, onlara şu soruları sorma ihtiyacı:

1 - Öğrenmeye istekli

2 - Örgün eğitimi karşı kendi kendine öğretme becerisi

3 - Geçmişte kendilerini öğrendikleri bir şey örneği

4 - Konforlu olmadıkları alanlara örnek

5 - "Sizin için bir web uygulaması oluşturmakla görevlendiriliyorsanız ... hangi görevlerin yapılması ve bunları kimin yapması gerekiyorsa" gibi genel üst düzey bir soru - Bu size geliştirme süreci hakkındaki güncel bilgileri hakkında bir fikir vermelidir - Bu doğru olmak zorunda değildir, ancak en azından bugün olduğu gibi onların görüşlerini öğreneceksiniz.


4

Geçmişte üzerinde çalıştığınız bir proje aracılığıyla konuşun

  • Projenin genel mimarisini tanımlayın. Yüksek seviye iyi.
  • Proje hakkında sevdiğiniz şeylerden biri .
  • Proje hakkında sevmediğiniz şeylerden biri .
  • Gördüğün gibi, farklı şekilde yapabileceğin bir şey var mı?

Bu benim görüşüme, telefona veya başka türlü görüşmeler için harika bir soru. Üzerinde çalıştıkları bir proje hakkında akıllıca konuşabilirlerse, şansı "elde etmeleri". Bir alt seviye geliştiriciyi işe alıyorsunuz, bu yüzden henüz bir uzman olmaları önemli değil, ancak en azından bu konu hakkında konuşacak kadar alanlarını iyi anlamaları gerekiyor. Genelde kiralamak isteyeceğiniz insanlar bu konuda kaçmakta zorlanmayacaklardır, ancak uzak durmak isteyebileceğiniz kişiler birkaç cümle veya daha kısa sürede cevap verecektir.

Güncel kalmak için ne yaparsınız?

  • Hangi blogları okuyorsun?
  • Hangi kitapları okudun / okuyorsun?
  • Başka herhangi bir şey?

Sürekli değişen bir endüstride, güncel kalmaları önemlidir. Bu bir röportajda sorduğum en önemli soru değil, ama söyleyecek bir şey bulamazlarsa, bu iyi bir işaret değil.

Bana bir Bisiklet sınıfı nasıl yazacağını söyle

Belki şahsen yapılan görüşmeler için daha iyi bir soru olabilir, bu yüzden bazı sahte kodlar yazabilirler, ancak bir telefon görüşmesi için de işe yarayabileceğini düşünüyorum ... Bisikleti tarif et (çubukları, tekerlekleri vb. ) ve sınıf (ları) nasıl modelleyeceklerini açıklamalarını sağlayın. Burada çığır açan hiçbir şey yok, ancak bu soruyla mücadele ediyorlarsa, büyük olasılıkla hala bir varlık olmak için ÇOK küçükler.


2

Halihazırda yazılmış çok sayıda mülakat ipucu var, ancak tam olarak ne yapacaklarını bilene kadar bu pozisyonu doldurabileceğinizi sanmıyorum. İlk düşüncen, "Yapmaları gereken her neyse" olsaydı. sadece dur. İncelemeleri için belirli bir kod parçası bulun. Bakmaları ve aralarındaki farkı bilip görmediklerini görmek için en iyi ve en kötü kodu seçin. İhmal edilebilecek ilk hızlı proje için çalışma alanlarını verin.

Umarım en iyi programcıyı işe aldınız, ancak herkesin diğerlerinden daha iyi / daha deneyimli olduğu alanlara sahip. Bundan yararlanın ve rollerini buna göre tanımlayın.

Oh, ve işleri bitirme tarihi olan birini işe al.


0

Geliştirici ile birebir görüşüyorsanız, onu tanıyabilir ve sonra size karşı dürüst olup olmadıklarını kontrol edebilirsiniz.

Bunu yapabilmek için, ona gerçekten dürüst olduğunu bilmek için aşağıdaki soruyu sorabilirsiniz.

  1. Herhangi bir sertifika vermişlerse, Microsoft Certification gibi onlar için gerçekten çalışıp çalışmadıklarını öğrenmek için onlarla kontrol edin ve onaylayın.

  2. Son yıl projelerini yapmış olan bazı küçük geliştiriciler projeyi kendi başlarına yapmazlardı, yani arkadaşları kendileri için yapmışlardı vs.

Dürüst olmak, küçük geliştiriciye gizli projelerle emanet edildiğinde çok önemli bir rol oynar.

Onlara güvenebileceğinizi düşünüyorsanız, o zaman hangi teknolojilerin işe alındığına dair bir anket, ardından da mantıklı bir yeteneğe sahip olup olmadıklarını kontrol etmek için bazı senaryo senaryoları olan pratik bir metin, yani programlamada sürekli dokunmalarının olup olmadığını kontrol edebilirsiniz.


1
en kötüsünü varsaymak mı?
tp1 kas

Varsayım için +1 . @ tp1 Tüm seçeneklerin açık tutulması. : D
Karthik Sreenivasan

0

Sandglaz CEO'su Nada Aldahleh geçtiğimiz günlerde, işe girişmekte olan geliştiricileri işe alma deneyimine dayanarak bu konuda bir blog yazısı yazdı. İşte aradığı şeylerden bazıları:

  • problem çözme zihin seti
  • Güçlü iletişim becerileri
  • mimarlık ve algoritma soruları sorun; Küçük bir geliştirici yeni küçük özellikler tasarlayabilmeli ve algoritma soruları problem çözme zihniyetini ve sahip oldukları temelleri anlatıyor olabilir.
  • analitik becerileri izole etmek için bulmacalar

Ve elbette, Fizz Buzz sorusundan kaynaklanmaması gereken programlama testi. Ofisinizde birkaç saat içinde tamamlanabilecek gerçek hayattaki bir ödev en iyi test olacaktır.

Onun tavsiyesini buradan okuyabilirsiniz: http://blog.sandglaz.com/how-to-interview-and-hire-junior-developers/

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.