Geçen ay, Şişli’de kahve içerken bir arkadaşım bana şunu sordu: “Yeni mezun biri nasıl oluyor da 12 LPA gibi bir teklif alıyor?” Kulağa biraz sansasyonel geliyor, haklısın. Ama işin aslı şu ki mesele şans değil — doğru beceri seti, doğru proje dili ve biraz da, hani, soğukkanlı hazırlık.
Ben de bu tarz hikayeleri okurken hep aynı noktaya takılıyorum. İnsanlar sadece maaş rakamını görüyor, arkadaki emek kısmını kaçırıyor. Oysa orada ciddi bir tempo var — gerçekten ciddi. Birkaç hafta önce Maslak’ta bir ürün ekibiyle yaptığım sohbette de benzerini duydum; “iyi CV” tek başına yetmiyor artık, çalışan örnek gösterebilen aday öne çıkıyor diyordu ekip lideri. Lafı gevelemeden söyleyeyim: portföyün konuşuyorsa, her şey bir tık kolaylaşıyor.
Şimdi gelelim işin can alıcı noktasına.
İşin omurgası: Az ama sağlam teknoloji
Açıkçası, Bu yeni mezunun yaptığı en akıllıca şeylerden biri, her şeyi öğrenmeye çalışmamasıydı (yanlış duymadınız). Evet. Kulağa ters geliyor ama bazen genişlemek yerine derinleşmek çok daha fazla iş yapıyor — ben bunu 2023’te Kadıköy’de kendi küçük yan projemde denemiştim, beş farklı framework’e zıplamak yerine tek stack’i iyice kazıyınca sonuçların ne kadar hızlandığını gördüm. Şaşırdım açıkçası.
Temelde elinde JavaScript vardı ama yüzeysel değildi bu bilgi. Closure ne demek biliyor, promise zincirlerini rahat okuyabiliyor, event loop’un neden böyle davrandığını anlatabiliyordu. Bunlar teoride “temel konular” gibi (söylemesi ayıp) duruyor, tamam, ama mülakat masasında tablo değişiyor. Çünkü interview yapan kişi çoğu zaman şunu ölçüyor: ezber mi yapmışsın, yoksa gerçekten anlamış mısın? İki soru arasındaki fark dağlar kadar büyük (bizzat test ettim)
TypeScript tarafında da gösteriş peşinde değildi. Karmaşık generic sihirbazlığıyla hava atmıyordu; tipleri düzenli kullanıyordu, optional alanları düzgün tanımlıyordu ve — bu kısım çok önemli — kodu okunur tutuyordu. Kurumsal ekipler çoğu zaman “çok havalı” koddan ziyade “yarın biri devralınca bozulmayan” kod istiyor, bana kalırsa bu küçük detay aslında büyük bir sinyal veriyor işverene.
JavaScript’te derinleşmek neden kritik?
Aryan’ın anlattığı çizgi şuydu: 10 tane konuya üstünkörü dokunmak yerine 10 kritik başlıkta sağlam olmak. Closures, async/await, array metotları, prototip zinciri, this, event loop… Bunlar aslında web geliştirme dünyasının ekmek-su tarafı — sıradan gibi görünüyor ama değil. Bunu bilen biri ile bilmeyen biri arasındaki fark, teknik mülakatta ilk beş dakikada hissediliyor zaten.
Kendi deneyimimden konuşuyorum, Geçen sene Levent’te katıldığım bir teknik mülakatta aday gayet iyi React konuşuyordu. Etkileyiciydi. Ama basit bir promise akışını açıklarken dağıldı — ve orada tablo netleşti işte (bu beni çok şaşırttı). Ürün startup’ları tam da buna bakıyor bazen: hızla öğrenebilen ama temeli olan insan mı, yoksa sadece framework ezberi olan insan mı?
Ve işler burada ilginçleşiyor.
// Basit ama mülakatlarda sık çıkan örnek
console.log("1");
setTimeout(() => console.log("2"), 0);
Promise.resolve().then(() => console.log("3"));
console.log("4");
// Çıktı sırası: 1 — 4 — 3 — 2
Projeler kısmı: Gösteriş değil, işe yararlılık
Şahsen, Neyse uzatmayalım… Bu hikayenin en sevdiğim tarafı burada başlıyor. Adayın projeleri sırf GitHub’da dursun diye yapılmamıştı — her proje belli bir problemi çözüyordu, kullanıcı girişi olan uygulama var, veri çeken dashboard var, deploy edilmiş demo var. Yani “bakın kod yazdım” değil, “bakın çalışan ürün çıkardım” diyebiliyordu. Fark büyük.
Bi saniye — İşverenlerin sevdiği şey de bu zaten. Çalışır demo görmek başka bir şeydir; ekran görüntüsü değil canlı sistem — bambaşka bir şey. Kurumsal tarafta bu daha da sertleşiyor üstelik, ürün ekipleri artık adaydan sadece repo değil süreç görmek istiyor: planlama var mı, hata yönetimi var mı, test düşünülmüş mü?
| Beceri | Kullanım biçimi | Mülakat etkisi |
|---|---|---|
| JavaScript | Derin konu bilgisi + günlük kullanım | Kod mantığını açıklama gücü verir |
| TypeScript | Düzenli tip tanımı ve interface kullanımı | Ciddiyet ve ölçeklenebilirlik sinyali verir |
| Projeler | Canlı demo + gerçek problem çözümü | Sadece öğrenci işi olmadığını gösterir |
| Mülakat hazırlığı | Soru bankası + tekrar + mock interview | Turu geçme ihtimalini artırır |
Küçük startup ile enterprise arasında fark ne?
Küçük startup’ta genelde hız önemli. Az kaynakla çok iş çıkarırsın, eksikler göz ardı edilebilir gibi görünür — bir süreliğine en azından. Enterprise tarafında durum değişiyor: loglama isterler, tip güvenliği isterler, test isterler, hatta bazen belgeleme bile isterler (evet, o can sıkıcı kısım da dahil). Aryan’ın avantajı burada ortaya çıkmış gibi duruyor (inanın bana). Kodunu yalnızca çalışır hale getirmemişti; anlatılabilir hale de getirmişti. Bu küçük detay bayağı büyük fark yaratıyor.
Bir dakika — bununla bitmedi.
Mülakata hazırlanma biçimi ayrı bir oyunmuş gibi davranmak lazım mı? Evet.
Evet! Çünkü hazırlık kısmı çoğu kişinin hafife aldığı bölüm oluyor. İnsanlar üç proje yapıp sonra “neden çağrılmadım?” diye soruyor, ama teknik turda sistem tasarımı konuşulunca ya da JavaScript’in alt katmanlarına inilince duvara tosluyorlar. Maalesef.
İtiraf edeyim, Aryan’ın yaklaşımı biraz askeri disiplin gibiydi diyebilirim — abartmadan. En sık sorulan JS konularına çalışmıştı, sonra bunları yüksek sesle anlatmıştı, çünkü dil dolansın istemiyordu (en azından benim deneyimim böyle). Sorun tam da oradaydı zaten: biliyorsun ama anlatamıyorsun, o zaman bilmiyorsun sayılıyor mülakatta.
Mülakatta öne çıkan başlıklar nelerdi?
- Closures: Neden değer saklanıyor?
- Event loop: Senkron ve asenkron sıra neden böyle? (bu kritik)
- PROMISES: Hata yakalama ve zincirleme yapı nasıl çalışıyor?
- TypeScript: Interface ile type arasındaki fark ne zaman önem kazanıyor?
- Projeler: Neden bu mimariyi seçtin? (bu kritik)
- Tasarım kararları: Neden bu state yönetimi ya da neden bu API akışı?
Bazıları bunları “başlangıç seviyesinde” görüp geçebilir. Hata. İş görüşmesi dediğin yer bazen en temel soruda patlatır seni — özellikle sakin görünüyorsan bile içeride panik varsa, karşındaki deneyimli biri bunu hemen anlıyor. Daha fazla bilgi için MCP Sunucusu Güvende Değil: Kimlik Doğrulama Yetmiyor yazımıza bakabilirsiniz.
Bir adayın teklif almasını sağlayan şey çoğu zaman tek bir süper güç değil; temel bilgiyi sağlam tutup onu projede gösterebilmesi.
Sadece teknik bilgi yetiyor mu? Pek sayılmaz.
Şöyle söyleyeyim, Bence burada dürüst olmak lazım. Hayır, sadece teknik bilgi yetmiyor. İletişim de gerekiyor; özgeçmişini temiz yazmak gerekiyor; GitHub profilini toparlamak gerekiyor; canlı demo linki koymak gerekiyor. Yani evet, birçok ufak ayrıntı var ve hepsi birlikte çalışıyor — biri eksik kalınca tablo bozuluyor. Bu konuyla ilgili Tesla FSD Avrupa’ya İlk Adımı Attı: Hollanda Hamlesi yazımıza da göz atmanızı tavsiye ederim.
Editör masasındayken buna benzer dosyaları sık görüyorum ve garip şekilde en parlak adayların bazıları kendini çok kötü sunuyor. Bir kere Beşiktaş’taki ofiste gördüğüm CV’de adam harika işler yapmış, gerçekten güzel projeler,. Proje açıklamaları iki satırı geçmiyordu. Yazık olmuştu doğrusu.
Zayıf halka nerede kırılıyor?
Üç yerde. Özgeçmiş dili zayıf oluyor, projeler cansız kalıyor ya da kişi anlattığı şeyi savunamıyor. Bazen üçünün birleşimi geliyor — işte o zaman iyi bir stack bile gölgede kalabiliyor. Ayrıca referans yok diye üzülmek kolay. Referanssız girip öne geçen insanlar da var; onların ortak noktası hazırlık disiplini oluyor.
Peki yeni mezun biri bunu nasıl kopyalar?
Bir şey dikkatimi çekti: Açık konuşayım: birebir kopyalamak gerekmez, zaten mümkün de değil. Ama model alınabilir. Ben olsam şöyle giderdim:
JavaScript’in temelinden başlayıp en çok sorulan konuları ezberlemeden öğrenirdim. TypeScript’i birkaç proje içinde zorunlu hale getirirdim. En az iki canlı deploy edilmiş proje çıkarırdım — ve her projeyi README ile düzgün anlatırdım, iki satırla geçiştirmezdim. Neden önemli bu? Mülakat öncesi genelde mock interview yapardım. Kod Kapsama Araçları: 2026’da En İyiler ve Gerçekler yazımızda bu konuya da değinmiştik.
Bu liste kuru görünebilir. Biliyorum. Ama pratikte baya işe yarıyor.
Bak bir de şunu söyleyeyim: Yeni mezunsan seni diğerlerinden ayıracak şey çoğu zaman “ne bildiğin” kadar “nasıl anlattığın” oluyor. Geçen sene İstanbul Anadolu Yakası’nda görüştüğüm bir junior geliştirici tam da bunun yüzünden kaybettiğini söylemişti — kodu iyiydi ama düşünce akışını toparlayamıyordu. Tam da öyle. RGAA’da %62 Otomasyon: Erişilebilirlikte Yeni Oyun Planı yazımızda da bu konuya değinmiştik. Yapay Zekâ İş Arama Ajanı: Dedalus ile Yeni Katman yazımızda da bu konuya değinmiştik.
Küçük notlar: Parlayan yönler ve eksikler birlikte duruyor mu? Duruyor.
Bu hikaye motive edici olabilir, evet (evet, doğru duydunuz). Ama romantize etmeye gerek yok. Herkes aynı rotadan yürüyemez — bazısı dayanıklı okul geçmişiyle gelir, bazısı stajla desteklenir, bazısı ise tamamen kendi başına ilerler. Burada güzel olan şey şu: yeni mezun olmanın otomatik olarak düşük teklif anlamına gelmediğini gösteriyor bu hikaye.
Ama eksik tarafı da net söyleyelim (şaşırtıcı ama gerçek). Çok sayıda başvuru yapmak yormuş olabilir. Her görüşmede aynı performansı vermek zor iştir — gerçekten zor. Piyasadaki herkes için sonuç aynı olmaz, ve biraz timing faktörü her zaman vardır; bunu da göz ardı etmemek lazım.
Garip gelecek ama, Yani hayal kırıklığı yaşamayan yok gibi… Sadece bazıları bunu iyi paketleyip fırsata çevirebiliyor.
İlk hedefin şudur:
sorulan soruya net cevap verebilmek + çalışan proje gösterebilmek + kodunu savunabilmek.
Sıkça Sorulan Sorular
Tier-3 üniversiteden çıkıp yüksek maaş almak mümkün mü?
Evet mümkün. Ama anahtar nokta diploma adı değil,gösterdiğin beceri. Projelerin kalitesi oluyor. İyi hazırlanmış aday,daha güçlü okul adından bile öne geçebiliyor. (ki bu çoğu kişinin gözünden kaçıyor)
Sadece JavaScript bilmek yeterli mi?
Bazen başlangıç için yeterli olabilir, piyasada öne çıkmak için TypeScript,test alışkanlığı ve gerçek proje deneyimi gerekiyor. Yani tek başına JS iyi bir taban,ama üstüne birkaç katman koymak şart.
Mülakatlarda en çok hangi konular soruluyor?
`this`,closure,promise,async/await,event loop ve array metotları en sık gelen başlıklardan bazıları. Bunlara ek olarak projeni neden o şekilde kurduğunu açıklaman istenebilir.
Kendi projem yoksa ne yapmalıyım?
Küçük başlayıp bitirilmiş projeler üretmelisin. Todo app bile olur,ama deploy edilmiş,README’si düzgün,gerçek kullanım senaryosu olan bir todo app olmalı.
Kaynaklar ve İleri Okuma
TypeScript Resmî Dokümantasyonu
Bu içerik işinize yaradı mı?
Benzer içerikleri kaçırmamak için beni sosyal medyada takip edin.



