Mobil Geliştirmede Teknik Mülakat: Özü, Aşamaları ve Hazırlık

Yazar: IT Sectr Yayınlanma: 2026-08-05 Okuma süresi: 9 dk

Teknik mülakat, geliştiricinin becerilerini bir dizi görüşme ve pratik görev aracılığıyla değerlendirme sürecidir. Mobil geliştirmede, platform bilgisi (Android SDK, UIKit, SwiftUI), algoritmalar ve veri yapıları, mimari desenler (MVVM, Clean Architecture, MVI) ve mobil uygulama sistem tasarımının kontrolünü içerir. Büyük şirketler 3 ila 5 tur düzenler, ortalama işe alım süresi 4-6 haftadır. LinkedIn Talent Report 2025'e göre, iOS ve Android mühendislerine olan talep iki yılda %34 arttı.

Ana Noktalar

  • Teknik mülakat — tarama, algoritmalar, mimari ve davranışsal görüşmeyi içeren çok aşamalı geliştirici değerlendirmesi
  • Aşamalar — HR taraması (30 dk), algoritma görüşmesi (60 dk), mimari bölümü (60 dk), takım lideriyle final görüşmesi
  • Algoritmalar — diziler, graflar, dinamik programlama ve ağaçlar FAANG görüşmelerindeki görevlerin temelidir
  • Hazırlık — LeetCode (300+ görev), mobil uygulamalar için sistem tasarımı ve platform teorisi tekrarı
  • Soft Skills — iletişim, çözümleri savunma ve geri bildirimle çalışma nihai kararı etkiler

BT'de teknik mülakat nedir?

Teknik mülakat, hard skills (teknik bilgi) ve soft skills (iletişim, takım çalışması) kontrolünü içeren yapılandırılmış bir profesyonel yetkinlik değerlendirme sürecidir. Bir mobil geliştirici için standart görüşme döngüsü, toplam 4-6 saat süren 3-5 turdan oluşur. Büyük teknoloji şirketlerinde ilk başvurulardan başarılı geçme oranı %2-5'tir.

Mobil geliştirmede işe alım süreci web geliştirmeden farklıdır: platforma özgü sorular eklenir — Activity/Fragment yaşam döngüsü, Swift'te ARC ve bellek yönetimi, threading modelleri (Main Thread, Dispatch Queue, Coroutines), ağ istekleri ve veri önbelleğe alma. Android geliştirici Jetpack Compose, Room, WorkManager, Dagger/Hilt bilmelidir. iOS geliştirici — SwiftUI, Core Data, Combine, URLSession. Deneyimle birlikte gereksinim farkı artar: Senior pozisyonlar için sistem tasarımı ve tüm uygulama mimarisi eklenir.

Görüşmenin yapısı seviyeye bağlıdır. Junior pozisyonlar için dil ve platform temel bilgisi yeterlidir (1-2 tur). Middle geliştirici, algoritma bloğuyla birlikte 2-3 turdan geçer. Senior mülakatı 4-5 tur içerir: algoritmalar, mobil uygulama mimarisi, sistem tasarımı, davranışsal görüşme ve VPE (Mühendislik Başkan Yardımcısı) veya CTO ile final görüşmesi.

Teknik mülakatın aşamaları

HR taraması — 20-30 dakikalık ilk aşama. İşe alımcı, deneyimin iş gereksinimlerine uygunluğunu kontrol eder, çalışma koşullarını, maaş beklentilerini ve adayın motivasyonunu görüşür. Bu aşamada deneyiminizi açõkça ifade etmek önemlidir: projeler, teknoloji yığını, metriklerdeki başarılar (yükleme süresini azaltma, çökme oranını düşürme, derlemeyi hızlandırma). HR taraması teknik bilgiyi kontrol etmez ancak resmi gereksinimlere uymama nedeniyle adayların %40'ına kadarını eler.

