Yazılım Mimari Kimdir?

Bana gelen bir soru üzerine paylaşmak istedim. “Yazılım Mimarı” diyebileceğimiz bir kişide benim tamamen subjektif olarak arayacağım kriterler şunlar olacaktır:

  • Birden fazla dilde geliştirme yapabilmek
  • Mobil, masa üstü, Back-End, Front-End gibi konularda (hepsinde ultra-uzman olmasa da) geliştirme yapabilmek
  • Git gibi versiyonlama araçlarını etkin kullanabilmek / yönetebilmek
  • Endüstrideki RESTFul, Docker, Blockchain, Cloud, No-SQL, vb paradigmaları takip etmek, (hepsinde ultra-uzman olmasa da) teknik tasarıma dahil edebilecek kadar deneme-yanılma yapmış olmak
  • Verilen ihtiyacı kodlayan kişi olmaktan ziyade, uzun vadede gelebilecek değişiklikleri öngörüp esnek ve tak-çıkar şekilde mimari çıkarabiliyor olmak
  • Çoklu Front-End, ölçeklenebilir Back-End, API, Middleware, Loglama, bilgilendirme, beklenmedik hataları yönetme, güvenlik gibi farklı bileşenleri düşünerek tasarım çıkarabilme
  • Bir ihtiyaca karşılık birden fazla alternatif mimari ve teknoloji sunabiliyor olmak 
  • Design Pattern ve Object Oriented’a hakim olmak elbette, Anti-Pattern’lerin farkında olmak
  • KISS, YAGNI, DRY, vb yazılım prensiplerine hakim olmak
  • Birden fazla ürün veya projede Coder olarak değil, mimar olarak görev almış olmak – yani çıkardığın mimari üzerine başka kişilerin geliştirme yapmış olması
  • Mimarisini yaptığın ürün / projelerin zamana karşı test edilmiş ve başarılı olmuş olması

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s