Bu sene meslekte 18. yılımı dolduruyorum. Kendimi her zaman önce bir yazılımcı sonra lider olarak tanımlamaya çalıştım. Hemen her dikeyde ve her seviyede yazılımcı ve mühendisle beraber çalışma şansım oldu; e-ticaret, spor yönetimi, lojistik, kargo, bahis, haber, oyun gibi birçok sektörde ulusal ölçekte projelere katkı sağladım ve yönetimine dahil oldum.
Son 2 senedir bambaşka bir yazılım ekosistemi oluştu. Covid-19 sonrası bütün fiziksel limitlerin kalkmasından, uzaktan çalışmanın dünyanın bir gerçeği haline gelmesinden sonra artan ihtiyaç yüzünden zaten olmayan kıdemli yazılımcı iş gücü artık hiç yok.
Bu ve benzeri sebeplerden hem deneyimler sebebiyle hem de birçok forum, sosyal medya içeriğinde sizlerin de gördüğü gibi yazılım sektöründeki maaşlar herkes için bir tartışma konusu haline geldi. Dolarizasyon da bu konuya itici bir kuvvet uygulamaya başladı.
Türkiye özelinde bu konuyu biraz daha farklı ele almak gerektiğine inanıyorum. Geçtiğimiz 5 sene içerisinde çok fazla yetenek ve mühendis kaybettik. Ancak arkadan gelen binlerce genç var ve onları sektöre kazandırabilmek için doğru iş modellerini ve gelir yapısını kurmamız gerektiğine inanıyorum.
Bir tarafta asgari ücret, diğer tarafta doktor, mimar ve diğer uzman iş kollarındaki maaşlar ve bunların 2 veya 3 katına gelen yazılımcı maaşları… Ancak bu durum uzun vadede ne sürdürülebilir ne de gerçekçi… Birçok yazılımcı pozisyonunda şu an geçtiğimiz 4-5 seneye bakarak kıdem/bilgi ve maaş kıyaslaması yaptığımızda maaşlar abartılmış durumda, buna rağmen sektörün ihtiyacı olduğu için işe alımlar son hız devam ediyor.
Genellikle bir yazılımcı için iş değiştirme arayışı, etrafındaki arkadaşlarının maaşlarını paylaşmasıyla başlıyor ve domino etkisi yaratarak kısa sürede iş değiştirmesine sebep oluyor. Bir yazılımcı için kendi maaşını belirleme ve her zaman daha fazlasına erişme şansı çoğu zaman mevcut, ancak bu noktada bir konumlandırma yapmak için her yazılımcının kendisine şu soruları sormasını tavsiye ederim.
- İngilizce konuşma ve yazma becerisi
Bu konu ülkemizdeki kanayan yaralardan bir tanesi. İş görüşmelerinin çoğu “İngilizce biliyorum” şeklinde başlayıp “Sadece okuyabiliyorum, konuşulanı anlayabiliyorum.” şeklinde devam ediyor. Ancak hem becerilerinizi yükseltmek hem de uzun vadede globalde iş yapabilmek için orta-iyi derecede konuşabilir ve bir proje planını İngilizce anlatabilir durumda olmanız gerekiyor. Eğer bu becerilere sahip değilseniz, hiç vakit kaybetmeden yarın bu konuyu çözmek için adım atın.
- Network ve internet bilgisi
Bir yazılımcı olarak bütünün içerisinde bir parçayı ürettiğimizi unutmamamız ve yine internet dünyasının dinamikleriyle limitlendiğimizi bilmemiz gerekli. Bu nedenle bir projenin ya da uygulamanın tamamına hâkim olabilmek için internet nasıl çalışıyor, temel kavramlar (DNS, domain, hosting, server, TCP, PORT, API, loadbalancer, HA vb.) nelerdir gibi konulara hâkim olmak, uzun vadede çok daha başarılı bir kariyer yolculuğu sağlayacaktır.
- Proje çeşitliliği ve domain bilgisi (sektör bilgisi)
Domain bilgisi bir yazılımcı için en önemli kaldıraçlardan bir tanesi. Bu bilgi birikimini edinmeniz için aynı sektörde birden fazla proje yapmanız, çok sorun çözmeniz, best practice’lere hâkim olmanız gerekli. Zaman içerisinde o sektör içerisinde uzmanlaşmanızla iş akışlarına doğal olarak girmeye ve yönlendirmeye başlayacaksınız. Burada dikkat edilmesi gereken bir diğer konu, uzmanlaşma alanını iyi seçmeniz ve kaybolmamanız… Örneğin e-ticaret uygulamaları üzerinde uzmanlaşabilirsiniz ancak bu kadar büyük bir konunun her noktasına dokunmak zor olacağı için burada, arama optimizasyonu ve altyapıları üzerine çalışmak, “search and navigation” kavramını bütün hatlarıyla öğrenmek daha kolay olabilir. Bulunduğunuz sektör ya da dikeyde derinlemesine bilgi sahibi olmanız, uzun vadede birçok iş fırsatını kapınıza getirecektir.
- Tasarım desenleri
Hangi sektör ve hangi dikey olursa olsun bir yazılımcı kariyerinin bir noktasında kendisini geliştirmek veya bir soruna çözüm bulabilmek için tasarım desenleriyle tanışmak ya da uygulamak zorunda kalacak. Tasarım desenleri, en genel tanımıyla yazılımcıların sıklıkla karşılaştığı problemlere getirilen çözümlerdir. Yazılımcılar, aynı veya benzer problemlerle karşılaşırlar. Problemlerin çözümü için kullanılan yapıları bilmek, zaman ve maliyet açısından tasarruf etme imkânı sunar. Bu sebepten mümkün olan en kısa sürede tasarım desenlerini öğrenmenizi ve bir veya birkaçını uygulamalı olarak denemenizi öneririm. Bu ve benzeri teknik beceriler, uzun vadede hem kariyer yolunuzu açacak hem de fark edilir olmanızı sağlayacak.
- İletişim becerileri ve proaktif davranış modeli
Dışarıdan yazılımcıların genelde asosyal olduğu varsayımı yapılır. Bir yazılımcının tüm gün bilgisayar başında olması ve diğer işlere nazaran bilgisayarın her şeyinden daha iyi anlaması sebebiyle, iletişiminin zayıf olması kabul edilebilir diye düşünülür.
Ancak her iki varsayım da yanlış. Günümüz dünyasında neredeyse yazılımla uğraşan herkes hem çok aktif hem de kendine göre ilgi alanları ve iletişim yöntemleri var. Bu sebepten iki varsayımı da kabul etmeyin ve üzerinize yapışmasına izin vermeyin.
İletişim becerilerinizi, hiç tanımadığınız bir insanla işten bağımsız en az 5 dakika sohbet edebilecek ve etkileyecek kadar keskinleştirin.
- Hedefler
Ne olmak ve neyi öğrenmek istediğinize karar verin. Başkalarının iş değiştirmesi sizin hedeflerinizi değiştiriyorsa, hedeflerinizi tekrar gözden geçirin. Sık iş değiştirip, her şeyden biraz anlamak yerine bir hedef koyun ve ona odaklanın.
Yukarıdaki öneriler hem gelişim kapılarını açacak hem de kendinizi başkasıyla kıyaslarken daha somut örnekler üzerinden ilerlemenizi sağlayacaktır.
Kendinize güvenin ve yolculuğunuzun sadece size ait olduğunu unutmayın.
Murat Kader – PATH Kurucu Ortağı
Yorumlar