Taramanın ardından algoritma görüşmesi gelir — çoğu şirket için kritik aşama. Süre — 45-90 dakika. Adaya algoritmalar ve veri yapılarıyla ilgili 1-2 görev verilir. Çözüm çevrimiçi bir tahtaya (Codility, HackerRank, CoderPad) veya kağıda yazılır. Sadece doğruluk değil, aynı zamanda düşünme hızı, açıklayıcı sorular sorma yeteneği ve çözümü optimize etme becerisi de değerlendirilir. interviewing.io'ya (2025) göre, adayların %73'ü tam da algoritma aşamasında başarısız oluyor.

Mimari görüşme

Mimari tur, mobil uygulamaları tasarlama yeteneğini test eder. Adaydan bir uygulama (TODO listesi, mesajlaşma uygulaması, haber toplayıcı, akış hizmeti) tasarlaması istenir. Mimari desen seçimi (MVP, MVVM, MVI, VIPER), katman organizasyonu (Presentation, Domain, Data), DI (Dagger, Hilt, Swinject) ile çalışma ve navigasyon değerlendirilir. Android için — Jetpack Navigation bilgisi, iOS için — Coordinator deseni ve SwiftUI NavigationStack.

Davranışsal görüşmede soft skills değerlendirilir: takımda çalışma yeteneği, çatışmaları çözme, kararları savunma. STAR yöntemi (Situation, Task, Action, Result) kullanılır — aday deneyiminden belirli bir durumu tanımlar. Örnek soru: “Bulduğunuz ve düzelttiğiniz en zor hatayı anlatın.” Final turu takım lideri veya VPE ile stratejik düşünme ve şirketle kültürel uyumu test eder.

Mülakatta algoritmalar ve veri yapıları

Algoritma görevleri, büyük teknoloji şirketlerindeki (Google, Meta, Yandex, Tinkoff, Avito) görüşmelerin zorunlu bir bileşenidir. Ana amaç, dil bilgisini değil, problem çözme yeteneğini değerlendirmektir. Aday herhangi bir programlama dilini kullanabilir — Android için Kotlin ve iOS için Swift tercih edilir. Tipik konular: diziler, karma tablolar, graflar, dinamik programlama, ağaçlar (Binary Tree, Trie, Segment Tree).

LeetCode'a (2025) göre, algoritma görüşmesini güvenle geçmek için 250-400 görev çözmek gerekir. Sıklığa göre ana konular: Two Pointers (%12), Sliding Window (%10), Graflarda DFS/BFS (%14), Binary Search (%8), Dynamic Programming (%18), Hash Map / Set (%15). Big O gösterimi zorunlu bir unsurdur: Aday, çözümünün zaman ve uzay karmaşıklığını açıklamalı ve optimizasyon önermelidir.

Örnek görev: Two Sum

kotlin
// LeetCode 1: Two Sum — klasik HashMap problemi
fun twoSum(nums: IntArray, target: Int): IntArray {
    // Tümleyen = target - nums[i] ve indeksini sakla
    val map = mutableMapOf<Int, Int>()

    for (i in nums.indices) {
        val complement = target - nums[i]

        // Tümleyen bulunursa — çift bulundu
        if (complement in map) {
            return intArrayOf(map[complement]!!, i)
        }
        map[nums[i]] = i
    }
    throw IllegalArgumentException("No two sum solution")
}

// Süre: O(n), Alan: O(n)

