04 Kasım 2006

Yazılımda Konu Uzmanlığı

Yazılımı profosyonel meslek olarak seçenlerin veya seçmeyi düşünenlerin yaşadığı en büyük sıkıntı yeniliklere adapte olamamak denilebilir. Her yıl değişen yeni versiyonlarla birlikte gelen,değişen syntax lara ayak uydurmak,değişen veri tiplerine alışmak gibi sıkıntılara bir de diğer geliştirme ortamlarını takip ederek zaman içerisinde onların da kullanılabileceği ve geçiş yapılabileceği ihtimalini düşünerek değerlendirmek gerekmektedir. Aslında bu bahsettiğimiz sıkıntılar sadece kesin olarak yazılım uzmanlığını seçenler için geçerli. Eğer bu konu da tam olarak net değilse "hangi birine yetişeceğiz" tarzında veryansınlar başlamaktadır. Aslında önce bu konuyu aşmak gerekir. Daha sonra da uzmanlaşılacak bir platform belirlenmesi gerekmektedir. Bu kararı verirken platformun kullanım yüzdesi, gelişim tahmini, geçişin kolaylığı, çalışanların ne kadar kazandıkları gibi kriterleri yaklaşık olarak değerlendirdikten sonra kesinlikle birine odaklanmak gerekmektedir. İşe önce tüm platformlarda aynı derecede uzman olunamayacağı gerçeğinin kabul edilmesiyle başlanmalıdır. Bence tüm teknolojilerin bilinmesi göründüğü kadar büyük bir fayda sağlamayacaktır. Tabii ki platform uzmanlığı diğer teknolojilerin yok sayılması anlamına gelmez. Detaylara inmeden farkları bilmek, artıları ve eksileri bilmek güzel bir durum olacaktır. Platform seçimi kararı aslında bundan sonra çalışılacak işleri, yazılım geliştirirken yaşanılan zorluğu, alınan keyfi, kazanılan maaşı, bir kaç yıl sonraki kariyeri, hobi olarak hangi konuların takip edileceği gibi konuları belirleyecektir. Aslında tüm bunların derecelerini kişinin konusunda ne kadar uzman olduğu etkiler. Uzmanlık da aslında kişinin teknik altyapısı, yeteneği, hevesi, aldığı eğitimler, doğru işlerle ilgilenme oranı ve uzmanlığını pazarlayabilme yeteneğiyle doğru orantılıdır. Aslında daha da önemlisi bu uzmanlığı değişen şartlarda koruyabilmektir. Bir diğer gereksinim database programlama, database yönetimi, uml, sistem analizi, test standartları, dökümantasyon standartları,iş analizi gibi yan konularda uzmanlıktır. Aslında ideal yazılım süreçlerinde tüm bunlar yazılım geliştirici gibi ayrı bir pozisyon ve uzmanlık gerektirmektedir. İdeal şartların genelde uygulanamadığı ülkemizde bunların bir kısmı, bazen hepsi yazılım geliştiriciden beklenmektedir. Zorunluluk olarak yapılan bu konular aslında birer fırsat olarak görülebilir. Yatkın olunulan ve daha çok sevilen konunun uzmanlığı profesyonel olarak bu konudan para kazanma şekline dönüşebilir. Ben de belli bir deneyim süresinden sonra bu tarz uzmanlıklara kayıp, daha az kod yazma pozisyonlarının tercih edilmesini öneriyorum.

Bir kaç madde ile özetleyecek olursak;

* Uzmanlık alanını belirlemek. Odaklanmak. Konusunda en iyi olmak.
* Uzmanlık alanı olamayn diğer teknolojileri takip etmek.
* Esnek olmak. Yeniliğe açık olmak.
* Diğer uzmanların neler yaptığını anlamaya çalışmak.
* Tüm gelişimi uzun ve kısa vadeli ayrı planlarla belirleyip, uygulamasını kontrol etmek.

0 yorum: