0/32

Junior Backend Developer 2026

Türkiye ve dünyadaki junior backend ilanlarında Go veya C#'ın yanına Kubernetes, Kafka, AWS Mimari, Redis Cluster ve Mikroservisler yığılıyor. Şirketler 4 kişilik altyapı ekibinin yükünü tek bir junior'a yıkmaya çalışıyor.

20 farklı teknolojiyi yüzeysel ezberlemek seni işe sokmaz; işe sokacak tek şey mimarisini, güvenliğini ve veritabanını savunabildiğin çalışan TEK BİR canlı API projesidir. Adım adım ilerle, konuları incele ve öğrendiklerini işaretle.

  • Temelİşe girmeden önce sağlam bilinmeli
  • İyi olurİlanlarda sık geçiyor, elini güçlendirir
  • Sonraİşe girdikten sonra, ihtiyaç doğunca

Bir konuya tıkla: ne bilmen gerektiği ve kaynaklar açılır.

  1. 01

    Temel ve Web Protokolleri

    API'lerin konuştuğu evrensel kurallar ve arkasındaki mantık. Dil bağımsızdır, her backend geliştiricinin ortak alfabesidir.

  2. 02

    Veritabanı ve SQL

    Backend'in asıl kalbi. Arayüzler ve diller değişir, ama verinin doğruluğu ve ilişkileri daima ayakta kalır.

  3. 03

    Kimlik Doğrulama ve Güvenlik

    Bir backend geliştiriciyi hobi kodlayıcısından ayıran alan. Veri güvenliğini sağlamayan bir API canlıya çıkamaz.

  4. 04

    İşe Hazırlık ve Gerçek Proje

    Seni binlerce adayın önüne geçirecek kısım. Sadece kod yazmak değil; paketlemek, dokümante etmek ve canlıya almak.

  5. 05

    Sonradan Öğrenilebilecekler

    Junior ilanlarında kopyala-yapıştır yapılan ama işe girmek için şart OLMAYAN konular. Şirketteki production ihtiyacına göre ekiple öğrenilir.

Konu konu

