"Ne zaman mid-level olunur?" sorusunun net bir tarihi yok, çünkü bu geçiş bir sertifika ya da unvan değişikliğiyle değil, küçük küçük alışkanlık değişiklikleriyle oluyor. Bu yazıda, junior'dan mid-level'a geçişte gerçekten fark yaratan becerilerin neler olduğuna bakıyoruz.
Sadece "Nasıl Yaparım?" Değil, "Neden Böyle Yapılmalı?" Diye Sorabilmek
Junior seviyede önceliğin bir görevi tamamlamak, testten geçirmek ve PR açmak olması normal. Mid-level'a geçişte fark eden ilk şey, çözümü uygularken "bu yaklaşımın alternatifi neydi, neden bu seçildi" sorusunun da sorulmaya başlanması. Bu, sadece kod yazmaktan çıkıp, kararların sonuçlarını değerlendirmeye geçiş anlamına geliyor.
Bağımsız Çalışabilme ve Belirsizlikle Baş Etme
Junior seviyede bir görev genellikle net tanımlanmış olarak geliyor: "şu endpoint'i ekle, şu validasyonu yap". Mid-level'da ise gelen taleplerin çoğu zaman eksik ya da belirsiz olduğu görülüyor. "Kullanıcı yönetimi ekranını iyileştir" gibi bir talep geldiğinde, önce doğru soruları sorup kapsamı netleştirmek, sonra çözümü tasarlamak gerekiyor. Bu, teknik bir beceriden çok, iş bağlamını anlama becerisiyle ilgili.
Trade-off'ları Görebilmek
Junior seviyede genellikle "en iyi" çözümü bulmaya odaklanılıyor. Ama her mimari kararın bir bedeli var: performans mı öncelik, yoksa geliştirme hızı mı? Bugünün ihtiyacına mı optimize edilmeli, yoksa gelecekteki ölçeklenmeye mi? Mid-level bir geliştirici için asıl soru "bu en iyi çözüm mü?" değil, "bu proje ve zaman kısıtları için en uygun çözüm hangisi?" olmalı.
Hata Yapmaktan Korkmamak, Aynı Hatayı Tekrarlamamak
Junior seviyede her hata büyük bir başarısızlık gibi hissedilebiliyor. Oysa hatalar, sistemin veya sürecin bir eksiğini gösteren sinyaller olarak görülmeli. Production'da bir hata çıktığında sorulması gereken soru "kim yaptı" değil, "bu hatayı bir sonraki sefer nasıl daha erken yakalarız" olmalı — testle mi, code review kontrol listesiyle mi, yoksa bir monitoring alarmıyla mı?
Ekibe Geri Vermek
Mid-level'a geçişin en somut göstergelerinden biri, ekibe yeni katılan junior'lara zaman ayırabilmek. Bir kod inceleme yorumunu sadece "bunu düzelt" değil, "neden bu şekilde daha iyi olur" diye açıklamak, kısa vadede zaman alsa da uzun vadede ekibin genel kalitesini yükseltiyor. Bunu yapabilmek, artık sadece kendi işini değil, ekibin işini de düşünmeye başlamanın bir işareti.
Sonuç
Junior'dan mid-level'a geçiş, yeni bir framework öğrenmekten çok, sorumluluk alma biçiminin değişmesiyle ilgili. Teknik bilgi elbette önemli, ama asıl fark; belirsizlikle çalışabilme, trade-off'ları görebilme ve başkalarının gelişimine katkı sağlayabilme yeteneğinde ortaya çıkıyor.