Bence 2 sene cok uygun bir zaman, eksiduyuru gibi bir siteyi belli standartlara gore yapabilmek, hele birde database, back-end ve front-end tarafini yapabilmek demek full-stack gelistirici olma yolunda onemli bir adim ve artik bir isi yapmaktan daha cok nasil daha iyi yaparim kismina kafa yoruyorsan junior developer konumundan cikmissin demektir. Elbette hizli ogrenmek iyi ogrenmek demek degil, ogrenirken mutlaka eksik kalan, zayif kalinan yerler oluyor. insan bir taraftan da ogrendigini unutuyor, ya da ogrenilen seyler eskimis oluyor. bu degisimin hizina ayak uydurmak zor, ama html den sql e kadar bir yolda bir uretim yapabilmek demek konunun her tarafida bilgi sahibi olmak demek. Bu noktadan sonra uzmanlasmak, yani senior developor olma yolunda ilerlemek gerekiyor. tum konularda senior developer olmak cok cok zor, imkansiz degil ama cok zaman alir. o nedenle her konuda uretim yapilabilse de mutlaka bir konuda uzman gerekir.
Bu belki front-end teknolojiler olabilir. front end konusunda css ve html cok derin konular degil. Css yazarken dikkat etmissindir belli bir sure sonra css kodlari karman corman olur, iste bunun icin less veya sass konusunda ilerlemek iyi olabilir, ogrenmesi cok da zor degil, hatta css ile cozmekte zorlanan seylerin bu teknolojiler sayesinde cok kolay cozuldugunu gormek guzel oluyor. Front-end konsunda en derin konu javascript. javascript konusunda uzmanlasilir ise cok buyuk bir yol acilmis olur. javascript konusunda uzmanlasmak da o dilin temel birkac konusuna hakim olmaktan geciyor. Ornegin closure, hoisting, this, bind, call, apply, prototype, __proto__ gibi anahtar kelimler bu konuda derinlesmek icin guzel anahtar kelimelr. javascript ile ilgili bir diger konu da ecmascript 6, mutlaka bilinmesi gerekir. daha sonra onune birkac yol cikar, angular, react veya vue.js. ileride bunlar tipki jquery gibi javascript biliyorum diyen biiri icin standart olacaktir. tum bunlarin yaninda C# veya Java dan bilen biri icin Typescript hem ogrenmesi kolay hem de iyi kod yazmak icin birebir bir teknoloji. Zaten tum bunlarda ilerlemek birkac yil alir. Javascript konusunda bu
www.youtube.com guzel bir kaynak, uluslararasi buyuk firmalarda calisanlar ne seviyede gormus olursun, kendini karsilastirabilirsin. ayrica udemy sitesini tavsiye ederim.
Bir baska uzmanlasilacak alan ise bir back-end dil olabilir. C# bildigin icin o yolda ilerleyebilirsin. Web servisler konusunda ilerlemek cok onemli, cunku artik web, mobile hepsi web service uzerinden calisiyor. o dilde populer framework, ve kutuphanelere hakim olmak gerkir. bunun yaninda verimli algoritmalar yazabilmek gerekir. algoritme konusunda kendini
www.hackerrank.com sitesindeki ornekleri yazmak ile ilerletebilirsin. buyuk firmalar (google, amazon vs.) is gorusmelerinde dil ile ilgili birsey sormaz, dili herkes biliyor zaten. sorduklari sorular o dilde problem cozebilmen, iyi algoritmalar yazabilmendir.
bir diger alan ise database sistemleri, mimarileri. her ne kadar sql bilsen de bu konuda uzmanlik da cok baska birsey, ben de cok iyi bilmedigim icin cok da birsey soyleyemem.
bir diger alan ise sistem admin tarafi. linux bilmek olmazsa olmaz. isletim sistemlerini tanimak da onemli. bunun yaninda amazon web service gibi bulut sistemleri de bilmek onemli.
bu alanlardan birinde ilerleyip uzmanlasabilirsin, o konuda senior olma yolunda ilerleyebilirsin. tabi bunlar yaninda yazilm araclarini bilmek, bir yazim methoduna sahip olmak (ornegin Test driven development) ozellikle yurt disinda gelistiricilerden mutlaka beklenen ozellikler. Unit test ya da integration test (selenium) yazabilmek onemli. Bunlarin yaninda iyi kod yazmak da onemli, her gelistirici hangi dil ile gelistirse gelistirsin bu
www.amazon.com kitabi mutlaka okumali