Yazılım; uygulama ve bilgisayar sistemlerini geliştirme süreçlerinin tamamını kapsayan ve günümüzde çok yaygın taleplerin olduğu popüler bir alan. Cep telefonlarımızdan; akıllı evlere, fabrikalardan, otobüs duraklarına dek, gözlerimizin temas ettiği, hayatımızın kolay sürdürebilmesi için kullandığımız birçok alet/fonksiyona yazılımların hayat verdiğini söyleyebiliriz.
Yazılım öğrenmek istiyor ama nereden başlayacağını bilemiyor olabilirsin. Çünkü yazılım alanında birçok alt başlığı kapsayan hizmetler ve çalışma alanları bulunuyor. Bu yüzden bir freelance yazılımcı için birçok çalışma alanı ve birçok proje fırsatı bulunduğunu söyleyebiliriz.
Bu yazımızda freelance yazılımcı olmanın avantajları, hangi alanda çalışabileceğini ve en önemlisi yazılım öğrenmek için yararlanabileceğin faydalı kaynaklarından bahsedeceğiz.
Freelance bir yazılımı, herhangi bir zamana ve mekâna bağlı kalmadan çalışabilir ve sürekli olarak kendini geliştirebilme fırsatı vardır. Bu yüzden bir freelancer yazılımcı olarak kendini geliştirdiğin her alanda iş bulma imkanına sahip olduğunu söyleyebiliriz.
Genel olarak şu alanlarda çalışma fırsatı bulabilirsin:

