Uzmanlık

Yazılım Mimarisi ve Teknik Liderlik

İyi yazılım, doğru mimari kararlar ve onu taşıyabilecek bir ekiple çıkar. Yirmi yılı aşkın süredir yazılım geliştiriyorum; on yılı aşkın süredir ekiplere teknik liderlik yapıyorum. CTO olarak kurumsal ürünlerin mimarisini kurdum, ISO/IEC 27001 belgelendirme sürecini yürüttüm ve geliştirme organizasyonunu yönettim.

Yazılım mimarisi ve teknik liderlik nedir?

Yazılım mimarisi; sistemin parçalarını, bu parçaların birbiriyle nasıl konuştuğunu ve hangi kararların sonradan değiştirilmesinin pahalı olduğunu tanımlar. Teknik liderlik ise bu kararların bir ekiple, sürdürülebilir bir ritimde hayata geçirilmesidir. İkisi ayrı düşünüldüğünde ortaya ya çalışmayan bir plan ya da yönsüz bir ekip çıkar.

Ne iş yaparım?

  • Mimari inceleme. Mevcut sistemin güçlü ve zayıf yanlarını, büyümeyi engelleyen kararları ve acil riskleri çıkarırım.
  • Teknik yol haritası. Neyin şimdi, neyin sonra yapılacağını; maliyet, risk ve iş etkisine göre sıralarım.
  • Ekip yapısı. Roller, sorumluluklar, kod inceleme akışı, teslim ritmi ve dokümantasyon düzeni kurarım.
  • CTO danışmanlığı. Kendi CTO'su olmayan veya teknoloji kararlarında dış göze ihtiyaç duyan şirketlere geçici teknik liderlik.
  • Teknik due diligence. Yatırım, satın alma veya ortaklık öncesinde teknoloji ve ekibin gerçek durumunu değerlendiririm.
  • Güvenlik ve süreç. ISO/IEC 27001 gibi yönetim sistemleri, erişim kontrolü ve değişiklik yönetimi.

Mimari kararlarda baktığım başlıklar

  • Monolit mi, servisler mi? Ekip büyüklüğü ve dağıtım ihtiyacı netleşmeden servis mimarisine geçmek, çoğu projede maliyeti artırır.
  • Veri modeli ve sahipliği. Hangi veri nerede doğar, kim günceller, kim okur? Sonradan düzeltilmesi en pahalı alan burasıdır.
  • Entegrasyon sınırları. Dış sistemlerle konuşan katmanların hata, tekrar ve yetki davranışı.
  • Güvenlik. Kimlik, yetki, kişisel veri, günlük ve yedekleme; sonradan eklenen güvenlik genellikle yarım kalır.
  • Gözlemlenebilirlik. Sistem çalışıyor mu, nerede yavaşlıyor, hata nerede başlıyor?

Teknik liderlik

Ekip yönetimini masa başı bir rol olarak görmüyorum. Mimari kararların içinde dururum, kod okurum, gerektiğinde yazarım. İyi bir teknik liderin işi, ekibin önündeki belirsizliği azaltmak ve kararların neden alındığını görünür kılmaktır.

  • İşe alım ve teknik değerlendirme.
  • Kod inceleme ve ortak standartlar.
  • Gerçekçi teslim ritmi; sürekli "yarın bitecek" demeden.
  • Dokümantasyon ve devir edilebilirlik.
  • Teknik borcun görünür ve önceliklendirilmiş olması.

Deneyimim

Açık Deniz Bilişim'de CTO olarak kurumsal B2B ürünlerin mimarisini ve geliştirme organizasyonunu yönettim: ERP ve CRM entegrasyonları, uçtan uca şifreli iletişim, güvenli dosya saklama ve FMCG saha ekipleri için mobil çözümler.

Aynı dönemde şirketin ISO/IEC 27001 bilgi güvenliği yönetim sistemini kurup belgelendirmeye kadar yürüttüm. Bu deneyim, güvenlik ve süreç konularını teorik değil, denetimden geçmiş biçimde ele almamı sağlıyor.

E-Veri Bilişim'de e-ticaret, mobil ve web uygulamaları geliştiren ekibi yönettim; Turkcell'de müşteri hizmetleri platformunun ekibinde teknik liderlik yaptım.

Aşamalı çalışma

İşi baştan büyük bir teslime bağlamak yerine aşamalara bölüyorum. Her aşamanın görünür bir çıktısı, kabul kriteri ve ödemesi var. Bu yöntem hem bütçeyi hem de beklentiyi korur. Ayrıntısı: iş neden aşama aşama yapılmalı.

Kimler için?

  • Hızlı büyüyen ve teknik kararları tek kişiye bağlı kalmadan kurmak isteyen startuplar.
  • Mevcut CTO'suna dış göz ve mimari denetim arayan şirketler.
  • Dijital ürününü yeniden kurgulamak isteyen kurumsal ekipler.
  • Teknoloji tarafını devralacak bir ortak arayan yatırımcılar.

Sık sorulan sorular

CTO danışmanlığı nedir?

Şirketin teknoloji yönünü geçici olarak üstlenmek veya mevcut CTO'ya dış destek vermektir. Mimari kararlar, ekip yapısı, tedarikçi seçimi, teknik bütçe ve teslim planlaması bu kapsamdadır.

Mimari inceleme nasıl yapılır?

Kod tabanı, dağıtım altyapısı, veri modeli, entegrasyonlar ve ekip akışları incelenir. Ardından riskler ve fırsatlar önceliklendirilmiş bir rapor olarak sunulur; uygulama istenirse aşamalı bir planla ilerlenir.

Ne kadar sürer?

Tek seferlik bir mimari inceleme genellikle 1-2 hafta sürer. Sürekli danışmanlık ise aylık bir ritimde, ihtiyaca göre haftalık birkaç saat veya gün şeklinde planlanır.

Ekibimize geçici liderlik yapar mısınız?

Evet. Mevcut ekibin ritmini bozmadan teknik liderlik, kod inceleme ve teslim planlaması yapabilirim. Kalıcı bir CTO aranıyorsa işe alım sürecinde de destek veririm.

ISO 27001 konusunda destek veriyor musunuz?

ISO/IEC 27001:2013 bilgi güvenliği yönetim sistemini bir şirkette kurup belgelendirmeye kadar yürüttüm. Bugün bu deneyimi, süreç ve güvenlik tasarımı konusunda danışmanlık olarak kullanıyorum.

Hangi büyüklükteki ekiplerle çalışıyorsunuz?

Küçük ürün ekiplerinden (3-5 kişi) kurumsal geliştirme organizasyonlarına kadar farklı ölçeklerde çalıştım. Önemli olan ekip sayısı değil, kararların netliği ve teslim disiplinidir.