Kim Senior Programcıdır?

Haz 21st, 2013 | Yazar: Özcan Acar | Kategori: Yazılım Hakkında Genel Düşünceler

İlk bakışta bir programcıyı senior yapan teknik bilgisidir. Yüksek seviyede teknik bilgiye sahip olmak için çok tecrübe sahibi olmak gerekir. Yüksek seviyede teknik bilgiye sahip bir şahsın senior olarak algılandığını düşünebiliriz. Lakin teknik bilgi senior olmanın sadece bir boyutudur. Senior mozaiğinin tamamlanması için birçok parçanın bir araya gelmesi gerekir.

Kendisini senior olarak tanımlayan birçok programcı gördüm. Benim açımdan bu programcıların çok büyük bir kısmı senior değil. Şu sebeplerden dolayı:

  • Üç ya da beş sene programcı olarak çalıştıktan sonra kıdem alma zorunluluğu varmış gibi kendine durup, dururken senior ünvanını uygun görürler. Böyle programcılar senior ünvanından en uzak olan programcı adaylarıdır.
  • Bir ya da birden fazla çatıyı (framework) iyi kullanabildiklerinden dolayı senior olduklarını düşünürler. Bu tip programcılar senior olma yolunda değil, daha ziyada uzman olma yolunda ilerlemektedirler.
  • Yıllarca programcı olarak çalışmış olmalarına rağmen ekibin parçası olmaktan acizdirler. Kendi dünyalarında yaşayıp, ekipten kopuk olarak çalışmaya devam ederler. İletişim kurmakta zorluk çekerler.
  • Çoğunun müşteriyle iletişimi yoktur ya da çok azdır. Müşterinin tam olarak ne istediğini bilmeden kod yazarlar. Müşterinin ne istediğini bilmediklerinden dolayı nerede durmaları gerektigini bilmezler. Onu da ekleyelim, bu da olsun derken gereksiz zaman ve para kaybına neden olan kod yazarlar.
  • Kitap okuyup, kendilerini devamlı geliştirmezler. Geçen yılların onları otomatik olarak senior yaptığını düşünürler. İlk sene bir şeyler öğrentikten sonra dokuz sene aynı şeyleri tekrar etmeyi on senelik tecrübe sahibi olmak olarak algılarlar. Bu onların açısından senior olmak için yeterlidir.
  • Test yazmayı zaman kaybı olarak görürler. Başlarını en çok ağrıtan durumun bu olduğunu anlamakta zorlanırlar.
  • Teknik olarak belki çok iyidirler ama detaylarda kaybolduklarından veya lüzumsuz şeylerle uğraşmayı sevdiklerinden gereğinden fazla kod yazarlar. Bu hem işverene zarar verir hem de müşteriyi daha çok memnun edecek bir netice ortaya koymaz.

Bu listeyi sayfalar dolduracak sekilde genişletmek zor değil. Benim senior olabilmek için iki kriterim var. Yukarıda saydığım durumları zaman içinde aşıp, senior olmak zor değil. Lakin aşağıda sıraladığım iki kriter olmadan senior olmak hemen hemen imkansız. Bu kriterler:

  • Programcının müşteri ile olan iletişimde ne kadar başarılı olduğu.
  • Programcının başarıyla kaç proje tamamladığı.

Program yazmak çok maliyetli bir iş. Yazılan her satır kod para demek. Eğer bu satır gereksiz bir satır ise, o zaman bu para pencereden dışarıya atılmış para demektir. Programcı yazdığı her satırın gerekli olup, olmadığını nasıl anlayabilir? Müşteriye ne istediğini sorarak. Müşterinin ne istediğini anlamadan yazdığı kodun gerekliliğini bilemez. Müşteri ne istediğini tam olarak ifade eder ya da etmek zorundadır. Ben şunu istiyorum dediği zaman, programcının müşterinin şu olarak ifade ettiği şeyi koda dökmesi gerekir. Bundan fazlası zarardır, maddi kayıptır. Ne yazık ki kendisini senior olarak gören birçok programcı müşterinin ne istediğini anlamadan oturup, günlerce, haftalarca ya da aylarca program yazabiliyor. Müşterinin ne istediğini tam olarak anlamadan kod yazan, senior programcı olamaz, çünkü kendisini işverenine karşı sorumlu olarak gören bir programcının gönlü kendi yaptığı hatanın ya da keyfi çalışmalarının parasal zarar olarak işverenine yansımasına razı gelmez. Senior programcı bu dengeleri hep kafasında kendisiyle birlikte taşıyan programcıdır.

Başarıyla birçok projeyi tamamlayarak sınır koymanın, sadece gerekeni yapmanın, müşteriyi memnun etmenin, işvereni mutlu etmenin ne demek olduğunu bilmeyen programcı senior ünvanını hak etmez. Başarıyla tamamlanan her proje programcıyı senior olma yolunda ilerlerken pekiştirir, tecrübelendirir. Başarıyla bir proje tamamlamak demek, müşterinin isteklerini tatmin eden bir ürün ortaya koymak demektir. Bu başarıyı birkaç kere tatmadan gerçek anlamda senior olmak çok güçtür ya da imkansızdır.

