Yapay zeka kod yazmayı ucuzlattı; çoğu ekip hâlâ aynı ritüelle çalışıyor: backlog, sprint, PR, inceleme. Fark şu: PR'lar artık daha hızlı geliyor ama "ne yapılacağı" belirsizse hız sadece yanlış yönde ivme demek.
Son aylarda gözlemlediğim kayma net: mühendislik "yayına hazır" derken ürün "henüz tanımlamadım" diyor. Tarihsel olarak kod yazma yetişmezdi; şimdi kod yazma spesifikasyonu (spec — ne yapılacağının yazılı tanımı) bekliyor. Yapay zeka belirsizliği çözmez — yazar.
İnsan geliştirici boşlukları bağlamdan doldurur: Slack'te sorar, varsayım yapar, iterasyonla düzeltir. Yapay zeka yazılanı kelimesi kelimesine alır. Eksik kabul kriterleri (acceptance criteria — "bitti" demek için ne gerekir?) yanlış kenar durumlara dönüşür; incelemede yakalanır — yakalanmazsa canlı ortamda patlar.
"Kupon uygula" maddesi örneği: kuponlar üst üste kullanılabilir mi, sepet minimumu var mı, iptalde iade ne olur? İnsan sorar; yapay zeka varsayılanlarla kod yazar; test ekibi üç gün kaybeder.
Given/When/Then (verildiğinde/şu olunca/o zaman) moda değil ama işe yarıyor; özellikle e-ticarette stok, tekrarlanabilirlik, ödeme durumu, e-posta yan etkileri için. API sözleşmesi önce — OpenAPI veya minimal endpoint tablosu — yapay zekaya "şu veri yapısı (DTO), şu hata kodları" vermek sonradan refactor'dan ucuz. Figma ekranı spec değil; durum geçişleri, boş liste, hata mesajı metni yazılı olmalı.
Ürün yöneticisi prototipleyebilir, tasarımcı commit atabilir — sorun değil. Mühendis zamanının daha büyük payı sistem tanımı ve iş kuralları yazımına kayıyor. Kod satırı KPI değil; doğru davranışın ilk seferde merge edilmesi KPI. Her özellikte "bitti" tanımı: test + ölçüm + geri alma planı; belirsiz maddeler backlog'da "spec gerekli" kalır, sprint'e alınmaz.
Yapay zeka implementasyonu hızlandırdı; net düşünce hâlâ insana ait. En pahalı hata yanlış kod değil — yanlış problem tanımı.
Özet: Hız arttı, belirsizlik pahalılaştı. Spec yazılmadan sprint'e alma; API sözleşmesi ve kabul kriterleri önce.
