Yeni Yazılımcının Proje ve Ekip ile Sınavı

 

Ekibimize junior bir yazılımcı arkadaş katıldı. Elini kirletmişti, yaptığı projeleri vardı. Ama bir ekiple ve bir ürünle daha önce çalışmamıştı.

Sar yaralarını ayıcık, daha yeni başladık!

Ekibe ilk katıldığında tedirgindi. Bu tedirginlik sürekli kendinden çok emin olmakla kendine güvenmemek arasında gidip geldi. Birşeyleri yapamayacağından korktuğu gibi bazı şeylerin çok kolay olduğunu düşünüyordu. Sanırım bir ekiple çalışmaya başlayan eski/yeni tüm yazılımcıların kaderi bu: bir görevin zorluk derecesini ve ne kadar zaman alacağını öngörememek. Ekibi, codebase’i ve domain’i anlamaya başladıkça tahminler ve öngörüler daha gerçekçi olmaya başlıyor. Korkmayın olur öyle.

Oku araştır. Ama en çok da soru sor. Daha çok soru sor. Ekiptekilerin ne dediğine değil ne demek istediklerine odaklan. Ürünü ve projeyi anlamaya çalış. Korkmadan fikirlerini söyle. Bilmiyorsan bilmiyorum de! Yardım istemek en temel hakkın.

Sana atanan görevi iyi anla. Bu görevin proje içindeki yerini görmeye çalış. İşi parçalara böl. Yazdığın kod önce çalışsın, sonra düzeltirsin, iyileştirirsin. Görevle ilgili alınması gereken kararlar varsa ekibe sor önce. Seçeneklerin olsun. Bu işi nasıl farklı yapabilirim diye düşün. İnternette ilk bulduğun cevaba atlama. Her bir adımdan sonra bir mola ver. Görevin yapmış olduğun kısmını ve yapacağın bölümünü yeniden düşün. Ara sıra baltanı bilersen daha hızlı işi bitirirsin.

Zamanının bir kısmı toplantılarda, çalışma ortamını kurmaya, gelen giden e-posta ve mesajları eritmekle geçecek. Bunlara boşa geçen zaman olarak bakma. Farklı insanları ve farklı fikirleri nasıl tek bir hedef için koordine etmeye çalışıyorlar ona bak. 

Toplantılara hazırlık gel. Bu toplantıda ne sormalıyım, bana hangi görevler verilebilir, gündem maddeleri hakkında neler konuşulabilir diye düşün. Toplantıda sana sorulan sorunun cevabını ilk kez toplantı esnasında düşünüyorsan zihnen hazırlıklı gelmemişsin demektir.

Teknolojiyi seviyorsun biliyoruz. Ama insanlar arasındaki ilişkiyi iyi gözlemle. Ürünün kullanıcıya kattığı katma değeri, rakipleri, ekibi, sektörü gözlemle. Her şeyi anlamana gerek yok. Büyük resmi görmeye çalış ama odağını teknik konulara ver.

Farklı kişilerle konuş, yan şirketi ziyaret et. İnsanların farklı ve taraflı olduğunu unutma. İnsanları etiketleyip kategorilere ayırma. Onlar sana farklı görünüyorlarsa sen de onlara farklı görünüyor olabilirsin. İnsanlara değil meselelere yoğunlaş. İnsanları tanı ama onlarla uğraşma. Senin en kıymetli sermayen zamanın. O zamanı kötü duygularla harcama. Bu hastalığa yakalanma!

B planın olsun. Çalıştığın şirket ve ekip çok iyi olabilir. Ama ya bu şirket batarsa, ya ekip dağılırsa, ya başka biryerden çok güzel bir teklif alırsan? Şirket veya ekip seni bir sonraki adıma hazırlamıyorsa, mesleki gelişimin durmuşsa B planını devreye sokma zamanı gelmiş demektir. Özgeçmişin sürekli güncel olsun. Sektörü takip et. Hangi teknolojilerin revaçta olduğunu bil. Yan projelerin olsun.

Dokümantasyon oku. Bunu ben yazsam nasıl yazardım diye düşün. Teknik bir konuyu basit bir şekilde anlatmak kolay bir iş değil.

Not almayı alışkanlık haline getir. Kalem kağıt eski moda değil. Not almamak eski moda.

Gününü planla. Bugün neyi kesinlikle bitirmen gerek, neler yarına kalabilir, neler hiç yapılmayabilir. Önceliklendirme yap. Mümkünse aynı anda tek bir iş yap.

Sistem mimarisini öğrenmeye çalış. Küçük bir kod parçası üzerinde çalışabilirsin. Arka planda neler döndüğünü bilmek teknik olarak seni daha hızlı geliştirecektir.

Senden istenmese bile code review yap. Diğerlerinin yazdığı kodu okumayı alışkanlık haline getir. Kodda hoşuna gitmeyen ya da gözüne batan bir husus varsa bunu dile getir.

Not: Bazı terimlerin Türkçe karşılığı olmadığı için ingilizce terimler kullanmak zorunda kaldım. Kültürümüzü geliştirmek istiyorsak üretmeliyiz.

Yorumlar

Bu blogdaki popüler yayınlar

Yazılımcılar İçin Yan Proje Oluşturma Rehberi

Yazılımcı Bulamayan Girişimci

Türkiye'de Yazılım Şirketi Açmak ve Çıldırmamak