📝Blog Post

Yazılım Mühendisi Mülakat Soruları (2026 Rehberi)

✍️ Unknown
📅 Unknown

Hızlı Cevap

Yazılım mühendisi mülakat soruları dört tura ayrılır: kodlama ve veri yapıları, sistem tasarımı, davranışsal ve bilgisayar bilimi temelleri. Her tur farklı bir şeyi değerlendirir. Çoğu aday teklifi kod yazamadığı için değil, yazarken düşüncesini sesli açıklayamadığı için kaybeder. Bu rehber, görüşmecilerin her turu tam olarak nasıl puanladığını, dört turda da zayıf-güçlü cevaplarla, gösterir.

Çoğu aday kod yazmayı çalışır.
Görüşmeciler nasıl düşündüğünü puanlar.

Yazılım Mühendisi Mülakat Soruları Nedir?

Yazılım mühendisi mülakat soruları tek bir kategori değildir. Tipik bir 2026 mülakat döngüsü, her biri kendi puanlama ölçeğine sahip dört aşamadan oluşur:

  • Kodlama / Veri Yapıları: Problemi parçalara ayırma, veri yapısı seçimi, doğruluk, karmaşıklık farkındalığı
  • Sistem Tasarımı: Mimari, ödünleşimler, ölçeklenebilirlik akıl yürütmesi, belirsizlikle başa çıkma
  • Davranışsal: İş birliği, sahiplenme, çatışma yönetimi, etki (STAR ile puanlanır)
  • BB Temelleri / Dil: Eşzamanlılık, bellek, veritabanları ve ana teknoloji yığınında derinlik

Cevabı bilmek başlangıç seviyesidir.
Neden doğru olduğunu, gözlem altında, açıklamak teklifi getirir.

İşe Alımcılar Bunu Gerçekte Nasıl Değerlendirir?

Çoğu aday, kodun derlenip derlenmediğine göre değerlendirildiğini sanır. Oysa o sonuca giden yola göre değerlendirilirler.

Problemi çerçeveleme. Zayıf Sinyal: Hemen kod yazmaya başlar. Güçlü Sinyal: Önce girdileri, kısıtları ve uç durumları netleştirir.

İletişim. Zayıf Sinyal: Sessiz kalır, sonra bitmiş çözümü gösterir. Güçlü Sinyal: Çözerken yaklaşımı ve ödünleşimleri anlatır.

Karmaşıklık farkındalığı. Zayıf Sinyal: "Çalışıyor". Güçlü Sinyal: "Bu O(n log n); bir hash map ile belleği O(n)'e takas edebilirim".

Test içgüdüsü. Zayıf Sinyal: Gönderir ve umar. Güçlü Sinyal: Uç durumları gezer ve kodu kuru çalıştırır.

İpuçlarıyla başa çıkma. Zayıf Sinyal: Savunmacı ya da takılır. Güçlü Sinyal: İpucunu entegre eder ve yönü hızla ayarlar.

En sık ret nedeni, görünür akıl yürütme olmadan sunulan doğru bir çözümdür. Görüşmeciler duyamadıklarını puanlayamaz.

Bilgi seni mülakata getirir.
Yapılandırılmış açıklama sana teklifi getirir.

Kodlama ve Veri Yapısı Mülakat Soruları

İyi bir kodlama mülakatı hazırlığı, ezberlenmiş çözümlere değil ödünleşim akıl yürütmesine dayanır.

1. Bağlı listeyi ters çevir.

Görüşmeciler neyi değerlendirir: İşaretçi yönetimi, döngüsel-özyinelemeli ödünleşimi, uç durum yönetimi (boş liste, tek düğüm).

Zayıf: Doğrudan koda dalar, null kontrolünü unutur, karmaşıklığı söyleyemez.

Güçlü: "Bunu üç işaretçiyle, previous, current, next, O(n) zaman ve O(1) bellekte döngüsel olarak yapacağım. Önce boş liste ve tek düğüm durumlarını ele alacağım." Sonra yazarken her işaretçi atamasını anlatır.

2. Bir dizide tekrar edenleri bul.

Görüşmeciler neyi değerlendirir: Zaman ve bellek arasındaki ödünleşim akıl yürütmesi.

Zayıf: "İki iç içe döngü kullanırım." (O(n²), bunu belirtmeden.)

