21 Mart 2024 Perşembe

Kimle Pair Çalışmalı?

     S.A. Arkadaşlar,

     Son haftalarda canlıda meydana gelen problem için takım arkadaşım Ceyda ile birçok kez birlikte çalışıp hatanın sebebini bulmaya çalıştık. Kendisi benden yaşça oldukça genç olmasına rağmen kendisinden çok şeyler öğreniyorum. En son yukarıda bahsettiğim hatada yine güzel bir bakış açısıyla odağımızı farklı bir noktaya kaydırınca bu yazıyı yazmaya karar verdim. Hazırsak başlayalım.

    Pair programming nedir, faydalarından ve eksikliklerinden ziyade kimlerle yapıldığında daha verimli olur, kimlerle yapılmamalı ya da yanlış olabilecek birkaç noktadan naçizane bahsetmek istiyorum. 

    Pair çalışırken ekranını paylaşan kişiye driver(yazan), onu izleyen ya da yönelndiren kişiye ise navigator(yönlendiren) diyebiliriz. Hem yazan hem de yönlendiren olmanın farklı avantaj ve dezavantajları var. En basitinden yazan kişi kodlama yaptığı için daha dinç ve aktif kalabilir, buna karşılık yazmaya odaklandığı için farklı bakış açılarını kaçırabilir. Yönlendiren kişinin de olaydan kopma gibi bir handikapı var iken kodu yazmadığı için o anda farklı pencereden güzel noktalar yakalama şansı olur. O yüzden bu çalışmayı mümkün mertebe rolleri değiştirerek yapmak daha sağlıklı olacaktır.

    2 takım arkadaşım son dönemlerde birlikte çalışıyorlardı. Kodu yazan kişi projeye daha hakim iken yönlendiren arkadaşım ise daha sonradan işe giren ve projeye dahil olmaya çalışan kişi. Projeyi bilen insan doğal olarak koda olan hakimiyeti ve geçişleri daha hızlı yapabilmektedir, bu da takip eden kişiyi bir yerden sonra yorabilir veya sıkılmasına sebebiyet verebilirdi. Bunu fark edince rolleri değiştirmelerini, başta biraz yavaş yol alınsa da bunun sorun olmayacağını ama daha verimli olabileceğini ilettim. Bunu yaptıktan sonra geri dönüşleri çok daha olumlu olmuştu.

    Daha önceleri yeni işe başladığım bir firmada, yurtdışından bir proje almıştık (şirket de yeni kurulduğu için doğal olarak bu müşteriyi çok önemsiyorduk). Projeye alışıp işi yoluna koyana kadar iş verenimle birlikte pair çalışıyorduk. Orada kodu yazan ben yönlendiren pozisyonunda ise kendisi vardı (Kendisi benden çok daha tecrübeli, uzun yıllardır sektörde farklı pozisyonlarda çalışmış biri). Beraber güzel çalışıyor olmamıza rağmen 2-3 günden sonra kendisinin çok yönlendirdiğini bu yüzden benim biraz daha pasif durumda kaldığımı, özgüvenimi etkilediğini ilettim (daha önce de birlikte çalışmış olduğum biri olduğu için bunu rahatlıkla ifade edebildim). Yönlendirmelerini daha az yapmasını rica ettim. Kendisi de bunun farkında olmadığını ve buna dikkat edeceğini söyledi. Gerçekten de bu noktadan sonra hem projeye olan hakimiyetim arttı hem de kendisi sadece gerektiği yerlerde fikirlerini belirtti ve böylece güzel bir çalışmayı ilerletmiş olduk.

    Giriş kısmında kısaca bahsettiğim konuya dönecek olursak, takım arkadaşım bu sefer benden oldukça genç biri. Bir üstteki örneğe kısmen benzer. Bazen rolleri değiştirsek de genelde yazan Ceyda olur iken yönlendiren/izleyen ise ben oluyorum. Mümkün mertebe yukarıda bahsettiğim hataya düşmemeye çalışıyorum, zaten uzun süredir de birlikte çalıştığımız için aslında birbirimizi çok da iyi anlıyoruz. Uzun süredir kafama takılan bir konuda ben yazmaya başlamıştım ki kendisiyle pair olmaya ve çoğu zamanın aksine rolleri değiştirerek ilerledik. Sürekli aynı noktaya odaklanmıştım. Ceyda bir de şunu mu düşünsek dediğinde gözüm ışıldadı ve bu bahsettiği yolla problemin üzerine gittik ve ciddi manada yol almamız vesile oldu.

    Konuyu özetlemek gerekirse 3 farklı örnek ve farklı tecrübelerde birbiriyle çalışan kişi ve olaylardan bahsettim. Burada bahsedilen teknoloji, tecrübe (teknik olarak aklınıza her ne geliyorsa) den ziyade "soft skill" dediğimiz kişisel özellikler ve o çalışan 2 kişinin uyumu çok daha önemli olabilmektedir. Yazan da yönlendiren de geri bildirimlere açık olmalı, kibire kapılmamalı ve egolarına yenik düşmememlidir. Zaten böyle yapılan pair çalışmalar hem verimli olmayacak hem de tekrarı gelmeyecektir diye düşünüyorum. 

    Ayrıca bu gibi birlikte çalışmaların hem teknik olarak çok faydası var, hem de birlikte çalışan kişilerin ekip içindeki uyumu, birbirine olan bağlılıkları/inançları da o ölçüde artabiliyor. Takımdaki iletişimin ve uyumun, o takımdaki yetenekler toplamından çok daha önemli olduğuna birçok kez şahit oldum ve muhtemelen de şahit olmaya devam edeceğiz.

    Nice güzel birlikte çalışmalar gerçekleştimek dileğiyle. Kendilerinden bahsettiğim arkadaşlarıma da sevgiler/saygılar

    "Mü’minler birbirlerini sevmekte, birbirlerine acımakta ve birbirlerini korumakta bir vücut gibidirler." (Müslim, Birr, 17)
  

Hiç yorum yok:

Yorum Gönder