Yazılımcı olacaklara tavsiyeler

Yaklaşık 3 senedir Türkiye’nin iyi yazılımcılarıyla çalışıyorum. Sektörün içerisine girerken düşündüğüm yazılımcı profiliyle, onlarla çalışmaya başladıktan sonra edindiğim profil arasında oldukça fark olduğunu söyleyebilirim. Bir proje yöneticisinin gözünden bir yazılımcının nelere dikkat etmesi gerektiğini ve yazılım dünyasının en çok sorulan “nereden başlamalıyım?” sorusunun cevabını sizlerle paylaşmak istedim.

İngilizce öğrenin

Yazılımın ve yazılım sektörünün en ama en büyük olmazsa olmazı bana göre İngilizce. İngilizce bilmeden ne üst düzey bir şekilde bir yazılım dili öğrenebiliyorsunuz, ne doğru düzgün bir araştırma yapabiliyorsunuz ne de sürekli değişen yazılım ortamına uyum sağlayabiliyorsunuz. Yazılımın en büyük avantajlarından birisi evrensel olması. Bir ülkeye ya da bir takım kişilere bağlı kalmadan sürekli gelişen ve büyüyen bir şey. Evrensel olarak geliştirilen bir şey için de evrensel bir dil kullanılması gerekiyor doğal olarak. Bu yüzden İngilizce bilmeniz hem yazılım bilginizi her zaman geliştirmenizi hem de gelişen bu dünyaya katkı sağlamanızda oldukça kolaylık sağlayacaktır.

Örnek vermem gerekirse, 30 kişilik tamamı yerli yazılımcılardan oluşan bir yazılım ekibi olmamıza rağmen, ürünün yazılıma temas ettiği her noktada İngilizceyi kullanmaya çalışıyoruz. Bunun bir çok sebebi var. Yazılım sektöründe bir süre sonra maalesef İngilizce terimlerden kaçamıyorsunuz. Her zaman bir terimin Türkçe’sini kullanmaya özen göstersek de bir yerlerde bazı terimler Türkçe’ye çevrilemiyor. Ya da yazının başında da bahsettiğim evrensellikten dolayı farklı dillerden insanlarla çalışmanız gerekebilir. Bu yüzden her zaman yazılımın girdiği her yerde dilin İngilizce olmasında fayda var.

Matematiğinizi her zaman geliştirin

Hayatınızın her anında matematiği isteyerek ya da istemeyerek kullanıyorsunuz. Yazılım ile ilgili bir şey yapıyorsanız, matematiği kullanmadığınız tek bir anınız bile olmayacak. Yazılımı biraz öğrenmeye başladığınızda aslında her şeyin hesaplama olduğunu, algoritmalar etrafında döndüğünüzü anlayacaksınız. Matematik bilmeden ne bir butonu sayfada istediğiniz yere yerleştirebilirsiniz ne de o butonu çalıştırabilirsiniz. Matematiği bilmediğiniz sürece bir yazılım dilini teoride ne kadar iyi bilirseniz bilin pratikte her zaman başarısız olursunuz.

Ayrıca matematik sadece yazılımda değil, içerisinde bulunduğunuz projenin süreçlerinde bile size çok şey kazandıracak. Kendi iş planınızı düzgün planlamanızda, bir iş için doğru süre vermede, kısacası her yerde kullanacaksınız. O yüzden ne zaman yazılım ile ilgili kendinizi geliştirmek isterseniz bir o kadar da matematiğe zaman ayırmanız gerekiyor.

Dürüst olun

Bu aslında sadece yazılım ile uğraşan kişiler için değil, sektörünüz ne olursa olsun taşımanız gereken bir kişisel özellik bu. Fakat yazılım gibi karmaşık bir işte dürüst olmazsanız bunu hiç bir zaman saklayamazsınız ve her zaman işleri daha kötü noktaya getirirsiniz. Yazılımın bir ekip işi olduğunu asla unutmayın. Hata yaptığınızı bildiğiniz bir yeri söylemediğinizde, ekibiniz size güvendiği için hatayı başka bir yerde aramaya odaklanacaktır ve bu belki de günlerce sürecek bir zaman kaybına yol açacaktır. Bunun yerine hatanızı kabul ederek bunu hemen paylaşın. Gerçek bir yazılım ekibindeyseniz zaten kimse bireysel hatalarından dolayı yargılanmaz. Bu bir ekip işidir, kimin hata yaptığından çok o hatayı birlikte nasıl çözeceğinize odaklanmalısınız.

