← Tüm yazılar

20 yıllık yazılım geliştirmenin aslında ne değiştirdiği

Artık 20 yılı aşkın süredir yazılım geliştiriyorum — bankacılık, enerji, sigorta ve şimdi İnsan Kankları teknolojilerinde. Başlangıçta inanmadığım ama şimdi inandığım birkaç şey var.

Sıkıcı altyapı işi işten bir sapma değil, işin ta kendisi

İlk zamanlar Linux yönetimi, dağıtım hatları ve BT yönetimi gibi şeyleri "gerçek" mühendisliğin önüne geçen bir yük olarak görüyordum. Edindiğim deyelimler bu düşünceyi hızla düzeltiyor. Gerçekten geri yüklenebilen yedeklemeler, gerçekten doğru erişim kontrolü, yedi manuel adımı hatırlamanızı gerektirmeyen bir dağıtım süreci gibi sıradan işler — ilginç işin güvenilir bir şekilde gerçekleşmesini sağlayan şey bu.

Mimari kararlar beklediğinizden daha hızlı katlanıyor

Bir platformun birinci yılında, teslim tarihi baskısı altında alınan bir kestirme yol, beşinci yılında da hâlâ görünür oluyor — genellikle görünüşte basit bir özelliğin olması gerekenden üç kat uzun sürmesinin sebebi olarak. Şu anki Projenin yeniden yazımında Clean Architecture ve DDD'ye bu kadar ağırlık vermemin sebeplerinden biri de bu — moda olduğu için değil, alternatifin bedelini artık birden fazla kez şahsen ödediğim için.

Bir mühendis olmak, ödünleşimleri düşünme şeklinizi değiştiriyor

Kötü bir kararın sonuçlarını devredebileceğiniz kimse yok. Bu durum beni haklı çıkaramayacağım karmaşıklığı eklemek konusunda daha temkinli, temel bir parçayı ilk seferde doğru yapmak için fazladan bir gün harcamaya karşı ise daha istekli hale getirdi.

Teknoloji sürekli değişiyor — ne zaman temkinli, ne zaman hızlı hareket edileceğine dair muhakeme ise çok daha yavaş değişiyor.