Güçlü: "İç içe döngü O(n²). Bir hash set ile O(n) bellek karşılığında O(n) zamanda yapabilirim. Ek bellek kullanamıyorsak ve dizi sıralanabilirse, önce sıralamak O(1) bellekle O(n log n) verir, yani doğru seçim kısıtlara bağlı. Burada hangisi daha önemli?"

3. İki dizginin anagram olup olmadığını belirle.

Görüşmeciler neyi değerlendirir: En basit doğru yaklaşımı seçmek; Unicode ve uç durum farkındalığı.

Güçlü yaklaşım: Karakter sayma yaklaşımını belirt (sıklık tablosuyla O(n)), ardından sıralama alternatifini ve sayma tablosunun neden genelde daha iyi olduğunu söyle, ardından kodlamadan önce büyük/küçük harf ve boşluk durumunu sor.

4. Bağlı listede bir döngü tespit et.

Görüşmeciler neyi değerlendirir: Floyd'un yavaş/hızlı işaretçi tekniği ve bunun bellekte hash set yaklaşımını neden geçtiği.

Güçlü yaklaşım: İki geçerli yaklaşımı adlandır, ardından O(1) bellek için hızlı/yavaş işaretçileri seç, ardından işaretçilerin bir döngü içinde neden eninde sonunda buluşmak zorunda olduğunu açıkla.

5. İki sıralı diziyi ya da listeyi birleştir.

Görüşmeciler neyi değerlendirir: İki işaretçide akıcılık, yerinde-ek tampon ödünleşimleri, sınır yönetimi.

Güçlü yaklaşım: İki işaretçili birleştirmeyi tarif et, ardından bir dizinin boş kapasitesi varsa sondan yerinde birleştirmeyi tartış, ardından kalan elemanlar durumunu kuru çalıştır.

6. Bir dizide k. en büyük elemanı bul.

Görüşmeciler neyi değerlendirir: Tam sıralama yerine doğru aracı, heap ya da quickselect, seçip seçmediğin.

Güçlü: "Sıralama O(n log n). k boyutunda bir min-heap O(n log k) verir. Quickselect ortalamada O(n). Netlik için heap kullanırım; optimal ortalama durumu istersen quickselect uygularım."

Sistem Tasarımı Mülakat Soruları

Sistem tasarımı mülakatı, teknoloji adı saymaktan çok yapılandırılmış ödünleşim akıl yürütmesini ödüllendirir.

7. Bir URL kısaltıcı tasarla (ör. TinyURL).

Görüşmeciler neyi değerlendirir: Gereksinim toplama, kodlama stratejisi, veritabanı seçimi, okuma/yazma ölçeklemesi.

Güçlü yaklaşım: Önce ölçeği netleştir (okuma-yazma, beklenen QPS), ardından base-62 kodlu bir anahtar ya da hash öner, ardından veri deposunu tartış (düşük gecikmeli okumalar için key-value), ardından çakışma yönetimi, önbellekleme ve analitiği takip maddeleri olarak ele al.

8. Bir haber akışı tasarla (ör. sosyal zaman tüneli).

Görüşmeciler neyi değerlendirir: Fan-out ödünleşimleri, önbellekleme, çok takipçili hesaplarla başa çıkma.

Güçlü yaklaşım: Fan-out-on-write ile fan-out-on-read'i karşılaştır, ardından bir hibrit modelin çok takipçili hesapları neden çözdüğünü açıkla, ardından önbellekleme, sayfalama ve eventual consistency'yi açıkça ele al.

9. Bir hız sınırlayıcı (rate limiter) tasarla.

Görüşmeciler neyi değerlendirir: Algoritma bilgisi (token bucket, sliding window), yerleşim (gateway-servis), dağıtık durum.

Güçlü yaklaşım: Token bucket'ı seç ve gerekçelendir, ardından API gateway'e yerleştir, ardından örnekler arası paylaşılan durumu Redis gibi merkezi bir depoyla çöz, ardından doğruluk ile gecikme arasındaki ödünleşimi belirt.

10. Bir servisi 1.000 kullanıcıdan 1.000.000 kullanıcıya nasıl ölçeklersin?

Görüşmeciler neyi değerlendirir: Doğrudan "sunucu ekle"ye atlamak yerine aşamalı düşünüp düşünmediğin.

