Meetup'taki ilk soru: yapay zekâ yazılımcılığı bitirdi mi?
Yapay zekâ kodu klavyede elle yazmayı bitirdi, yazılımcıyı değil. Biten ne, kalan ne ve bu yıl mezun olan biri daralan kapıdan nasıl girer.
Kısaca
Yapay zekâ kodu klavyede elle yazmayı bitirdi, yazılımcıyı değil; değer artık doğru sistemi tarif etmekte, alan bilgisinde ve sorumluluğu üstlenmekte, yeni mezun için kapı dar ama içeri girenin değeri yüksek.
Küçük bir geliştirici meetup’ında ilk soru, salondaki herkesin aklından geçen soruydu. Cevabım ne evet ne hayırdı: yapay zekâ kodu klavyede elle yazmayı bitirdi, yazılımcıyı değil. Farkı en iyi, yarım saatte yazdırılan bir ödeme sistemi gösteriyor.
O akşam gelen soruların hepsi aynı kaygının etrafında döndü: yıllardır öğrendiğimiz şeyin bir değeri kalacak mı? Salonda kısa cevaplar verdim. Bu yazıda o cevapları, orada anlatmaya vaktim olmayan örneklerle bir araya topluyorum.
Kısaca: yapay zekânın devraldığı şey klavye. Kalan iş; doğru sistemi tarif etmek, alanı tanımak ve sonucun sorumluluğunu üstlenmek. Sektör daraldı, bunu saklamayacağım. Kapı dar, ama içeri girene daha çok değer veriliyor. Bu yıl mezun olduysanız yazının sonunda nereden girebileceğinize dair somut bir liste var.
Yapay zekâ yazılımcılığı bitirdi mi?
Geçen yıl “bitirmedi” demiştim; daha kesin söyleyeyim: bitirdiği şey klavye.
Cevap, yazılımcılığı nasıl tanımladığınıza göre değişiyor. Yazılımcı dediğinizde aklınıza kodu satır satır, klavyede elle yazan biri geliyorsa cevabım evet. Benim gözlemimde bu kırılma yaklaşık 9-10 ay önce yaşandı. Bugün kendi işimde kodun büyük kısmını elle yazmıyorum; tarif ediyorum, okuyorum, düzeltiyorum. Klavyede geçen saatlerim, ne istediğimi netleştirmeye ve çıkan şeyi okumaya kaydı.
Yazılımcı dediğinizde aklınıza bir problemin çözümü için gereksinimi ve yol haritasını çıkaran kişi geliyorsa cevabım hayır. Yapay zekâ henüz o seviyede değil. Bu işte onun rolü, işi inanılmaz hızlandıran bir araç olmak: ne yapılacağına karar verdiğiniz anda, yapılmasını saatlerden dakikalara indiriyor. Neyin yapılacağına karar vermek ise hâlâ sizde.
Şunu da dürüstçe söylemem gerekiyor: son bir yılda sektörün daraldığını görüyorum. Çevremdeki ekipler küçülüyor, ayrılanın yerine çoğu zaman kimse alınmıyor, junior ilanları azaldı. Bunu bir istatistiğe dayanarak değil, kendi çevremde gördüklerime bakarak söylüyorum; ama gördüğüm tablo tutarlı.
Yani biten meslek değil, mesleğin en görünür el becerisi.
Şirketler neden hâlâ yazılımcı çalıştırıyor?
Klavyeden kalkan işin nereye gittiğini, yarım saatte yazdırılan o ödeme sistemi gösteriyor.
Yapay zekâ ile sitenize ödeme sistemi yazdırmak 1-2 prompt ve yarım saatlik çalışma sürer. Ödeme sağlayıcısının SDK’sı bağlanır, ödeme formu çıkar, test kartıyla ilk ödeme başarılı döner. Demo çalışır. Ortaya çıkan şeye ödeme sistemi denir mi?
Benim cevabım: henüz değil. Ödeme sistemi, mutlu yolun çalıştığı değil, mutsuz yolların da öngörüldüğü sistemdir. Yarım saatlik sürümde genellikle şunlar eksik kalıyor:
- Idempotency. Kullanıcı butona iki kez basar ya da ağ isteği tekrarlanır; aynı ödeme iki kez çekilir.
- Webhook sırası ve tekrarı. Sağlayıcı bildirimleri sırasız ve birden fazla kez gönderebilir. İade bildirimi onaydan önce gelirse ya da onay iki kez işlenirse sipariş durumu bozulur.
- 3DS timeout. Kullanıcı banka doğrulama ekranında bekler, oturum zaman aşımına uğrar. Sipariş ödendi mi ödenmedi mi, kimse bilmez; sipariş askıda kalır.
- Declined kartlar. Reddedilen kart, yetersiz bakiye, sahtecilik şüphesi. Her biri kullanıcıya farklı bir mesaj, sisteme farklı bir davranış gerektirir.
- Kısmi iade. Üç ürünlü bir siparişte tek ürün iade edilir. Tutar, vergi ve kargo payı doğru hesaplanmazsa muhasebe kayıtları birbirini tutmaz.
- Reconciliation. Gün sonunda sizin kayıtlarınız ile sağlayıcının raporu karşılaştırılır. Aradaki fark kuruş da olsa birinin onu açıklaması gerekir.
Bunların hiçbiri yapay zekânın yazamayacağı şeyler değil. Sorarsanız yazar, çoğu zaman da iyi yazar. Mesele, hangi soruyu soracağınızı bilmek. O soruları bilmenin iki kaynağı var: tecrübe ve domain bilgisi. Webhook’un iki kez geldiği bir geceyi yaşamadıysanız onu prompt’a eklemek aklınıza gelmeyebilir. Muhasebenin günü nasıl kapattığını bilmiyorsanız reconciliation’ı hiç sormazsınız.
Burada eleştirdiğim şey bir kişi ya da bir seviye değil, bir davranış: çıktıyı okumadan merge etmek. Junior olmak bir kusur değil; herkes bir yerden başlıyor. Kusur, üretilen kodu anlamadan üretime göndermek ve bunu hız sanmak.
Üçüncü sebep, bence en ağır olanı: sorumluluk. Gece 3’te çift çekim alarmı çaldığında birinin uyanıp bakması gerekiyor. Yanlış hesaba giden bir iadenin geri alınması için birinin bankayla konuşması gerekiyor. Denetçi “bu para neden bu hesaba gitti?” diye sorduğunda birinin cevap vermesi gerekiyor. “Yapay zekâ böyle yazdı” bu soruların hiçbirinin cevabı değil.
Kendi tutumumu tek cümleyle özetleyebilirim: kodu yapay zekâya yazdırıyorum ama sorumlusu benim ve ben olmaya devam edeceğim. Şirketler modeli satın alıyor; hesabını verecek kişiyi ise işe alıyor.
Vasıfsız biri yapay zekâyla aynı işi yapabilir mi?
Hesap verecek birine ne kadar ihtiyaç olduğu, işin riskine bağlı. Bu yüzden bu sorunun cevabı da tek değil.
Bazı işlerde evet. Yazılım geçmişi olmayan biri bugün yapay zekâyla kişisel bir site, ekibi için küçük bir araç ya da bir fikri sınayan bir prototip çıkarabiliyor. Bunu küçümsemiyorum; bu araçların en iyi yanlarından biri tam olarak bu. Ayrımı, iş bozulduğunda ne olacağı belirliyor:
| Risk | Örnek | Bozulursa |
|---|---|---|
| Düşük | Kişisel site, ekip içi araç, prototip | Geri alınır; kayıp birkaç saatlik zamandır |
| Yüksek | Para hareketi, sağlık ya da kişisel veri, 100 milyon dolarlık bir veri merkezinin altyapısı | Para, veri ya da güven kaybedilir; biri hesap verir |
Düşük risk tarafında vasıfsız biri gerçekten aynı işi yapabiliyor. Yüksek risk tarafında ise asıl iş kodu üretmek değil, üretilen kodun neyi bozabileceğini bilmek. 100 milyon dolarlık bir veri merkezinin altyapısını, ne yaptığını açıklayamayan birine teslim edecek bir şirket düşünemiyorum; kod ne kadar hızlı yazılmış olursa olsun. Bu ayrımı vibe coding ile AI destekli geliştirme arasındaki farkı anlattığım yazıda daha ayrıntılı ele almıştım.
Risk büyüdükçe, çıktıyı anlayan ve sonucunu üstlenen kişiye duyulan ihtiyaç da büyüyor.
Yapay zekâ bu sektör için tehlikeli mi?
Sorumluluğu taşıyacak birine ihtiyaç sürüyor; asıl sorun, o kişiyi yetiştiren kapının daralması.
Meetup’ta bu soruya verdiğim cevap şuydu: biz, kodu elle yazarak öğrenen yazılımcıların son neferi olabiliriz. Kodu satır satır yazarak, hata ayıklayarak, aynı hatayı üç kez yaparak öğrenen son kuşak. Az olanın kıymeti artar; bu açıdan bakınca bizim için kötü bir haber değil.
Ama sektör için tehlike tam burada başlıyor. Asıl tehlike yapay zekânın kod yazması değil, ne yaptığını bilen yazılımcının yetişmemesi. Ekipler junior almadığında zanaatı öğrenecek yer de azalıyor. Bugünün kıdemlileri, yıllar önce birilerinin onlara hata yapma alanı açtığı ekiplerde yetişti. O alan kapanırsa, on yıl sonra gece 3’teki o alarma bakacak kişi nereden çıkacak?
Bu tezin ardından yeni mezunlara “girin” demem çelişkili görünebilir. Bence çelişmiyor. Kapı daraldı; ama içeri girenin değeri, tam da bu yüzden yükseliyor.
Bu yıl mezun olduysanız nereden girmelisiniz?
Kapı daraldı ama kapanmadı; içeri girene artık daha çok değer veriliyor. Soru, nereden gireceğiniz.
Traktör tarımı bitirmedi, çiftçiyi değiştirdi. Tarlada çalışan insan sayısı azaldı, kalanların işi değişti; makineyi yapan, onaran ve yöneten yeni meslekler doğdu. Yapay zekâ da yazılımda benzer bir şey yapıyor. Ama şunu saklamayayım: geçiş bedava değil. Traktör geldiğinde o geçişin bedelini en çok, tam o yıllarda işe başlamaya çalışanlar ödedi. Siz de o kuşaktasınız. Bunu bilerek hareket etmek, bilmeden beklemekten iyidir.
Benim önerim şu yönlere bakmanız:
- Zanaatı yapay zekâya yaptırmadan öğrenin. Yapay zekâyı kullanın, ama işin bir kısmını bilinçli olarak elle yapın: bir veri yapısını, bir hata ayıklamayı, bir sorgu planını. Okuyamadığınız kodu denetleyemezsiniz.
- Altyapı, GPU ve sistem. Modeller bir yerde çalışıyor; o yerin kurulması, ölçeklenmesi ve maliyetinin yönetilmesi büyüyen bir iş. Linux, ağ, container ve donanım bilgisi bu yüzden değer kazanıyor.
- MLOps, eval ve güvenilirlik. Bir modelin çıktısını ölçmek, gerilemeyi yakalamak, üretimde izlemek. Yapay zekâ kullanan her şirketin bu konuda bir cevabı olması gerekiyor ve o cevabı verebilecek insan az.
- Alan bilgisi + yazılım. Ödeme, sağlık, lojistik, enerji; herhangi bir alanı içeriden tanıyan bir yazılımcı, o alanın doğru sorularını sorabilir. Yukarıdaki ödeme listesi bunun örneği.
- Network. İlanların azaldığı bir dönemde kapılar çoğu zaman insanlar üzerinden açılıyor. Meetup’lara gidin, açık kaynağa katkı verin, öğrendiğinizi yazın. Sizi tanıyan birinin önerisi, ilanların göstermediği kapıyı açabilir.
Veri merkezleri ve enerji tarafında da yeni istihdam doğuyor; ama bunu yazılımcılığın yerine geçecek ana kapı olarak değil, yan bir yol olarak görüyorum. Yerel model çalıştırmak ile API kullanmak arasındaki farkı ve maliyetini ayrıca yazacağım.
Yaptırdığınız kodu açıklayabiliyor musunuz?
O akşam gelen soruların hepsi farklı kapılardan aynı yere çıkıyor. Yapay zekâ kodu yazıyor; doğru sistemi tarif etmek, alanı tanımak ve sonucu üstlenmek hâlâ insanın işi. Bu üçü olmadan yazdırılan kod, bir gün başka birinin gece 3’teki alarmı oluyor.
Son yaptırdığınız işi açın ve şunu sorun: bu kod üretimde bozulursa nedenini açıklayabilir miyim? Cevap hayırsa öğrenmeniz gereken yer tam orası.
Meetup’ta sorulmamış bir sorunuz varsa Sor Bakalım sayfasından bana iletebilirsiniz.
Yorumlar
Yorum yapmak için GitHub hesabınızla giriş yapmanız yeterli. Yorumlar GitHub Discussions üzerinde saklanır.