Mülakat soruları · Kitap 15
Ekipler ve Süreç mülakat soruları
32 sayfadan 124 soru, her birinin kısa bir cevabıyla. Önce kendi cevabınızı söyleyin, sonra soruyu açıp kontrol edin.
s. 1 · 4 soru
Acceptance Criteria
1
Acceptance criteria (kabul kriterleri) nedir?
Acceptance criteria, tek bir user story'nin ya da backlog öğesinin Product Owner'ın kabulü için karşılaması gereken, test edilebilir koşullardır.
2
Kabul kriterlerini kim yazar?
Genellikle Product Owner sorumludur; ancak eksik durumları fark eden ve her kriterin test edilebilir olduğunu kontrol eden geliştiriciler ile test uzmanlarıyla birlikte yazıldıklarında en iyi sonucu verirler.
3
Kabul kriterleri ile Definition of Done arasındaki fark nedir?
Kabul kriterleri tek bir user story'ye özgüdür ve gereken davranışı tanımlar. Definition of Done ise ekibin teslim ettiği her story'ye uygulanan, kalite standartlarının tek bir kontrol listesidir.
4
Kabul kriterleri için iyi bir format nedir?
Basit story'ler için kısa numaralı bir kural listesi işe yarar; birkaç adım ya da koşul içeren davranışlar için ise Given-When-Then senaryoları iyi çalışır. Hangisi olursa olsun her kriter net ve test edilebilir olmalıdır.
s. 2 · 4 soru
Açık Kaynak
1
Açık kaynak (open source) yazılım nedir?
Açık kaynak yazılım, kaynak kodu herkesin kullanmasına, incelemesine, değiştirmesine ve paylaşmasına izin veren bir lisansla yayımlanan yazılımdır.
2
Açık kaynak ile özgür yazılım arasındaki fark nedir?
Çoğunlukla aynı lisansları anlatırlar. Özgür Yazılım Vakfı'nın tanımladığı özgür yazılım, kullanıcıların özgürlüklerini etik bir ilke olarak vurgular; açık kaynak ise açık geliştirmenin pratik faydalarını vurgular. FOSS iki terimi birleştirir.
3
Açık kaynak yazılımı ticari bir üründe kullanabilir miyim?
Genellikle evet, ama lisansa uymanız gerekir. MIT ve Apache 2.0 gibi izin verici lisanslar bildirimleri korumaktan biraz fazlasını ister; GPL gibi copyleft lisanslar ise kendi kaynak kodunuzu aynı lisansla yayımlamanızı gerektirebilir.
4
Açık kaynağa nasıl katkıda bulunabilirim?
Kullandığınız bir projeyle başlayın, katkı rehberini okuyun ve yeni başlayanlar için etiketlenmiş sorunlara bakın. Dokümantasyonu düzeltmek, hataları yeniden üretmek ve test eklemek değerli ilk katkılardır.
s. 3 · 4 soru
Agile
1
Agile yazılım geliştirme nedir?
Agile, çalışan yazılımı küçük ve sık parçalar halinde teslim eden ve planları düzenli geri bildirime göre ayarlayan bir yazılım geliştirme yaklaşımıdır.
2
Agile ile Scrum arasındaki fark nedir?
Agile, yazılımı yinelemeli olarak geliştirmeye yönelik geniş bir değerler ve ilkeler bütünüdür. Scrum ise bu fikirleri tanımlı roller, sprint gibi olaylar ve product backlog gibi çıktılarla uygulayan belirli bir framework'tür.
3
Agile ile Waterfall arasındaki fark nedir?
Waterfall bir projeyi uzun ardışık aşamalarda yürütür; bu yüzden kullanıcılar çalışan yazılımı ancak sona doğru görür. Agile ise kısa planlama, geliştirme ve gözden geçirme döngülerini tekrarlar; böylece ekip erken geri bildirim alır ve yönünü erkenden değiştirebilir.
4
Agile yalnızca yazılım ekipleri için midir?
Hayır. Agile yazılımda başladı ama kısa döngüler, sık geri bildirim ve sürekli iyileştirme fikirleri bugün pazarlama, tasarım, donanım ve daha birçok alanda kullanılıyor.
s. 4 · 3 soru
Burndown Chart
1
Burndown chart nedir?
Burndown chart, bir sprint veya sürümde kalan işi zaman içinde gösteren grafiktir; ekip bitirmek için yolda olup olmadığını bir bakışta görür.
2
Burndown chart ile burnup chart arasındaki fark nedir?
Burndown chart kalan işin sıfıra doğru azalışını gösterir. Burnup chart ise tamamlanan işin ayrı bir toplam kapsam çizgisine doğru yükselişini gösterir; bu da kapsamın ne zaman eklendiğini görmeyi kolaylaştırır.
3
Burndown chart'ta düz bir çizgi ne anlama gelir?
O dönemde hiç iş tamamlanmadığı anlamına gelir. Yaygın nedenler engellenmiş öğeler, aynı anda çok fazla devam eden iş veya bir iki günde bitirilemeyecek kadar büyük görevlerdir.
s. 5 · 4 soru
Bus Factor
1
Bus factor nedir?
Bus factor, geriye kalanlardan hiçbiri kritik parçaları bilmediği için bir proje durma noktasına gelmeden önce aniden ayrılabilecek en az kişi sayısıdır.
2
İyi bir bus factor nedir?
Evrensel bir sayı yoktur, ama her kritik alanın bus factor'ü en az 2, tercihen 3 veya daha fazla olmalıdır. Tüm proje için, bilgi tesadüfen değil bilinçli olarak paylaşıldığı sürece ne kadar yüksekse o kadar iyidir.
3
Lottery factor nedir?
Lottery factor, bus factor'ün daha dostane bir adıdır. Aynı riski kasvetli imge olmadan tanımlayarak, proje durmadan önce kaç kişinin piyangoyu kazanıp işi bırakabileceğini sorar.
4
Bus factor nasıl artırılır?
Bilgiyi bilinçli olarak paylaşın: eşli veya mob programming yapın, her alanı farklı kişilerin incelemesini ve üzerinde çalışmasını sağlayın, nöbet sorumluluğunu dönüşümlü yapın ve kritik sistemler için kısa, güncel dokümantasyon tutun.
s. 6 · 4 soru
Code Smell
1
Code smell nedir?
Code smell (kod kokusu), kod hâlâ çalışsa bile çoğu zaman daha derin bir tasarım sorununa işaret eden yüzeysel bir belirtidir.
2
Code smell bir hata mı?
Hayır. Kokusu olan kod doğru çalışabilir. Koku, kodun bakımının ya da genişletilmesinin zor olabileceğine işaret eder; bu da gelecekteki hataları daha olası kılar.
3
En yaygın code smell'ler nelerdir?
Uzun metotlar, büyük sınıflar, tekrarlanan kod, uzun parametre listeleri, feature envy, shotgun surgery, primitive obsession, sihirli sayılar, ölü kod ve kodu netleştirmek yerine kafa karıştırıcı kodu açıklayan yorumlar.
4
Bir code smell nasıl giderilir?
Davranışın değişmediğini doğrulamak için testlerle, küçük adımlarla yapılan, bir fonksiyon çıkarmak, adlandırılmış bir sabit eklemek ya da bir metodu taşımak gibi eşleşen bir refactoring'le.
s. 7 · 4 soru
Daily Standup
1
Daily standup nedir?
Daily standup, ekibin hedefe doğru ilerlemeyi kontrol ettiği, günü planladığı ve engelleri dile getirdiği, genellikle 15 dakikayı geçmeyen günlük toplantıdır.
2
Üç standup sorusu nedir?
Klasik sorular dün ne yaptım, bugün ne yapacağım ve beni engelleyen bir şey var mı sorularıdır. Bunlar bir kural değil, yaygın bir formattır; güncel Scrum Guide ekiplerin sprint hedefine hizmet eden herhangi bir yapıyı seçmesine izin verir.
3
Daily standup ile Daily Scrum aynı şey midir?
Daily Scrum, Scrum'ın bu olay için kullandığı resmî addır; standup ise Scrum kullanmayanlar dahil birçok ekibin kullandığı gündelik addır. Fikir aynıdır: işi koordine etmek için kısa bir günlük toplantı.
4
Neden standup deniyor?
Ekipler başlangıçta kimse rahatlamasın ve tartışma kısa kalsın diye toplantıda ayakta dururdu. Birçok uzaktan çalışan ekip, herkes otursa da adı korur.
s. 8 · 4 soru
Definition of Done
1
Definition of Done nedir?
Definition of Done, bir işin ekip tarafından tamamlanmış sayılabilmesi için karşılaması gereken kalite standartlarının ortak kontrol listesidir.
2
Definition of Done ile kabul kriterleri arasındaki fark nedir?
Kabul kriterleri belirli bir user story'nin ne yapması gerektiğini tanımlar; Definition of Done ise her story'ye uygulanan bir kalite standardıdır. Bir story ancak ikisini de karşıladığında tamamlanmıştır.
3
Definition of Done'ı kim oluşturur?
Scrum'da Scrum ekibi bunu birlikte oluşturur. Kurumun zaten bir standardı varsa ekip o standarda uyar ve kendi daha katı ölçütlerini ekleyebilir.
4
Definition of Done değişebilir mi?
Evet. Ekipler genellikle onu retrospektiflerde gözden geçirir ve becerileri ile araçları geliştikçe, örneğin otomatik güvenlik taramaları ekleyerek daha katı hale getirir.