Web yazılımcıları; hem kullanıcının hem de web sitesi sahibinin hedeflerini karşılamak için uygun içeriğin, grafiklerin ve temel yapıların kullanılabilir olduğundan emin olmak adına kullanıcı ihtiyaçlarını göz önünde bulundururlar.
Tabletler ve akıllı telefonlar gibi cihazların, birçok tüketici için günlük yaşamın vazgeçilmez bir parçası haline geldiğini hepimiz biliyoruz.
Bu cihazların, e-posta alma ve gönderme gibi basit görevlerden dijital eğlence akışına ve hatta çevrimiçi bankacılık veya sağlık yönetimi gibi pratik konularla ilgilenmeye kadar birçok şeyi kolaylaştırdığını söyleyebiliriz.
Bir mobil yazılım uzmanları tam da burada devreye girer. Dijital cihazlar için uygulama yelpazesi ne kadar geniş olursa, bu cihazlar için yazılım programlayabilen yazılımcılar da bir o kadar gereklidir diyebiliriz. Bir mobil yazılımcısı olarak, Google’ın Android’i, Apple’ın iOS’u ve Microsoft’un Windows Phone’u gibi büyük platformlar için uygulamalar geliştirebilirsin.
Başarılı bir freelance mobil yazılımcısı, çeşitli mobil işletim sistemleri ile çok aşina olmalı ve mobil uygulamalar oluşturmak için HTML, CSS ve JavaScript gibi programlama dillerine hâkim olmalıdır.
Eğer iOS için geliştirmeyi seçersen Objective-C veya Swift öğrenmelisin. Android için geliştirme yapmak istiyorsan Java, Kotlin, Flutter veya React Native öğrenmen gerektiğinin altını çizelim.
Freelancer olarak iyi bir yazılım kariyerin olsun istiyorsan; kazanman gereken en önemli becerinin iletişim olduğunu belirtmeliyiz. Sadece müşterilerle iletişim halinde olduğun için değil, bir ekiple verimli çalışabilmek için de bu beceriyi kazanman çok önemli.
Uygulama yazılımı geliştiricisi, genel bilgisayar uygulama yazılımını veya özel yardımcı programları geliştirir, oluşturur ve değiştirir. Kullanıcı ihtiyaçlarını analiz ederek bu ihtiyaçlar için yazılım çözümleri üretir. Operasyonel verimliliği optimize etmek amacıyla yazılımı müşteri kullanımı için tasarlar veya yazılımı özelleştirdiğini söyleyebiliriz. Bir uygulama alanındaki veritabanlarını analiz edebilir ve tasarlayabilir, freelance olarak çalışabilir veya bir ekibin parçası olarak proje dahil olabilir.
Uygulama yazılımı, Android, iOS veya Windows gibi belirli bir işletim sistemi (OS) için yazılabilir. Uygulama yazılımı geliştiricileri genellikle mobile uygulamalar, grafik yazılımı, muhasebe yazılımı veya ofis paketleri gibi belirli bir geliştirme alanında çalışma fırsatları bulduğunun da altını çizmiş olalım.
Freelance yazılım kariyerini seçtiğinde çalışma zamanı ve mekânının tamamen sana bağlıdır. Bu sebeple kendini geliştirmek için birçok fırsata sahip olduğunu söyleyebiliriz.
Kendine şu üç soruyu sor:
Yukarıdaki sorulara evet cevabı verdiysen, bir yazılımcı olmak için doğru yoldasın!
Neden?
Bu kendine sorman gereken en önemli sorulardan biri. Neden (başarılı) bir yazılımcı olmak istiyorsun?
Bu sorulara verdiğin dürüst cevaplarla, kariyer olarak seçtiğin alanda çok verimli olabileceğini unutma.
Mantık ve problem çözmeyi mi yoksa tasarım ve görseli mi tercih edersin? Mantık ve problem çözmeyi tercih ediyorsan, back-end geliştirme tam sana göre. Tasarım ve görselliği tercih ediyorsan, front-end geliştirmeyi tercih etmen gerekiyor.
Bu sorulara verdiğin yanıtlar doğrultusunda; yazılımcı olmaya ve hangi alanı tercih edeceğine karar verdiysen artık tek ihtiyacın öğrenmek istediğin bilginin nerede olduğunu bulmak. Fakat bu konuda meraklanmana gerek yok, senin için birçok tavsiyeyi bir araya topladık.
İngilizce evrensel bir dil ve yazılım dillerinde birçok sorgu da İngilizce olarak yazılıyor. Ancak hiç İngilizce bilgin olmasa bile, yazılım öğrenebilirsin. Başlangıç için alt yapın yoksa bile, daima dokümantasyon okuyup anlayabilecek bir İngilizce seviyenin olması. Bu sayede hem öğrenme sürecini hem de freelance iş fırsatları yakalama şansını artıracağını söyleyebiliriz.
1.Udemy
Udemy üzerinden birçok kursa ücretsiz ulaşabilir veya ücretli kurslar satın alarak kursları tamamladığında; CV’ne gönül rahatlığıyla ekleyebileceğin sertifikalara da sahip olabilirsin.
2.PHPNet:
Eğer PHP diline aşina değilsen kesinlikle bu sayfayı ziyaret etmelisin.
3.Scratch:
8-16 yaş aralığındakiler için hazırlanmış bir program olan Scratch ile oyun ve animasyon geliştirmeyi ücretsiz bir şekilde öğrenebilirsin. Türkçe seçeneği de bulunduğu için; yazılım dillerinin temelini oluşturan algoritma yapısını oyun hazırlayarak kolay bir şekilde öğrenebilirsin.
4.Turkcell Geleceği Yazanlar
Birçok yazılım dili ile ilgili ücretsiz dersleri Türkçe olarak Turkcell Geleceği Yazanlar adresinde bulabilirsin. Türkiye’nin en büyük yazılım topluluğu olarak belirtilen bu platformda, hem eğitim hem de sosal programlara katılabilir; mobil programlama, Veri Bilimi, Veri Tabanı Programlama, Oyun Programlama ve Web Programlama konularında bilgi sahibi olabilirsin.
5.Codecademy
Codecademy ile pek çok yazılım dilini hem ücretsiz hem de profesyonel bir şekilde öğrenebilirsin. İngilizce ücretsiz kaynak sunan bu platform, henüz nereden başlayacağını bilemiyorsan kolay bir test ile sana rehberlik de ediyor.
6.Ruby Topluluğu:
Türkiye’de Ruby topluluğu tarafından Türkçeleştirilerek derlenen ve Ruby hakkında bilgilere erişebileceğin bir kaynak olduğunu belirtelim.
7.Coursera
Birçok seçkin üniversitenin hazırladığı ücretli ve ücretsiz yazılım kurslarını sunan Coursera da tıpkı udemy gibi sertifikalı eğitimler bulabilirsin.
8.Mobile Developer – Android
GitHub adresinden Android yazılımcı olmak için ilk adımlarını öğrenebilir ve burada yer alan örnek projeler ile kendini geliştirebilirsin.
9.Codepath – Android Topluluğu
Android uygulamalar için gerekli dilleri öğrenebileceğin bu topluluk, farklı yazılımcıların katkılarıyla geelişen, herkese açık bir kaynak olmayı hedefliyor. Buradan bilgi alabilir veya katkıda bulunabilirsin.
10.Udacity – HTML ve CSS’e Giriş Dersleri
Udacity ile ücretsiz web geliştirme dersine ulaşabilirsin.
Harika bir sonuç elde etmek, büyük oranda fedakârlık göstermeni gerektiriyor. Başarılı bir freelance yazılımcı olmak istiyorsan becerilerini her geçen gün geliştirmeni, projeler yapmanı ve bildiklerini uygulamaktan asla çekinmemeni tavsiye ediyoruz.