Two Sum görevi, görüşmelerdeki en popüler görevdir (LeetCode'a göre 20 milyondan fazla gönderim). O(n) çözümü HashMap kullanır: her öğe için target - nums[i] farkının daha önce görülüp görülmediğini kontrol eder. Varsa — indeksleri döndürür. Yoksa — geçerli öğeyi HashMap'te saklar. İç içe iki döngülü O(n²) basit çözüm, Senior pozisyonlar için yetersiz kabul edilir.

Mobil geliştirme soruları

Platform soruları, mobil geliştirici görüşmesinde üç bloğa ayrılır: platformun temel bilgisi, UI ve çoklu iş parçacığıyla çalışma, ağ istekleri ve veri depolama. Android için zorunlu: Activity ve Fragment yaşam döngüsü, Fragment v1 ve Fragment v2 arasındaki farklar, ActivityResult API (onActivityResult'un yerini alan), ViewModel + StateFlow, Compose lifecycle. iOS için: UIViewController yaşam döngüsü, ARC (Otomatik Referans Sayma), DispatchQueue ve OperationQueue, SwiftUI lifecycle (View — @State — @Binding — @ObservedObject).

Örnek soru: yaşam döngüsü

Tipik soru: “Ekran döndürüldüğünde Activity'nin yaşam döngüsünün hangi geri çağırmaları çağrılır?” Doğru cevap: onPause → onStop → onDestroy → onCreate → onStart → onResume. Ek soru: “Döndürme sırasında durum nasıl kaydedilir?” — ViewModel'de SavedStateHandle, onSaveInstanceState Bundle veya Jetpack Compose'ta rememberSaveable aracılığıyla. iOS için: “Arka plana geçerken UIViewController'a ne olur?” — viewWillDisappear → viewDidDisappear → didEnterBackground (AppDelegate).

BileşenAndroidiOS
Yaşam döngüsüActivity: onCreate → onStart → onResume → onPause → onStop → onDestroyUIViewController: viewDidLoad → viewWillAppear → viewDidAppear → viewWillDisappear → viewDidDisappear
Durum kaydetmeSavedStateHandle, onSaveInstanceState, rememberSaveableCodable + UserDefaults, Core Data, @SceneStorage
Çoklu iş parçacığıCoroutines (Dispatchers.Main, IO, Default)GCD (DispatchQueue.main, .global, .background)
UI düzeniJetpack Compose (Modifier, @Composable)SwiftUI (View, @ViewBuilder, Modifier)
NavigasyonJetpack Navigation Component, Cicerone, DecomposeNavigationStack, Coordinator, Router (RIBs)

Mobil uygulama sistem tasarımı

System Design Interview, mobil geliştirici için istemci uygulama mimarisini ve sunucuyla etkileşimini tasarlama yeteneğini test eder. Standart görevler: haber akışı (Instagram/TikTok gibi), sohbet (Telegram gibi), video oynatıcı (YouTube gibi), birinci seviye önbellek (L1 — bellekte, L2 — disk) tasarlamak. Süre — 60 dakika. Ayrıntı miktarı değil, düşüncenin yapısı değerlendirilir.

System Design için cevap şablonu: 1) Clarify requirements — işlevsel (akış, beğeniler, yorumlar, fotoğraf yükleme) ve işlevsel olmayan gereksinimleri (offline, yükleme hızı, pil tüketimi) netleştirin. 2) High-level design — katman şeması çizin: UI Layer → ViewModel → Repository → Network / Cache / DB. 3) Deep dive — ana bileşenleri detaylandırın, örneğin sayfalama mekanizması (Android için Paging 3, iOS için Offset-based vs Cursor-based). 4) Trade-offs — ödünleşmeleri tartışın: önbellek vs veri tazeliği, offline-first vs online-only.

Mobil için System Design ana konuları: önbellekleme (LRU Cache, sınırlı Disk Cache), görüntülerle çalışma (Coil, Glide, SDWebImage — yükleme, önbellek, yer tutucu, ilerleme), trafik optimizasyonu (JSON yerine protobuf, sıkıştırma, Differ/GraphQL), çevrimdışı çalışma (Room + Sync Adapter, Core Data + iCloud, arka plan senkronizasyonu için WorkManager). Offline-first, Senior pozisyonlar için en sık görülen konulardan biridir.

iOS için App Thinning, Slicing, On-Demand Resources ve derleme optimizasyonuyla ilgili sorular eklenir. Android için — R8/ProGuard, App Bundles (AAB vs APK), Dynamic Delivery ve Minification ile ilgili sorular. Mimari soru “Bellek sınırlaması olan görüntü önbelleği nasıl uygulanır?” LRU Cache (erişim sırasına göre LinkedHashMap), Disk LRU Cache (Jake Wharton'ın DiskLruCache'i) ve Coil/Glide bellek önbelleği katmanı anlayışını test eder.

Mülakat hazırlık stratejisi

Mülakat hazırlığı, planlanan görüşmeden 4-8 hafta önce sistematik bir yaklaşım gerektirir. Temel strateji: teori tekrarı için 2 hafta (dil, platform, algoritmalar), algoritma görevlerini çözmek için 2-4 hafta (LeetCode'da 100-300 görev), deneme mülakatları için 1-2 hafta (Pramp, interview.io, arkadaşlarla). Senior pozisyonlar için System Design hazırlığı eklenir (2-3 hafta). Plan, hedef seviyede %70-80 başarı oranı sağlar.

Mobil geliştiriciler için özel hazırlık şunları içerir: Android Developers Guide / iOS Developer Library okumak, popüler kütüphanelerin (Retrofit, OkHttp, Coil, Koin, Alamofire, Kingfisher) kaynak kodunu analiz etmek, Clean Architecture ve CI/CD (GitHub Actions, Fastlane) ile bir pet-proje yazmak. GitHub'da modüler mimari, DI, testler (Unit + UI + Snapshot) içeren bir örnek uygulama yazın — bu derin anlayışı gösterecek ve mülakatta bir argüman olacaktır.

HaftaYapılacaklarSonuç
1-2Teori tekrarı: dil (Kotlin/Swift), platform (Android/iOS), algoritmalar (Big O, temel yapılar)Ana konuların özeti
3-4LeetCode: 100-150 görev, konular: Arrays, Hash Maps, Trees, DFS/BFS, DPMedium görevleri güvenle çözme
5-6System Design: “Designing Data-Intensive Applications” okumak, 5-7 tasarım pratiğiSystem Design için hazır cevap şablonu
7-8Deneme mülakatları (5-10 görüşme), platform sorularını tekrar, davranışsal sorularGerçek mülakata tam hazırlık

Adayların tipik hataları

Hata 1: Sessizce çözmek. Aday sessizce kod yazar, düşünce sürecini yorumlamaz. Görüşmeyi yapan kişi çözüm sürecini değerlendiremez. Doğrusu: Her adımı sesli söyleyin — “Görevin bir graf aramasına dayandığını görüyorum. En kısa yolu bulmamız gerektiği için BFS kullanmayı öneriyorum.” Bu tür bir iletişim, hata durumunda görüşmecinin adayı yönlendirmesine olanak tanır ve bu olumlu değerlendirilir.

Hata 2: Hemen kod yazmak. Gereksinimleri netleştirmeden ve yaklaşımları tartışmadan kodlamaya başlamak, başarısızlığın ana nedenlerinden biridir. Kod yazmadan önce: giriş/çıkış verilerini netleştirin, uç durumları tartışın, Big O değerlendirmesiyle 2-3 yaklaşımı karşılaştırın ve görüşmeciyle anlaştıktan sonra en uygun çözümü yazın. Doğru desen: Clarify → High-level approach → Big O → Write code → Test with examples → Discuss trade-offs.

Hata 3: Platform bilgisi eksikliği. Aday algoritmaları iyi çözer ancak Activity ve Fragment arasındaki veya Swift'te weak/unowned arasındaki farkı açıklayamaz. Mobil işler için platform bilgisi algoritmalarla eşit değerlendirilir. Öğrenin: SDK sürüm farklılıkları (compileSdk vs minSdk vs targetSdk), popüler kütüphaneler için ProGuard/R8 kuralları, Swift Concurrency (async/await, actors) ve MainActor. iOS pozisyonuna başvuran her üç adaydan biri ARC ile ilgili sorularda başarısız oluyor.

Sıkça sorulan sorular

Teknik mülakat kaç turdan oluşur?

Standart tur sayısı 3-5'tir: HR taraması (30 dakika), algoritmalar (60 dakika), mimari/sistem tasarımı (60 dakika), davranışsal görüşme (45 dakika), takım lideriyle final turu (60 dakika). Startuplarda 2-3 tur olabilir, büyük şirketlerde (Google, Meta) 6 tura kadar çıkabilir. Toplam süre görüşme döngüsünün — şirkete bağlı olarak 2 ila 6 hafta.

Mülakat için hangi algoritmalar bilinmeli?

En önemli 5 konu: dinamik programlama (görevlerin %18'i), graflarda DFS/BFS (%14), Two Pointers (%12), Sliding Window (%10), Binary Search (%8). FAANG görüşmelerini geçmek için LeetCode'da 250-400 görev çözmeniz önerilir. Medium seviye — minimum zorunluluk. Senior pozisyonlar için ağaçlar ve öncelik kuyruklarıyla ilgili görevler eklenir.

Bir ayda mülakata nasıl hazırlanılır?

Bir aylık plan: 1. hafta — dil ve platform tekrarı (Kotlin/Swift, ana kütüphaneler, yaşam döngüleri). 2. hafta — LeetCode Medium (100 görev, konular: Arrays, Hash Maps, Trees). 3. hafta — Mobil için System Design (önbellek, sayfalama, offline-first). 4. hafta — deneme mülakatları (en az 3 Pramp'te veya bir meslektaşla). Ana tavsiye: deneme mülakatlarını gerçeğe yakın koşullarda yapın — son tarih, tanıdık olmayan görüşmeci, çevrimiçi tahta.

Junior ve Senior mülakatı arasındaki fark nedir?

Junior: 1-2 tur, temel algoritmalar (reverse string, fizzbuzz, temel ağaç gezinmesi), dil ve platform temelleriyle ilgili sorular. Middle: 2-3 tur, Medium algoritmalar, mimari (MVP/MVVM) ile ilgili sorular, ağ ve önbellekle çalışma. Senior: 4-5 tur, Hard algoritmalar, System Design, tüm uygulama mimarisi, CI/CD, kod inceleme, liderlik ve mentorlukla ilgili davranışsal sorular. Senior'un kendi sorularını sorması ve tartışmayı yönlendirmesi beklenir.

Davranışsal görüşmede ne sorulur?

Örnek sorular: “Takımda bir çatışma ve bunu nasıl çözdüğünüzü anlatın,” “En zor özellik hangisiydi ve neden,” “Neden bizde çalışmak istiyorsunuz,” “Takımdaki süreçleri iyileştirmek için ne yaptınız.” Yapılandırılmış yanıt için STAR yöntemini (Situation, Task, Action, Result) kullanın. Deneyiminizden önceden 3-4 hikaye hazırlayın — bu, davranışsal soruların %80'ini kapsar.

Özet

  • Teknik mülakat — 3-5 turlu çok aşamalı değerlendirme: HR taraması, algoritmalar, mimari, davranışsal görüşme ve liderle final turu
  • Algoritmalar — ana aşama: güvenli geçiş için LeetCode'da 250-400 görev (DP, Graphs, Arrays, Two Pointers)
  • Platform bilgisi — Android (Activity Lifecycle, Jetpack Compose, Coroutines, DI) ve iOS (ARC, SwiftUI, Combine, GCD) algoritmalarla eşit değerlendirilir
  • System Design — Senior için zorunlu: önbellek, offline-first, sayfalama, trafik optimizasyonu ve görüntü işleme
  • Hazırlık — 4-8 hafta: teori (2 hafta), algoritmalar (2-4 hafta), System Design (1-2 hafta), deneme mülakatları (1 hafta)
  • İletişim — çözümü sesli söyleyin, açıklayıcı sorular sorun, trade-off'ları tartışın ve hemen kodlamaya başlamayın

Anahtar teslim bir mobil uygulama geliştireceğiz

IT Sectr, 2017'den beri girişimler ve işletmeler için iOS ve Android uygulamaları oluşturmaktadır. Size danışmanlık yapacak ve en iyi çözümü önereceğiz.

Projeyi tartış

Ayrıca okuyun