Güçlü yaklaşım: İlerlemeyi anlat, dikey ölçekleme, ardından yük dengeleme ve yatay ölçekleme, ardından önbellekleme, ardından veritabanı okuma replikaları, ardından sharding, ardından kuyruklarla asenkron işleme. Her aşamayı tetikleyen darboğazı adlandır.

Mühendisler İçin Davranışsal Mülakat Soruları

Davranışsal cevaplar STAR ile puanlanır, Situation (Durum), Task (Görev), Action (Eylem), Result (Sonuç), tıpkı teknik olmayan rollerdeki gibi.

11. Bir takım arkadaşınla yaşadığın teknik bir anlaşmazlığı anlat.

Görüşmeciler neyi değerlendirir: İş birliği, kanıta dayalı ikna, ego yönetimi.

Zayıf: "Framework konusunda anlaşamadık, sonunda benimki seçildi."

Güçlü: "Bir mesaj kuyruğu ekleyip eklememe konusunda bir arkadaşımla anlaşamadık. Her iki yaklaşımı beklenen yük altında karşılaştıran küçük bir benchmark hazırladım, verileri tasarım incelememizde paylaştım ve kuyruğu benimsedik. Kararı belgeledim ki gelecekteki mühendisler ödünleşimi anlasın."

12. Çözülmesine yardım ettiğin bir üretim arızasını anlat.

Görüşmeciler neyi değerlendirir: Baskı altında sükûnet, hata ayıklama yöntemi, suçlamasız takip.

Güçlü yaklaşım: Durum (ne bozuldu, etkisi), ardından senin somut tanı adımların, ardından düzeltme ve nasıl doğruladığın, ardından tekrarını önleyen postmortem aksiyonu.

13. Hızlıca yeni bir teknoloji öğrenmek zorunda kaldığın bir anı anlat.

Görüşmeciler neyi değerlendirir: Öğrenme çevikliği ve üretkenliğe geçiş süresi.

Güçlü yaklaşım: Teknolojiyi ve son tarihi söyle, ardından yapılandırılmış öğrenme yöntemini tarif et, ardından teslim edilen sonucu ve ne kadar hızlı yetkinliğe ulaştığını belirt.

14. Bir ürün ya da son tarih kararıyla anlaşamadığın bir anı anlat.

Görüşmeciler neyi değerlendirir: Hiyerarşi içinde mesleki dürüstlük; karşı çıkıp sonra kararı sahiplenme becerisi.

Güçlü yaklaşım: Anlaşmazlığı belirt, ardından veriyle, baş başa nasıl dile getirdiğini, ardından ne olduğunu, ardından sonuçtan bağımsız olarak nihai kararı nasıl desteklediğini anlat.

Bilgisayar Bilimi Temelleri ve Dile Özgü Sorular

15. Bir süreç (process) ile bir iş parçacığı (thread) arasındaki farkı açıkla.

Görüşmeciler neyi değerlendirir: İşletim sistemi derinliği; bellek yalıtımı konusunda netlik.

Güçlü: "Süreçlerin yalıtılmış belleği vardır; iş parçacıkları ana sürecin belleğini paylaşır. İş parçacıkları oluşturması ve iletişimi daha ucuzdur ama yarış koşullarını önlemek için senkronizasyon gerektirir. Süreçler daha ağırdır ama hataya karşı daha izole."

16. SQL ile NoSQL arasındaki fark nedir, ve hangisini ne zaman seçersin?

Görüşmeciler neyi değerlendirir: Ezber tanımlar değil, pratik veri modelleme muhakemesi.

Güçlü yaklaşım: Şema, tutarlılık ve ölçekleme modellerini karşılaştır, ardından ilişkisel bütünlük ve işlemler için SQL'i, esnek şema ve yatay ölçek için NoSQL'i seç, ardından seçimi somut bir erişim desenine bağla.

17. Bir hash map'in arka planda nasıl çalıştığını açıkla.

Görüşmeciler neyi değerlendirir: Sadece kullanımı değil; çakışmaları, doluluk oranını ve yeniden boyutlandırmayı anlayıp anlamadığın.

Güçlü yaklaşım: Bucket'lara hash'lemeyi tarif et, ardından çakışma çözümü (chaining ile open addressing), ardından doluluk oranı ve amortize O(1), ardından en kötü durumun neden O(n)'e düştüğü.

18. Tarayıcıya bir URL yazıp Enter'a bastığında ne olur?

Görüşmeciler neyi değerlendirir: Genişlik, DNS, TCP/TLS, HTTP, render, ve istendiğinde derine inme becerisi.

Güçlü yaklaşım: DNS çözümlemesi, ardından TCP el sıkışması ve TLS, ardından HTTP isteği ve yanıtı, ardından sunucu işlemesi, ardından tarayıcıda ayrıştırma ve render. Herhangi bir katmanı derinleştirmeyi öner.

19. Eşzamanlı kodda yarış koşullarını nasıl önlersin?

Görüşmeciler neyi değerlendirir: Eşzamanlılık derinliği ve ödünleşim farkındalığı.

Güçlü yaklaşım: Nedeni paylaşılan değiştirilebilir durum olarak belirle, ardından kilitler/mutex'ler, atomik işlemler ve değişmez veriyi ele al, ardından deadlock riskini ve kilit sıralamasını belirt.

20. Yavaş bir veritabanı sorgusunu nasıl optimize edersin?

Görüşmeciler neyi değerlendirir: Tahmin yürütmek yerine sistematik tanı.

Güçlü yaklaşım: Önce sorgu planını oku, ardından indeksleri ekle ya da düzelt, ardından seçilen sütun ve satırları azalt, ardından denormalizasyonu ya da önbelleklemeyi yalnızca ölçtükten sonra düşün, ardından kazancı doğrulamak için yeniden ölç.

Soruları Okumak Neden Yeterli Değildir?

Güçlü mühendisler her hafta güçlü adayları eler. Neden nadiren ham yetenektir.

Kendi kendine okumak neden yetersiz: Bir çözümü okumak zihni hazırlar, performansı değil. Doğru yaklaşımı sessizce tanımak, onu canlı olarak, gözlem altında ve süre işlerken üretip ifade etmekten farklı bir beceridir.

Baskı simülasyonu neden önemli: Mülakat baskısı davranışı değiştirir. Evde sakince çözen adaylar, izlenir izlenmez susar, gereksinim netleştirme adımını atlar ya da karmaşıklık analizini unutur. Bu boşlukları yalnızca gerçekçi baskı altında çalışmak ortaya çıkarır.

Geri bildirim gelişimi neden hızlandırır: Dışarıdan puanlama olmadan kendi kör noktalarını göremezsin, belirsiz sahiplenme, eksik sonuç, dile getirilmeyen ödünleşim. Yapılandırılmış geri bildirim belirli zayıflığı adlandırır, böylece bir sonraki tekrar tam oraya odaklanır. Bazı adaylar, gerçek mülakattan önce nesnel puanlama almak için TalentVP gibi yapılandırılmış mock mülakat platformlarını kullanır.

Gerçek mühendislik mülakatlarında dört hata deseni tekrar eder:

Sessiz çözücü doğru bir cevap üretir ama neredeyse hiçbir şey söylemez, görüşmecinin nasıl düşündüğüne dair sinyali olmaz, dolayısıyla güvenle işe alım öneremez.

Aceleci kodlayıcı gereksinimleri netleştirmeden yazar ve yanlış problemi çözer; görüşmeciler soruları bilerek belirsiz bırakır.

Karmaşıklık kör noktası çalışan kod üretir ama zaman ve bellek karmaşıklığını söylemez, kod doğru olsa bile bir temel eksikliği.

İpucunda donan aday kasıtlı bir ipucunu, onu entegre edip devam etmek yerine başarısızlık gibi ele alır.

6 Adımlı Yazılım Mühendisi Mülakat Hazırlık Sistemi

Adım 1: Soruları değil, desenleri öğren.
Her soruyu ezberleyemezsin. Tekrar eden yaklaşık 15 deseni, two pointers, sliding window, BFS/DFS, dinamik programlama, hashing, heap, ikili arama, öğren, çözümlerin çoğunu türetebilirsin.

Adım 2: Her kararı sesli anlat.
Yaklaşımı, elediğin alternatifleri ve karmaşıklığı söyleyerek çöz. Sessiz çalışmak, mülakatın puanladığı beceriyi geliştirmez.

Adım 3: Kodlamadan önce netleştir.
Tek satır yazmadan önce problemi yeniden ifade etme ve girdiler, ölçek ve uç durumlar hakkında sorma alışkanlığını edin. Bu, puanlanan bir davranıştır, gecikme değil.

Adım 4: Her seferinde karmaşıklığı söyle.
Her çözümü zaman ve bellek karmaşıklığı ile bir olası optimizasyonla bitir. Bunu otomatik hale getir.

Adım 5: Davranışsal tur için bir STAR hikâye bankası kur.
Mühendisler bunu sık sık ihmal eder ve teklifleri burada kaybeder. Çatışma, arıza, sahiplenme ve öğrenmeyi kapsayan 6–8 somut hikâyeyi, birinci tekil şahısta, sonuçlarıyla, hazırla.

Adım 6: Gerçek baskıyı simüle et.
Çözüm okumak çalışmak değildir. Tereddüt ve tempo boşluklarını açığa çıkaran süreli, gözlemli, sesli bir ortamda çöz, sonra en güçlü değil, en zayıf cevaplarını iyileştir.

Mülakat Öncesi Yazılım Mühendisi Kontrol Listesi

  • Ezber problemlerle değil, yaklaşık 15 temel algoritma deseniyle rahat
  • Her çözüm için zaman ve bellek karmaşıklığını içgüdüsel söyleyebiliyor
  • Kodlamadan önce gereksinimleri sesli netleştiriyor, her seferinde
  • Uçtan uca bir sistem tasarımı sesli anlatıldı (URL kısaltıcı ya da akış)
  • Sonuçlarıyla 6–8 mühendislik deneyimlik STAR hikâye bankası
  • Son 48 saat içinde en az bir süreli, sesli mock mülakat tamamlandı

Sıkça Sorulan Sorular

Bir yazılım mühendisi mülakatında ne tür sorular sorulur?

Yazılım mühendisi mülakatları genellikle dört turu kapsar: kodlama ve veri yapıları, sistem tasarımı, davranışsal (STAR ile puanlanır) ve bilgisayar bilimi temelleri ya da dile özgü derinlik. Junior roller kodlamaya daha çok ağırlık verir; senior roller sistem tasarımı ve davranışsal muhakemeye daha çok ağırlık verir.

2026'da bir kodlama mülakatına nasıl hazırlanmalıyım?

Problemleri ezberlemek yerine desenlere odaklan. Tekrar eden yaklaşık 15 desende, two pointers, sliding window, BFS/DFS, dinamik programlama, hashing, heap, ikili arama, ustalaş ve akıl yürütmeni sesli anlatarak çöz. Her zaman zaman ve bellek karmaşıklığını söyle ve süreli, gözlemli koşullarda çalış; çünkü mülakat iletişimi en az doğruluk kadar puanlar.

Davranışsal sorular mühendisler için önemli mi?

Evet, ve çoğu zaman belirleyici turdur. Teknik olarak güçlü adaylar bile iş birliği, çatışma çözümü ve sahiplenmeye dair somut, yapılandırılmış örnekler veremediğinde teklif kaybeder. Bir STAR hikâye bankasını algoritmaların kadar bilinçli hazırla.

Bir yazılım mühendisliği mülakatına ne kadar süre hazırlanmalıyım?

Çoğu aday için tutarlı, yapılandırılmış dört ila sekiz haftalık hazırlık yeterlidir, desenlere günde yaklaşık bir-iki saat, artı son iki haftada sesli mock mülakatlar. Birkaç günde çok sayıda problemi sıkıştırmak, görüşmecilerin puanladığı muhakeme akıcılığı olmadan yalnızca tanıma eğilimi üretir.

Mühendislerin mülakatlarda başarısız olmasının en yaygın nedeni nedir?

Görünür akıl yürütme olmadan doğru bir çözüm sunmak. Görüşmeciler duyamadıkları düşünceyi puanlayamaz. Sessiz çözmek, netleştirmeden kodlamak ve karmaşıklık analizini atlamak, adayları problemi çözememekten daha çok eler.

Güçlü mühendislik mülakatları doğaçlama değildir.
Provası yapılmıştır.
Doğru kod temel çizgidir.
Net akıl yürütme tekliftir.