Bir Junior yazılımcının ilk tecrübeleri.

Bu da benden Junior Developer’lara gelsin.


Merhabalar. Uzun süredir yazmayı düşündüğüm şeyler var aslında ama bir türlü toparlayıp yazamadım. Affola ☺ Devamını getirebilirim umarım.

Evet Haziran 2014'te Anadolu Üniversitesi Bilgisayar Mühendisliği Bölümü’nden mezun oldum. Ha bu arada Bilgisayar Müh.(ing) yazmazsam hem kendime hem de orada okumakta olan arkadaşlarıma ayıp etmiş olurum sanırım. ☺ Önemli bir nokta sonuçta. Üniversite hayatında adam akıllı bir proje yapmamış olan ve her şeyden birazcık bilip hiçbir şeyde uzmanlaşamamıştım. Neredeyse her dilden 1 2 satır da olsa kod yazdım ama hiç proje tamamlamadım. Benim mantığım bir şeyi kafamda çözüyorsam onu yapmaya ihtiyacım yok ne de olsa kafamda çözümü buldum diye düşünürdüm. Fakat geriye kalan 3 ayda proje tamamlamanın bir insana kazandıracağı tecrübe farkını yaşıyorum. Ben tamamlamadığım için çok tecrübe eksiğim olduğu doğrudur. Peki bu tecrübe eksikliğini nasıl kapattın diye sorarsanız tam olarak ben de kapatabilmiş değilim ama çözüm uğraşmak, vazgeçmemek ve tabiki zaman.

Öncelikle ne yapmak istediğinize karar vermelisiniz. Ben 3 ay bir süre ne yapacağım hakkında bir istek bir çaba yoktu. Java yazıyordum ama Java üzerinde çalışmak istiyorum mu diye düşüncelerim vardı. Sonuç olarak ilk iş teklifini kabul edemedim bu karamsarlıkla. Daha sonra arkadaşlarımın tecrübelerinden duyduğum kadarıyla iOS ile tanıştım.Bir süre araştırıp üzerinde uğraştıktan sonra anladım ki ben bu alanda gitmek ve uzmanlaşmak istiyorum ve kararım kesinleştirdikten sonra kariyer planlamamı iOS’a çevirdim. İşte buradayım.

Programlama mantığı basit bir mantık aslında. Her zaman söylerim 1 ve 0 üzerine işleyen bir sistemi çözmek ne kadar zor olabilir ki? Sadece bilgisayarla nasıl konuşman gerektiğini öğrenmelisin. Yeni bir dil öğrenir gibi. Bu noktada da neden her programa diline Hello World diyerek başlandığı sonucunu da çıkarabilirsiniz. Aslında bu kod size dijital dünyadan gerçek dünyaya bir mesaj yollama niteliğinde. Dijital dünyadaki kendinizi selamlayın. Bu ne ki böyle diyerek başlamıştım olaya ama yavaştan yavaştan anlıyorum buradaki asıl amacı. Siz de buradaki olayı anlamaya çalışın üniversiteye gelmişiz ekrana Hello World yazıyoruz diye düşünmeyin.

Her ne kadar bilgisayar 1 ve 0'dan ibaret olsa da insanlar bunu geliştirerek karşımıza işletim sistemi, programlama dili, library, framework gibi yapılarla geliyor. İşte aslında gözümüzün korktuğu nokta burası ve bir çok kişiyi caydıran nokta da burası. Aslında tam da bu noktada caymamak gerekir. Bir framework kullanmak size zor gelebilir ama kullanmayı öğrendikten sonra yaşadığınız duygu bambaşka. Çünkü iş yükünüz o kadar hafiflemiş ve projeniz düzene girmiştir ki tadından yenmez. Bu yüzden sabredin ve kullanmaya, öğrenmeye devam edin farkı yaşadıktan sonra bakış açınız inanılmaz şekilde değişecektir. vazgeçmeyin asıl developer dünyasına sadece 1 adım uzaktasınız.

Steve reyizin de söylediği gibi programlama size nasıl düşüneceğinizi öğretir. Programlamaya başladıktan sonra hayatınızdaki bazı şeylerin değiştiğinin farkına varacaksınız. Hani o hep ilanlarda yazan “analitik düşünme becerisine sahip” diye işte o olay. Olaylara bakış açınız tamamen değişecek, düşünceleriniz değişecek ve kendi hayatınızı programlamaya başlayacaksınız. Bir şey yaratıyorsunuz, tamamiyle size ait sınırlarını siz belirliyorsunuz, özelliklerini siz veriyorsunuz . Ne kadar mükemmel şeyler yaratabileceğinizin farkına varın. Bu, aslında canlı bir yapı sadece öğrenme becerisine sahip değil.

Gurulanın bir şeyler yaratmanın farkını yaşayın.

Biraz felsefe yapar gibi oldum sanırım. Ama bu dünyaya girdiğinizde siz de farkı yaşayıp söylediklerime hak vereceksiniz. Düşünce yapınız biraz bu noktalara kaymaya başlıyorsa, hak veriyorsa hemen programlamaya başlayın daha fazla zaman kaybetmeyin.

Peki neler yapmalı? Nasıl bir kendini geliştirme aşaması oluşturmalıyız derseniz kendi tecrübelerimi aktarayım. Öncelikle medium gibi blog sitelerinden güncel yenilikleri takip etmeye başlayın. Başkalarının tecrübelerini okuyun, yol haritası çizin. Açın kullandığınız ya da bilgisayarınızda yüklü olan compileri ve yazmaya başlayın dijital dünyayı değiştirin ve aklınıza ne yapmak geliyosa yapmaya çalışın. oyun oynar gibi. Bunu bir zorunluluk olarak değil içinizden gelerek, ileriye bakarak yani daha sonra neler geliştirebileceğinizi düşünerek devam edin.

Başkalarının kodlarını okuyun. Kod dizaynı denen bir olay var. Öyle kod önemli değil, uygulama çalışıyor diye düşünmeyin. Sonuçta bu sizin yarattığınız bir yapı özen gösterin.Boşluklara varana kadar düzenleyin. Sonra yazdığınız koda bakın ve gurur duyun.

Aklınıza yapacak bir şey gelmiyor mu basit basit herkesin yaptığı projelerle başlayın. Ne bileyim adres defteri, uygulama giriş sayfası, hesap makinesi. Hatta çok kaynağı olan bir şeyi yaparak programlamaya başlamak daha kolayınıza gelir, kaynak sıkıntısı yaşamazsınız ve farklı farklı yazılmış kod örnekleri görmenizi sağlar.

Github ve versiyon kontrol sistemlerini öğrenin. Özellikle github mükemmel bir kaynak sağlıyor yapanların eline sağlık. Döküman okuyun. Bir framework kullanıyorsanız ve sorununuz varsa bunu dökümanlarında arayın en doğru cevap orada olacaktır ve size framework yapısını tanımanıza yardım edecek.

Başlangıç için yeterli bundan sonrasını zaten kendiniz oluşturacak, fikir sahibi olacaksınız. Ben bunu yapın da desem siz kendi bildiğinizi yapacaksınız ☺

Başka yazılarla görüşmek üzere.