Dürüst olmamak size düşündüğünüzden çok daha fazla şeyi kaybettirir. Öncelikle güvene dayalı bir ekipte bir kere bile olsun yalan söylediğiniz anlaşılırsa o ekip içerisinde her zaman kuşkuyla bakılan insan olursunuz. Hata yapmak kötü bir şey değil, bunu unutmayın. Bu bir ekip işi olduğundan hiç bir zaman bireysel hata diye bir şey olmaz, aynı başardığınız şeylerde olduğu gibi, hatalı olunan şeylerde de birlikte yapmış kabul edilirsiniz. Yargılanmaktan korkmayın, hata yaptığınız için utanmayın. Eğer hata yoksa, yeni bir şey öğrenmiyorsunuz demektir.

Hata yapın, hata yaparak öğrenin

Az önce bahsettiğim gibi, hata yapmıyorsanız hiç bir zaman yeni bir şey öğrenmiyorsunuz demektir. Hata yapmaktan asla ve asla korkmayın. Hata yapın, düzeltirken bu sürecin içerisinde olun ve deneyim kazanın. Dikkat ederseniz tüm büyük yazılım ekipleri hata yapmanın önemini vurguluyor. Çünkü yaptığınız bir hata, tüm ekibe aynı deneyimi kazandırıyor ve deneyim yazılım ekibinde en önemli şeylerden biri.

Ekibin ne demek olduğunu başarılardan ziyade kriz anlarında daha iyi anlıyorsunuz. Bir hatadan sonra birbirini suçlamayan, birlikte aynı taşın altına elini koyan ekipler kuşkusuz daha başarılı oluyorlar. Bu yüzden eğer başarılı bir ekipteyseniz zaten yaptığınız hatanın sizin tarafınızdan yapılmış olup olmaması çok bir şey değiştirmeyecek. Hata yapın fakat yaptığınız bir hatayı tekrarlamamaya özen gösterin.

Çözüm odaklı olun

Yazılımda bir diğer önemli şey de sorunlarla başa çıkabilmeniz. Ekibinizle olsun, ürününüz ile ilgili olsun, ne olursa olsun her tartışmada çözüm odaklı olun. İşlerden söylenmek, ekip ile küsmeniz ya da birilerine karşı art niyetli olmanız size hiç bir şey kazandırmaz. Bir hata olduğunda bu hatanın neden olduğunu sorgulamadan önce bu hatayı nasıl çözeceğinize odaklanın. Ya da süreç ile ilgili bir sorununuz olduğunda süreci kötülemek yerine bir çözüm önerisiyle ekibiniz ile tartışın. Karamsar olmak ile çözüm odaklı olmanız arasındaki o büyük farkı herkesin göreceğinden emin olun.

Yukarıdaki tavsiyelerden de çıkaracağınız gibi, başarılı bir yazılım olmak sadece klavyede kod yazmanız ile alakalı değil. Hatta tüm deneyimlerime dayanarak söyleyebilirim ki klavye başında kod yazmak bir yazılımcının işinin yalnızca %20’si. Geri kalan tüm konular yukarıdaki bilgilerinize ve deneyimlerinize dayanıyor. Bir kodu yazmak için öncesinde o kodunuzu planlamanız, arkaplanını kafanızda tasarlamanız, ekibiniz ile bir süreçte birlikte yürümeniz gerekiyor. Bu yüzden kod yazmaya başlamadan önce tüm bu bilgileri ve süreçleri öğrenmeniz sizi daha başarılı bir yazılımcı yapacaktır.

Yorum Gönderin

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir