Bir yazılımcı olarak şu şekilde verebileceğim tavsiyelerdir:
1. ingilizce şart. elzem. mutlaka öğrenin. çünkü bilgi kaynağı aradığınızda en güzel kaynakların ingilizce olduğunu göreceksiniz. zaten bilgisayar dilleri de ingilizce dili içeriyor, programlamanın mantığını kurmanızı kolaylaştıracaktır.
2. proje yapın. ben ilk süper mario tarzı bir oyun nasıl yapılır diyerek bu işe giriştim. kaynak kodlar buldum, denedim, değiştirdim. bir süre sonra mario klonu bir oyun yaptım.
yazılım dediğimiz şey de tıp gibi, aslında kendi içinde alanlara ayrılıyor. mesela ben oyun dizaynı ve c# dili üzerinde uzmanlaştım. çalıştığım şirkette, sadece server iletişimine bakan bir grup yazılımcı var mesela onlar sadece python üzerine çalışıyorlar. network iletişimine bakan ekip ayrı, arayüzcüler ayrı, bunların hepsini bir potada eriten çok üst düzey yazılımcılar da var tabi ama, benim fikrim "hepsini öğrenicem aq" fikrini çok benimsememeniz. şu anda leblebi gibi oyu stüdyosu açılıyor ülkemizde, bir oyun geliştiricisi olarak mesela benim alanım güzel. her ne kadar kurulan şirketler 5-10 kişilik minik butik oyun firmaları da olsa, ücret skalaları belirli. gayet uygun.
onun dışında java ve python dilleri üzerine uzman olmak, kubernetes gibi sistemleri iyi bilmek şu anda sizi piyasada yenilmez yapar, bunları bilenin sırtı yere gelmez.
bu işin büyük çaba ve çalışma gerektirdiğini belirtmem de gerekiyor. yani böyle yemek tarifi izler gibi yapabileceğiniz bir olay değil, üzerinde çok çalışmalısınız. çalışan her daim başarır.