Yazılım Geliştirme Mesleği
Ülkemizdeki Agile uygulamaları, uygulanma oranı her ne kadar iyiye gitse de, kurumsal şirketler yapılarını, süreçlerini, stratejilerini değiştirmekte zorlandıklarından başarıyla sürdürülemeyebiliyor.
Ülkemiz yazılım sektöründeki başarı oranlarının Agile yazılım geliştirme yaklaşımlarının uygulanmasıyla, global durumda da olduğu gibi, artışa geçtiğini Agile Turkey Çeviklik Raporu’ndan biliyoruz. Bununla beraber Standish Grup’un 2015 yılında yayınladığı rapor da Waterfall süreçlerin başarı oranlarının, kapsam–zaman–bütçe göz önünde bulundurulduğunda %11’lere gerilediğini, Agile süreçlerin başarı oranlarının ise bunun 4 katı kadar iyi oranlarında olduğunu söylüyor, yani %40’lar. Burada Agile projelerin başarı oranlarının kapsam–zaman–bütçe değişkenleri ile değil, üretilen değerle ölçülmesi gerektiğinin altını çizmekte fayda var. Buna rağmen tablo Agile yönünde iyi görünüyor.
IT birimlerinin iyileşmesinin olmazsa olmazlarından yazılım süreçlerini iyileştirmenin başarıyı arttırdığını biliyoruz ancak başarıyı sürekli hale getirebilmek de başarıyı arttırmak kadar önemli ve gerekli. Bunun için içinde bulunduğumuz sektörün gerçeklerinin bilinmesi gerekiyor. Bu gerçeklerden bir tanesi de yazılım geliştirmenin bir meslek olarak ele alınması gerekliliği.
Çoğu şirkette yazılım geliştirme mesleği ‘kariyere bir başlangıç’ olarak görülüyor. Hatta üniversite etkinliklerinde ögrencilere kariyer hedefleri sorulduğunda genelde alınan cevap ‘üst düzey yönetici olmak’ oluyor. Bunun önemli 2 nedeninin toplumumuzda insan yöneticisi olmanın konumu ve alınan maaştan/statüden dolayı promote edilmesi olduğunu düşünüyorum. Oysa proje/süreç yönetmek başka bir iş, yazılım geliştirmek başka bir iş. Yazılım geliştirmek/üretmek derin bir odaklanma gerektirirken, yönetim birçok işin aynı anda yönetilebilmesi, yani multi-tasking yetkinliği gerektiriyor. Kaldı ki batıda proje yöneticiliği ve yazılım geliştirme genelde farklı lisans programları olarak karşımıza çıkıyor. Ülkemizde bahsettiğimiz senior yazılımcılar, genelde yönetici olarak kariyerlerine devam etmek zorunda bırakılıyorlar (Genelde de bu durumu “işin mutfağından gelmek” olarak tanımlıyoruz. Böylece kimse kimseyi kandıramıyor! Tabiki bunun bir -work around- olduğunun herkes farkındadır. Bu yazının konusu olmamakla beraber problemin kök nedeni farklı). Bu durum şirketin yönetici edinmek için ya da know-how kaybını önlemek için iyi bir developer’ını kaybetmesi ve kötü bir yönetici kazanması ile sonuçlanabiliyor.
Şirketlerin maaş ve ödül politikası yukarıda bahsedilen durumu destekliyor. Genelde çizilen yol, yazılımcı-ara kademe-yönetici şeklinde gelişiyor. Batıya bakıldığında ise durum biraz daha farklı. 50-60 yaşlarında kişilerin test yaptığını, yazılım geliştirdiğini görüyoruz. “Bu yaşta hala yazılım mı yapılır?” gibi bir soru akıllara gelebilir. Nasıl ki doktor, avukat 50-60 yaşında işinin ustası oluyor, müdür ya da yönetici olmuyorsa yazılım uzmanı da ustalaşmalı. Bir doktorun öncelikle insan vücudunu gayet iyi öğrenmesi ve sonrasında bir alanda uzmanlaşması gibi, aynı sıra ile olmasa da biz yazılım profesyoneli de, genel olarak yazılımın ne olduğu bilmeli ve sonrasında uzmanlık alanına göre bilgisini derinleştirmeli. Bu noktada T-shaped professional/innovator olabilmek de bireysel çeviklik için oldukça değerli. Özellikle de şirketlerin yaşam ömrünün oldukça kısalmakta olduğu günümüz değişken ekonomisi göz önünde bulundurulduğunda…
DEVELOPER

ANALYST

Gartner 10 sene sonra bugünkü şirketlerin 3’te 1’inin hayatta olmasını, Standart&Poors ise şirketlerin ortalama yaşam ömrünün 2020’de 6 seneye düşmesini bekliyor. Yani bu yeni ekonomi, çok spesifik bir alanda uzunca yıllar çalışmış kişiler yerine, bir alanda uzmanlaşmış ancak olabildiğince çok proje ve ürün üzerinde farklı alanlarda yetkinlikler kazanmış, iyi takım oyuncularını arıyor. Peki bu durum bir yazılım geliştirme uzmanı için ne anlama geliyor? Bana göre çalıştığımız şirketin dinamiklerinin hızla değişebileceği ve bireyin artık sadece şirkete değil, pazarda hızla uyum sağlayabilecek özellikler kazanmasının gerekli olması demek oluyor. Özellikle Agile takımlarda yazılım mesleği içerisindeki farklı yetkinlikleri kazanmış bu bireylere, ”T-shaped professionals/T-şeklinde uzmanlar”a ihtiyaç duyuyoruz. Bu bireylerin T-şeklinde uzmanlığa yönelmesini hem takım oyunun iyileşmesi, hem de bireyin yazılım mesleğinde yetkinliklerini çeşitlendirmesi açısından oldukça faydalı görüyoruz. Yoksa yine Waterfall mind-set’ten, Taylorist yaklaşımdan çıkamamış, birlikte sahiplenme yaratamamış olabiliyoruz.
Bu noktada şiretkerin de yapılarını, ödül politikalarını, kariyer yollarını değiştirmeleri, şirkete değer yaratan çalışanın maaşı/statüsünün şirketteki ünvanına göre değil, şirkete kattığı değere göre güncellenebilir esneklikte olabilmesi önem kazanıyor. Yani gerektiğinde bir developer bir proje yöneticisinden ya da bir yöneticiden yüksek maaş alabilmelidir ki yazılım ustası hala yazılım yapıyor olabilsin ve buna teşvik edilebilsin.
Sonuç olarak, yazılımı meslek haline getirmek ve geliştirmek, başarı oranlarını, sürekli iyileştirmeyi ve Türkiye’de olmaz diye düşündüğümüz teknolojilerin/projelerin geliştirilme olasılığını artırabilmemiz için önemli bir adım olacaktır. Bunun için de şirketlerin maaş ve ödül politikalarından, lisans programlarına kadar değişim gerekliliğini hissettirmek gerekiyor.
Yorumlar