Senior olmayı bazıları sadece bilgi küpü olmak ve daha fazla maaş almak olarak tanımlıyor demiştim geçenlerde attığım bir tweetde. Senior olmayı sadece bilgili olmak ve fazla maaş almak gibi iki zayıf sıfat ile tanımlamaya kalkmak gerçek senior programcılarin hakkını yemek olur. Bu iki şey gerçek senior programcılar için çok öncelikli olmayan şeylerdir. Onlar müşteriyi dinlemeyi, onun isteklerini tatmin etmeyi yeğlerler.


EOF (End Of Fun)
Özcan Acar

Share Button

Özcan Acar

Bilgisayar mühendisi olan Özcan Acar 1997 yılından beri programcı olarak çalışıyor.

KurumsalJava.com, SmartHomeProgrammer.com ve Mikrodevre.com adresleri altında blog yazıyor. Kurduğu BTSoru.com'da ona yazılımla ile ilgili sorularınızı yöneltebilirsiniz. Pratik Programcı Yayınları bünyesinde Pratik Spring, Pratik Agile, Pratik Git ve Design Patterns ismini taşıyan kitapları bulunmaktadır. 21.12.2009 tarihinde Java Champion olarak seçildi.
  • Share/Bookmark
11 yorum | 7.827 kez okundu |

1 Yıldız2 Yıldız3 Yıldız4 Yıldız5 Yıldız (3 değerlendirme, ortalama: 4.67, toplam oy 5)
Loading ... Loading ...
Tags:

11 YORUM “Kim Senior Programcıdır?”

  1. Onur diyor ki:

    Çok güzel bir yazı olmuş çok teşekkürler.

    Bu yazıyı sevenler;

    http://www.webteders.com/blog/detay/Senior-ve-Junior-Yazilimci/42
    http://altantanriverdi.com/junior-kime-denir/

    bunları da okumalı bence. :)

  2. Cevheri diyor ki:

    Yazıyı okurken Yunusun “ilim ilim bilmektir; ilim kendin bilmektir. Sen kendin Bilmezsen, Ya nice okumaktır” sözü aklıma geldi.
    Güzel Bir Çalışma olmuş. Tesbitleriniz Yerinde. Tebrikler.

  3. Hakan Müştak diyor ki:

    Süper bir yazı hocam. Anlayana :)

  4. Akif diyor ki:

    sırf bu kadar kriterle uğraşmamak için vazgeçtim :)

  5. Sercan Akmaz diyor ki:

    Çok güzel bir yazı olmuş teşekkürler.

    Sizin kadar tecrübeli olmadığımı bilsem de birkaç eleştiri yapmak isterim. Tabi ki bir Senior Programmer müşterinin ihtiyaçlarına uygun işverenin çıkarlarını koruyan bir yapıya sahip olmalıdır. Fakat uzmanlık alanı bu olmadığından bu konuda eksiklikleri olması gayet doğal.

    Eğer bir Senior Programmer yazılıma hakimiyeti olduğu kadar müşteri ve işveren tarafına hakim ise Danışman kimliği ile anılması doğru olacaktır.

    Sektörde müşteriyle konuşmayı bilip kod yazmayı bilmeyen onlarca Senior Programmer da mevcut malesef ki.

  6. Ersun PEHLİVAN diyor ki:

    Gerçekten çok güzel bir yazı olmuş, ellerinize sağlık

    Programcının müşteri ile olan iletişimde ne kadar başarılı olduğu.
    Programcının başarıyla kaç proje tamamladığı.

    kriterlerine sizle aynı fikirdeyim, Maalesef her zaman karşılaştığım bir durum , müşterinin ne istediğini bilmeden sırf para için biz bu işi yaparız deyip sonra eline yüzüne bulaştırıp kaçıp giden çok insan bulunmakta.
    Hem müşterinin güvenini sarsmakla kalmayıp , yazılımcılara olan güveninde kaybolmasına neden olmaktadır,

    Saygılarımla.

  7. […] Bu onların zaman içinde basit cözüm oluşturma yetisini pekiştirir ve zamanla senior developer olmalarını […]

  8. […] geçmişte olduğu gibi kod yazarak, üreterek sadece keyif almak olduğunu vurgulamak istiyorum (Kim Senior Programcıdır?) Geçmiş yıllarda (önceki blog ve forum tecrübelerimde) onlarca insanla tanışıp; daha […]

  9. fatih acar diyor ki:

    Güzel yazı olmuş hocam. Java ile bu kadar çok geç tanışmamalıydım.

  10. kürşat diyor ki:

    Çok güzel bir yazı. Teşekkür ederim.

  11. guven diyor ki:

    Turkiye sartlarinda developer ayni zamanda sistem analizi , musteri iliskileri, hata yonetimi vs.vs. konularinda da yetkin olmalidir. ancak dogru bu durum dogru degildir. Bu durum zamanla developer bagimliligi getrir ve projeye personelin aile ve cevre sartlarini risklere dahil eder.

BU YAZI İÇİN BİR YORUM YAPABİLİRSİNİZ.