Sıfırdan Yazılıma Nasıl Başlanır?: Alan Seçme, Adaptasyon, Gelişim ve Network
Yazılımda hangi alana yönelmeliyim? Hangi dili öğrenmeliyim?
İlk araştırmaya başladığımda web, oyun, mobil, gömülü, siber güvenlik, yapay zeka, makine öğrenmesi gibi bunca alan arasından yanlış olana yönelirim diye korktuğumu hatırlıyorum.
Sevdiğiniz işi yaparsanız, bir gün bile çalışmış sayılmazsınız.
Hiç yapmadığımız bir işi nasıl sevebilir veya kendimiz için doğru olup olmadığına karar verebiliriz? Benim açımdan yazılım da dahil olmak üzere bir işi tamamıyla sevmek hep gerçeklik dışı bir beklenti oldu. O yüzden herhangi bir işe girişirken kendinize sorduğunuzda size fayda sağlayacağını düşündüğüm bazı soruları aşağıda yazdım ve bir alan seçip ilerlemeden önce araştırma ve değerlendirme yapmanızı tavsiye ederim.
Verdiğim emeklerin karşılığını hangi alanda en hızlı geri alabilirim? Hangi alan, hedeflerime ulaşmakta bana daha çok fayda sağlar?
Hangi alanda genel anlamda keyif alabilir ve hoşlanmadığım öğrenme süreçlerinde bile hedefime bağlı kalıp motivasyonumu koruyabilirim?
Seçeceğim alanda sorularımı yöneltebileceğim kaynaklar -insanlar, eğitimler, kitaplar, makaleler vb.- ulaşılabilir mi?
Size bu konuda rehber olacağını düşündüğüm en güzel türkçe kaynak Deniz İrgin’in Yeni Başlayanlar İçin: Yazılımcının Galaksi Rehberi olacak, hatta öyle ki üstüne pek de söyleyecek bir şey bulamıyorum. Sonsuz tavsiyemdir.
Adaptasyon, Gelişim
Alan seçme konusundan sonra geriye kalan en önemli noktalardan biri bence adapte olabilmek. Bir seyahate çıktığınızı düşünün, rastgele gezer miydiniz yoksa önden bir araştırma soruşturma yapar mıydınız? Ancak bu metaforda seyahat değil de yazılım öğrenmeyi yeni bir şehre taşınmak gibi düşünebilirsiniz. Adapte olmanız, oradaki hayatınızı geliştirmeniz ve iyi bir çevre edinmeniz gerek. Bir planınız olmalı. Google aramalarından ve birilerine sormaktan fazlasını yapmak gerek.
Eğer benim hala gibi yazılımdan önceki hayatını bazen tembel ve verimsiz geçirme eğilimindeyseniz, bu yaşam tarzını değiştirmeniz gerek. Bunu ise kendinizi aşırı zorlayarak yapmamalısınız. Motivasyon içerikli sosyal medya paylaşımları, YouTube videoları bunun tersini söylüyor olabilir. Ama size doğruyu söyleyeyim, en çok siz çalışmak zorunda değilsiniz.
Günün tamamını verimli geçirmek, az uyumak çok iş yapmak, sürekli odakta kalmak oldukça zorlayıcı ve bu konu özelinde kişi uzun bir süre istikrar sağlamadıysa, kendini geliştirmediyse, kendinden böyle bir beklentisi olmamalı. Her seferinde biraz fazlasını yapmaya çalışmak yeterli.
Sabah 4'de kalkıp soğuk duş almak, 5 saat uyumak, her gün bilmem kaç saat kitap okumak, bir sonraki seviyelerin olayları bana sorarsanız. Bu benim şahsi fikrim. İstediğiniz gibi yaşamakta özgürsünüz. Ben 8 saatlik uykumu alıp, kendimi iyi hissettiğim bir günde yaptığım iş bana yetersiz geliyorsa ya psikolojimi sorgulardım ya da aşırıya kaçan hareketler yerine 8 saatlik uykumdan kalan 16 saatte nasıl daha fazla boşluk yaratabilirim kendime diye düşünürdüm.
Nihayetinde ifade etmeye çalıştığım şey, gelişmek için, iyi hissetmek büyük bir avantaj. Kötü hissettiğimizde de bir şekilde motive olabilir ve kendimizi bir işe odaklayabiliriz, ama asıl amaç iyi hissedip, süreklilik gösteren ve takip edilebilen bir artış yaratabilmek.
Hiç bilmediğim bir kütüphaneyi veya bir bilgiyi özümsemem bir iki sene önce benim için günler alabilecek bir şeydi. Zaman içinde, beynimin bilgiyi arama, anlama ve öğrenme şeklini geliştirmeye odaklandım. Çoğu zaman yeni bir şeyler öğrenirken amacımın o şeyi öğrenmekten çıktığı bile oldu. Ben kendimle bir yarış içindeydim. Bugün ise yeni bir şey öğrenmek benim için daha kolay ve eskisine göre çok daha hızlı ilerleyen bir sürece dönüştü, ve acı verici tarafları ortadan kalktı.
Bunu ise sadece yazılım ile ilgili şeylere odaklanarak yapmadım daha önce de söylediğim gibi. Son iki yılda hiçbir eğitim almadan piyano öğrenmeye ve çalmaya başladım, yıllardır evimde duran ve ilerletmediğim gitarı biraz ilerlettim, satrançta hızlı bir şekilde oyunumu ve sıralamamı yükseltmeye odaklandım, insan ilişkilerimi nasıl geliştirebileceğim üzerine kafa yordum, yazılım dışında hayatta işime yarayacak temel bilgileri öğrenmeye ve bulmaya çalıştım. Benim için çoğu hobi olarak bile kalacak bile olsa bunların hepsini bir plana ve disipline bağlı kalarak, ciddiye alarak yaptım. Bunların ise bana sadece öğrenme kaslarımı geliştirme açısından değil bir çok açıdan tahmin edemeyeceğim kadar faydası olduğunu söyleyebilirim.
Network
Yazılım öğrenme sürecinin daha ileri süreçlerinde çok işinize yarayabilecek bir konu ise network edinmek. Rotanızı belirledikten sonra mutlaka eş zamanlı olarak LinkedIn, Twitter gibi platformları kullanmak, yazılımcıların bulunduğu discord kanallarını vs. bulup aktif zaman geçirmeye çalışmak faydanıza olacaktır. Bol bol sektörde pozisyon fark etmeden insanlarla güzel bir iletişim içinde olmaya çalışmak sizi hem daha çok motive eder, hem de bir çok şey öğrenebilirsiniz. Bunu da kendi tarzınızla yapmanızı tavsiye ederim.
Sağlıcakla.
Serideki Tamamlamış Yazılar:
Sıfırdan Yazılıma Nasıl Başlanır?: Giriş
Sıfırdan Yazılıma Nasıl Başlanır?: İlk Günler 1
Sıfırdan Yazılıma Nasıl Başlanır?: İlk Günler 2
Sıfırdan Yazılıma Nasıl Başlanır?: Yetersizlik Hissi
Sıradakiler
Sıfırdan Yazılıma Nasıl Başlanır?: İş Başvurusu ve Mülakatlar
Sıfırdan Yazılıma Nasıl Başlanır?: İlk İş Deneyimi
Sıfırdan Yazılıma Nasıl Başlanır?: Globale Açılma, Upwork