Tampon taşması lisansüstü bir geliştiriciden kabul edilebilir mi? Çıtayı yüksek mi ayarlıyoruz? Mezun / junior mühendislerin beklenen yetenekleri nelerdir?
Bağlam:
Halen Linux üzerinde C ile çalışan bir Junior Developer pozisyonu için işe alıyoruz.
Sürecin bir parçası olarak, adayların C'deki boş zamanlarında bir kod testini tamamlamalarını istiyoruz.
Şimdiye kadar, iki adayı, okunabilir ve bir durumda oldukça idiomatik olmasına rağmen kodlarının sınırsız tampon yazması nedeniyle tampon taşması hataları yaşadığı temelinde reddettik.
[Düzenle]:
- Açıkça hata kontrolünden geçmiş, üretim kalite kodunu istiyoruz.
- Adaylar için test ve yapı çerçevesi sağlıyoruz
[Güncelleme]:
Bu konu ve diğer geliştiricilerle yaptığımız konuşmalar sonucunda bizzat kod testleri yapma şeklimizi ve işe alımlarımızla kimi hedeflediğimizi değiştiriyoruz.
Bir adayın arabellek taşması sorununu çözemediğini veya anlayamadığına karar verdik, özellikle yaptığımız iş için uygun olmayacağına, özellikle de rahat olduğumuzdan daha fazla rehberlik edeceğine karar verdik. Bu nedenle, sonunda sağlam bir kod örneği sunamayan adayları reddedeceğiz.
Bununla birlikte, işe alım sürecini hem biz hem de adaylar için daha verimli hale getirmek için bazı önlemler aldık.
Özellikle:
- Üretim kalitemizle ne kastettiğimizi net bir şekilde açıklayan ve girdi ve hatalar için kodun sağlam olacağına dair bir uyarı ile beklentimizi daha belirgin hale getiriyoruz.
- Artık adayları savunma programlaması kaynaklarına ve kod testi açıklamasında C standart kütüphanesine bağladık.
- Hedef kitlemizi Junior geliştiricilerden ve mezunlardan değiştirdik ve ilgili tecrübeye sahip insanları hedef aldık.
- Gönderilen kodun bir şekilde başarısız olması durumunda ancak başka türlü kabul edilmesi durumunda, şimdi hata durumuna neden olan ve adaylara hatalarını düzeltme şansı veren (başka bir nedenden dolayı reddedilmediği sürece) minimum bir test durumu sunuyoruz. Ayrıca eğer uygunsa sorunlu hatları / fonksiyonları da işaretleyeceğiz.
- Testlerin amacı şimdi bir ön uç filtreden adayın daha iyi bir resmini oluşturma şansına biraz değişmiştir, özellikle de telefon görüşmemizi bilgilendirecektir. Bununla birlikte, yalnızca koda dayanarak reddetmeye hazırız.
[Güncelleme 2015-07-09]: Nujob'tan Andy Davis, adayın bakış açısından bir kod testinin kullanımı hakkında ilginç ve konuyla ilgili bir makale yazdı ve makaleye bakmaya değer. Burada bulun .