Haritadaki her konunun açıklaması, bilmen gerekenler ve kaynaklar — tek listede.

  1. 01Temel ve Web Protokolleri

    • HTTP Protokolü ve REST· Temel

      Backend'in dış dünyaya açılan kapısı. HTTP metotlarını ve durum kodlarını doğru kullanamayan bir backend geliştirici sürekli frontend ile çatışır.

      Bilmen gerekenler

      • HTTP Metotları: GET, POST, PUT, PATCH, DELETE semantiği ve idempotent kavramı
      • Durum Kodları: 200, 201, 204, 400, 401, 403, 404, 409, 422, 500 farkları
      • Başlıklar (Headers): Content-Type, Authorization, Accept, Cache-Control
      • REST Prensipleri: Stateless yapı, kaynak (resource) odaklı URL tasarımı ve JSON formatı

      Kaynaklar

      • İstek Yaşam Döngüsü· Temel

        Bir istek tarayıcıdan çıktığı andan Controller'a, Servis katmanına ve veritabanına gidip dönene kadar hangi duraklardan geçer?

        Bilmen gerekenler

        • Middleware mantığı: İstek doğrulama, loglama, hata yakalama (global error handler)
        • Query params, Route params ve Request Body farkları
      • Postman / Bruno / cURL· Temel

        Backend kodunu yazarken frontend'i beklemeden kendi uçlarını test etmenin ve debug etmenin günlük aracı.

        Kaynaklar

    • Tek Bir Backend Dili· Temel

      Diller arasında sürekli geçiş yapmayı bırak. Türkiye pazarında Go, Node.js (TypeScript) veya C# (.NET) dillerinden birini seç ve derinleş.

      Bilmen gerekenler

      • Dili sadece sözdizimiyle değil; bellek yönetimi, tip güvenliği ve standart kütüphanesiyle kavramak
      • Asenkron programlama: Event loop / Goroutines / Async-Await & Threading
      • Dosya I/O, Streams ve ortam değişkenlerini (.env) güvenli okumak

      Kaynaklar

      • Hata Yönetimi ve Logging· Temel

        Kodu try-catch çöplüğüne çevirmeden, beklenmeyen hatalarda sunucunun çökmesini engelleyen merkezi hata yönetimi kurmak.

        Bilmen gerekenler

        • İç hataları kullanıcıya sızdırmamak (500 Stack Trace gizleme)
        • Yapılandırılmış loglama (JSON loglar, log seviyeleri: INFO, WARN, ERROR)
      • Konfigürasyon Yönetimi· Temel

        Veritabanı şifreleri ve gizli anahtarlar asla koda gömülmez. .env dosyasından okumak ve .gitignore ile korumak.

  2. 02Veritabanı ve SQL

    • PostgreSQL & İlişkisel SQL· Temel

      NoSQL ve MongoDB modasına kapılma; sektörün %90'ı ilişkisel veritabanı ister. PostgreSQL bilmek seni her backend mülakatında öne geçirir.

      Bilmen gerekenler

      • Temel CRUD ve filtreleme: SELECT, INSERT, UPDATE, DELETE, WHERE, GROUP BY, HAVING
      • Tablo İlişkileri: One-to-Many, Many-to-Many, Primary Key ve Foreign Key kısıtları
      • JOIN Türleri: INNER JOIN, LEFT JOIN, FULL JOIN farkları ve ne zaman hangisi kullanılır
      • ACID Prensipleri: Atomicity, Consistency, Isolation, Durability ve Transaction (COMMIT / ROLLBACK)

      Kaynaklar

      • Index Mantığı (B-Tree)· Temel

        Milyonluk tabloda arama neden 3 saniye sürer, CREATE INDEX ile nasıl 2 milisaniyeye düşer? Index maliyetleri ve EXPLAIN sorgusu.

        Bilmen gerekenler

        • Full Table Scan vs Index Scan farkı
        • Her kolona index atmanın yazma (INSERT/UPDATE) maliyeti
      • Transaction ve Tutarlılık· Temel

        Para transferi yaparken A hesabından düşüp B hesabına eklenemezse ne olur? İki işlemi tek bir atomik pakette çalıştırmak.

    • ORM ve Migration Yönetimi· Temel

      Veritabanı şemasını koda dökmek. ORM hayatı kolaylaştırır ama arkada ürettiği SQL'i bilmeyen geliştirici N+1 hatasına düşer.

      Bilmen gerekenler

      • Diline uygun tek bir ORM/Query Builder seç: Prisma, TypeORM, GORM, EF Core veya Dapper
      • N+1 Sorgu Problemi: 100 kullanıcıyı ve siparişlerini çekerken veritabanına 101 sorgu atmamak
      • Database Migrations: Şema değişikliklerini takım arkadaşlarıyla ve sunucuyla senkronize etmek

      Kaynaklar

      • N+1 Problemi ve Çözümü· Temel

        Mülakatlarda en sık sorulan performans sorusu. Eager loading, JOIN ve DataLoader mekanizmaları.

      • Raw SQL Ne Zaman Yazılır?· İyi olur

        Raporlama veya karmaşık aggregate sorgularında ORM'i bırakıp doğrudan SQL çalıştırmayı bilmek.

  3. 03Kimlik Doğrulama ve Güvenlik

    • Kimlik Doğrulama (Auth)· Temel

      Kullanıcı kimdir ve bu işlemi yapmaya yetkisi var mı? Parolaları düz metin saklama devri 20 yıl önce kapandı.

      Bilmen gerekenler

      • Parola Hashleme: bcrypt veya Argon2 ile tuzlama (salt) mantığı, rainbow table saldırıları
      • JWT (JSON Web Token): Header, Payload, Signature yapısı. Token'ın şifreli değil imzalı olduğunu bilmek
      • Access Token & Refresh Token döngüsü: Güvenli saklama (HttpOnly Cookie vs Header)
      • Yetkilendirme (RBAC): Rol tabanlı yetki kontrolü (Admin, User, Editor) middleware'leri

      Kaynaklar

      • Session vs JWT· İyi olur

        Stateful session (sunucuda tutulan Redis/DB oturumu) ile Stateless JWT arasındaki avantaj ve dezavantajlar.

      • OAuth 2.0 Temelleri· İyi olur

        Google ya da GitHub ile Giriş Yap akışının arka planda nasıl çalıştığı (Authorization Code akışı).

    • Girdi Doğrulama ve API Savunması· Temel

      Kullanıcıdan gelen hiçbir veriye güvenilmez (Zero Trust). Dışarıdan gelen veriyi şemayla doğrulamak zorundasın.

      Bilmen gerekenler

      • Request DTO / Validation: Zod, Joi, FluentValidation gibi araçlarla gelen gövdeyi denetlemek
      • SQL Injection: Neden parametrik sorgu (Prepared Statement) kullanmak zorunda olduğumuz
      • CORS (Cross-Origin Resource Sharing): Frontend başka bir alan adından istek attığında ne olur?
      • Rate Limiting: API uçlarını brute-force ve bot saldırılarına karşı sınırlandırmak

      Kaynaklar

      • CORS ve Preflight (OPTIONS)· Temel

        Preflight OPTIONS isteği nedir, tarayıcı neden atar, backend tarafında header'lar nasıl yapılandırılır?

  4. 04İşe Hazırlık ve Gerçek Proje

    • Docker Temelleri· Temel

      'Benim bilgisayarımda çalışıyordu' bahanesini bitirmek. Junior backend'in Kubernetes bilmesine gerek yok ama Dockerfile yazabilmesi şarttır.

      Bilmen gerekenler

      • Konteyner ve İmaj farkı: Docker image nedir, container nasıl ayağa kalkar?
      • Dockerfile Yazmak: Multi-stage build ile hafif imaj üretmek, port expose etmek
      • Docker Compose: API servisini ve PostgreSQL veritabanını tek bir `docker compose up` ile ayağa kaldırmak

      Kaynaklar

      • Yerel Geliştirme Ortamı· Temel

        Bilgisayarına yerel Postgres kurmak yerine Docker ile tek tıkla veritabanı ayağa kaldırıp bağlamak.

    • Dokümantasyon (Swagger / OpenAPI)· Temel

      Dokümante edilmemiş bir API yok hükmündedir. Frontend geliştiriciye Postman koleksiyonu veya Swagger linki verebilmek.

      Kaynaklar

      • Sözleşme (API Contract)· İyi olur

        Request ve response şemalarını önceden belirleyip frontend ile aynı dilde konuşmak.

    • Canlıda Çalışan Gerçek API· Temel

      Todo App ya da klon projeleri bırak. Auth'u olan, ilişkisel PostgreSQL'e bağlı, Docker ile paketlenmiş ve canlı URL'i olan TEK BİR proje seni işe sokar.

      Bilmen gerekenler

      • Gerçek bir iş mantığı: Rezervasyon, e-ticaret sipariş akışı, biletleme veya finansal işlem API'si
      • PostgreSQL ile kurulmuş en az 4-5 ilişkili tablo (User, Product, Order, OrderItem)
      • Canlı Deployment: Render, Railway, Fly.io veya Hetzner/DigitalOcean VPS üzerinde çalışan canlı API linki
      • README: Mimari şeması, çevre değişkenleri tablosu, yerel çalıştırma adımları ve Swagger linki
      • Entegrasyon Testi· İyi olur

        Kritik uçlar için (Login, Sipariş Oluşturma) test veritabanıyla çalışan otomatik uçtan uca testler yazmak.

      • Mimarini Mülakatta Savunmak· Temel

        “Neden PostgreSQL seçtin?”, “Parolaları nasıl sakladın?”, “Index'i neden bu kolona attın?” sorularını rahatça cevaplamak.

  5. 05Sonradan Öğrenilebilecekler

    • Dağıtık Mimari ve Kuyruklar· Sonra

      Henüz 10 kullanıcısı olan bir projeyi 10 farklı mikroservise bölmek felakettir. Monolitik mimariyle başla; mikroservisleri iş yerinde gör.

      • Mikroservisler· Sonra

        Servisler arası iletişim (gRPC, HTTP), ağ gecikmesi ve veri tutarsızlığı problemleri. Junior geliştiricinin ilk işi değildir.

      • Kafka & RabbitMQ· Sonra

        Olay güdümlü (Event-Driven) mimariler ve asenkron mesaj kuyrukları. Şirkette ihtiyaç duyulduğunda 2 haftada kavranır.

      • Redis & Caching· Sonra

        Önbellek (cache invalidation) zor bir iştir. Erken optimizasyon yapma; önce veritabanı sorgunu ve index'ini optimize et.

    • İleri Düzey DevOps & Cloud· Sonra

      Sunucu ve küme yönetimi DevOps/Cloud mühendislerinin uzmanlık alanıdır. Backend geliştirici olarak Docker seviyesi başlangıç için yeterlidir.

      • Kubernetes (K8s)· Sonra

        Konteyner orkestrasyonu, pod yönetimi ve cluster bakımı. Junior'ın cluster kurması veya yönetmesi beklenemez.

      • AWS / GCP / Azure· Sonra

        VPC, IAM rolleri, Terraform, Kubernetes servisleri... Bunlar şirket bütçesiyle ve kıdemli ekip gözetiminde öğrenilir.

      • İleri CI/CD Pipeline· Sonra

        Otomatik canary deploy, blue-green deployment stratejileri ve karmaşık GitHub Actions iş akışları.