Javascript ve React sonrası iş bulmak için ne öğrenmek gerekiyor?

Yazdığın iş fullstack olarak çalıştıran bir iş. Sadece frontend değil. Şirketler, aldığı personeli her alanda kullanmak istiyor olabilirler. Genelde küçük ve orta segment firmalar bunu yapıyor. Yazılım ekibi 5-10 kişi. Onlarda her şeyi yapabilsin isterler ki bence haksızda sayılmaz. Biraz daha büyük ve kurumsal yerlerde ekipler ayrışabiliyor. Hatta sadece ekip değil iş bölümleri de ayrışıyor ve her işi farklı ekipler yönetebiliyor. İşte sallıyorum firma altında A, B, C segmentleri var. Bu a segment altında 100 kişi çalışabilir. Frontend, backend, test, yapay zeka, mobil (hatta Android & iOS ayrı) ayrı ekipler. Aynı ekip mantığı b segment de de olabilir. C de 5-10 kişi olup fullstack takılanda olabilir. Dediğim gibi işin büyüklüğüne göre; iş kolları ve ekipler büyür ve ayrışabilir.
İş ilanları da bu ekiplere göre değişir. Senin baktığın iş fullstack. Sen React olarak girersin 2 gün sonra .net yazarsın. Bunu bekliyorlar.
Bazı iş ilanlarına bak spesifik alan üzerinde detaylandırırlar. Backend, frontend, Android dev falan.
O yüzden iş ilanından şirkette nasıl bir ekipte olacağını az çok kestirirsin. Biraz daha takılınca ve farklı işler görünce bazı maddelerin dümenden yazıldığını anlayacaksın. Agile & scrum. Ya bunu bilmese ne olacak? İş yerinde öğretirsin. 1 - 2 hafta geçer, sprint mantığını, jira-trello artık ne ise onu kullanmayı, groom spike toplantılarının ne olduğunu öğrenir. 1-2 haftada çözer yani. Çok da takmamak lazım. Bilmiyorsan tabii ki araştırırsın kavramlara uzak kalmazsın. İşleyişi ekip sana öğretir.

Attığın iş ilanının bende yarattığı etkiyi söyleyeyim;
  • Jquery, soap, Angular2+ ile projenin bayağı eskide kaldığını ve halen yeni yapıya geçmediğini rahatça anlıyorum. Anlaşılan altyapı .net üzerine kurulu.
  • Clean architecture bilmesini istiyormuş. O halde eski projede bu yapı yoktur. Ya eski projeyi sıfırdan tekrar design ediyorlar. Ya da yeni projeleri modern sistemler üzerinde çalışıyorlar ya da öylesine bir madde yazmak için yazılmış. 3 durumu açıklayayım;
1. eski projeyi yeniden yazmak; şirket, çalışan bir projeyi, bütçeyi ve zamanı düşünmeden modern hale getirmeyi göze alabiliyor. Gerçekten iyi. Çoğu şirket, proje çalışsın yeter gözüyle bakar. Kodun mimarisi ile ilgilenmez. Büyük bir artı.
2. yeni projeler; şirket göze almıyor ama ekip modern sistemleri takip etmiş ve kendilerini adapte edebiliyorlar. Ekip +.
3. öylesine bir madde: Umarım öylesine değildir :) büyük bir eksi.

  • Unit test; gerçekten unit testlere önem veriyorlarsa büyük bir artı demektir. Unit teste zaman ayırmak, deploy aşamasında testleri çalıştırmak. Kod yazayım çalışsın yeter gözüyle bakılmadığını gösterir. Ama genelde dümenden yazılan bir madde bu.
  • Agile / scrum. Yine büyük bir artı. Şirket belli bir kültüre sahip. Ekip iş planlamasını yapabiliyor. Ekip kendi kendini yönetebiliyor. Büyük bir artı. Tabii yine dümenden yazılabilecek bir madde.

Genel olarak değerlendirirsek; proje eskide kalmış. Devops, git, Solid, dry gibi konulardan bahsetmemeleri eksi. Ama ekip ve şirket kendini modern hale getirmeye çalışıyor gibi. Tabii ortada büyük bir risk var. Tüm bunların dümen olması ve işe girince monoton takılacak olman. Ayrıca 4 senelik tecrübe ile bunları istiyorlarsa, ekip ileri düzey mühendislik bilgi sahibi değil gibi hissettim. Ben olsam başvuru bile yapmam.

Uzun bir yazı olmuş. Buraya kadar okuyanlara teşekkürler.

Detaylı yorum için teşekkür ederim merakımdan girip baktığım bir front end iş ilanıydı sadece React bitirince karşıma ne çıkar merak etmiştim. Bu kavramların çoğuna yabancıyım. Biraz soğudum açıkçası.
 
Detaylı yorum için teşekkür ederim merakımdan girip baktığım bir front end iş ilanıydı sadece React bitirince karşıma ne çıkar merak etmiştim. Bu kavramların çoğuna yabancıyım. Biraz soğudum açıkçası.
Merak etme zaten senden mid veya senior bilgisi istemeyecekler. Junior iş ilanlarına bakmanı tavsiye ederim. Geliştirilmek üzere diye başlayan birçok iş ilanı bulabilirsin. Bu iş ilanı mid seviyesi. Ama o kadar da detaylı değil. Bunlardan 20 kat daha fazla teknoloji ile tanışacaksın. Korkudan ziyade, yeni teknolojileri öğrenmekten haz alman beklenir. ArGe duygusu gerçekten çok önemli. Bu neymiş, nasıl kullanıyorlar, ben nasıl yapabilirim gibi sorular kıymetli sorular.
Öyle React dışında 2-3 tane farklı teknoloji adı duyunca soğuyorsan, kariyer planını yeniden gözden geçirmeni tavsiye ederim.
 
Rasgool bu ilanı irdeleyince ilanı internetten arattım, ben de bikaç şey söyleyeyim arkadaşlar.

https://www.linkedin.com/jobs/view/frontend-developer-at-mikrogrup-3918141546/ bu ilan çıkıyor.
  • Üniversitelerin ilgili bölümlerinden mezun,
  • En az 4 yıl yazılım geliştirme deneyimine sahip,
  • İyi seviye HTML, CSS, JavaScript ve jQuery bilgisi olan,
  • Unit test deneyimine sahip,
  • Angular 2+, React.js, Vue.js gibi modern JavaScript kütüphane/ framework'lerden herhangi biri ile çalışmış,
  • Clean Architecture kullanımına hakim,
  • ASP.Net MVC teknolojisinde deneyimli,
  • SOAP ve Restful servislerle çalışmış,
  • Agile/Scrum metodolojileri hakkında bilgi sahibi olan ve bu metodolojilerde çalışmış,
  • İletişim becerileri kuvvetli,
  • Takım çalışmasına yatkın,
  • Teknik dokümanları anlayabilecek düzeyde İngilizce bilgisi olan.
Öncelikle bu firma, muhasebe, stok yönetim, dış ticaret vb. çeşitli yazılımlar üreten bir firma, küçük şirketlerden kobilere hizmet verebilecek düzeyde, pek çok firma gibi e-dönüşüm ya da bulut hizmeti vb. sunduklarını da söylüyorlar. 10-15 kişilik bir startup firması değil, 1988de kurulmuş, iddialarına göre yüzlerce çalışanı olan (1988de direkt yazılım ile mi piyasaya girdiler, çalışanların ne kadarı direkt yazılımcı vs. bilmiyorum) bir firma.

Bu firmalarda ön muhasebe, muhasebe, bordro vs. yazılımlarının hem çok antika legacy kodları olabilir, zaten bu kodlara özellikle de mevzuat yani logic barındıran yerlerine yeni arkadaşları pek dokundurmazlar, hem mevzuatı, hem de kodlamadaki teknolojiye oldukça hakim olman gerekir ki mesela erp ve bordro uygulaması deneyimli Delphi uzmanı da arıyorlar bir ilanlarında, angular, react vs. ile bu tür uygulamaların backendinin kodlandığını duymadım, sanmıyorum, belki BFF tarzı, apilere istek atan temel düzeyde kullanılıyor olabilir js frameworkleri.

Bu sebeple bu iş fullstack denemez diyorum, mevcut programların (asp.net kullanan eski uygulamalar mesela) arayüzlerinde değişiklik yapma, yenilerini ekleme odaklı klasik bir frontend işine benziyor, işin içine bordro bilmemne girdi mi asp illa bir yerden fırlıyor zaten. Bu firma muhasebe, bordro vb. yazılımlarla yani biraz antika işlerle uğraştığı için asp.netten de anlayan birini arıyor olmalı.

Yani şirket ne arıyor, ilk tercihi üniversite mezunu ve 4 yıl deneyimli birisi. "SOAP mı, o da ne hiç duymadım, olsun işe girince öğrenirim" diyen birini tercih etmiyor yani, bilen birisini alabilecekken neden bilmeyenini alayım, yıllarca apilerle çalışmışını alabilecekken neden en temel api kavramlarından bihaberini alayım diyor haklı olarak.

Ya da "siz bana projenin planını yazıp çizip verin, ben 3 ay sonra size teslim ederim" diyen gözükara cevval arkadaşları da tercih etmiyor, agile metodolojisi ile çalışmış şahıs arıyor, yani bazen ortada plan olmasa da çalışabilecek, ya da istenenleri yaptık ettik, son dakikada büyük bir revizyon geldiği zaman ne yapacam ben şimdi demeyecek vs. vs. bir çalışan tercih ediyor, sprintlerle çalışma ve sürekli rapor verme, ihtiyaç analizi vs. kültürü olan bir ortam mevcut muhtemelen ve buna uygun çalışan arıyor, yoksa bu agile, scrum, kanban vs. ne olduğu bir internet araması ile ya da işe girdikten sonra bikaç günde öğrenilebilecek şeyler, önemli olan bu fikri öğrenmiş, benimsemiş ve uyum içinde çalışabilmiş çalışan aranıyor olması. Mesela siz elinizde iş analizi olsun yeter, telsiz kapatıp süper kod yazıyorsunuzdur ama takım çalışmasına yatkınlığınızdan değişen ihtiyaçlara cevap vermeye kadar çeşitli özellikleriniz yoksa pek çok firma için uygun çalışan değilsinizdir, firma da bu kavramların sözlükteki karşılıklarını bilenini değil direkt uygulamışını arıyor. (kendi çalışma stilinden vazgeçmeyenlerin çoğu freelance olarak takılır, ya da bilgisayar dehasıdır şirkette kimse ona ses çıkaramaz binde bir oranda)

Clean architecture, unit test gibi şeyler backende mahsus değil bu arada, en basitinden bir .js dosyası aynı anda alakasız birkaç işi yapıyorsa bu kod sıkıntılı demektir, sorun olduğunda bulmak, koda ilave yapmak maliyetli demektir mesela ya da site sayfalarının açılması, bazı fonksiyonların çalışıp çalışmadığının kontrolü, response time takibi vb. gibi konuların anlaşılmaz bir durumu yok, otomatize edilmesi ve sürekli testlerin tekrarlanması bile lazım selenium gibi toollar ile. Architecture değiştirmek çok maliyetli bir şey olduğu için mimarisel sıkıntısı olan eski projelerde büyük değişiklik yapmanızı istemezler elbette, ancak düzgün mimariye sahip projelerine ve yeni yazılacak projelerine dan dun diye mimariyi sallamadan kod yazılmasını istemiyorlar çok büyük ihtimalle, niye istesinler.

Özetlersem,

İş ilanı full stack değil, front end. (devopsçu aramıyorlar yani)

Yani frontend teknolojisi olarak, css, js, html gibi Allahın emri teknolojileri bilmek lazım
Düz js dışında bir tane frameworkten anlamak lazım, mesela react bilen birini react kullanan bir projeye aktarabilecekleri gibi, react öğrenebilmiş biri atıyorum vue da öğrenebilir o zaman ekibe alabiliriz anlamına gelir.

Frontendden bağımsız olarak, programlama konseptleri, unit test, clean architecture, rest, mvc mimarisi (asp.net mvc değil, pattern olan) vb. bilmek lazım

Programlama dışında, proje geliştirme süreçleri hakkında, agile, scrum gibi şeyleri bilmek lazım.

Bu iş ilanı hem bu kavramlara hakim, hem üniversite mezunu, hem de deneyimli birisini aradığı için en azından piyasada bu özelliklere sahip birilerine talebin olduğunu gösteriyor, bu özellikleri barındırmayan junior ilanlarına göz atmalısınız, bir teknoloji öğrendim ve frontend developer oldum gibi bir olay yok rasgool'un dediği gibi, sürekli öğrenmeniz gerekecek.
 
@count Eline sağlık hocam. İş ilanının tamamını ve şirketi gördükten sonraki fikirlerim;
Klasik, üst düzey olmayan bir iş ilanı. Yeni teknolojilerle uğraştıklarını, kodun mimarisi ile ilgilendiklerini sanmıyorum. Monoton gelen işleri yapacak bir eleman lazım adamlara. ilgili üniversite ve 4 yıl tecrübe koştuğuna göre, üniversite beklentisi Bilgisayar Programcılığı falandır. Ben Comp Eng mezunu olduğum için bu iş ilanı benlik değil. Küçümsemek gibi düşünmeyin, ileri düzey mühendislik istemiyorlar, monoton verilen bir işi yapın geçin mantığı vardır %90. Proje mimarilerini araştırayım, argeye zaman ayırayım, modern teknolojilere ayak uydurayım falan yoktur. Bu sebeple ben 2 gün bile dayanamazdım sanırım.
İş ilanı full stack değil, front end. (devopsçu aramıyorlar yani)
Evet FullStack değil, Frontend ilanı bu. .Net, clean architecture istemeleri backend tarafının altyapısı .net üzerine kurulu olduğunu düşünmem idi. Handle kısmında, repo yok, direkt api call işlemi yapıyorlar o halde. O zaman doğru, tamamen frontend. Ama yok repo var, db erişiyorsan frontend den çıkar bu.

DevOps için kendini özel geliştiren kişiler tabiki var. Fakat bir şirket için sürekli çalışması gereken bir eleman değiller bence. Sistemi ekip beraber kurabilir. Sonra herkes kendi yaptığı işi canlıya kadar taşıyabilir. Bu sebeple devops kısmı nasıl ilerliyoru her developer bilmesi gerekir. İş kartı geldiğinde, geliştirme sürecinden (CI), deploy(CD) kısmına kadar bilmesi gerekiyor diye düşünüyorum. Docker, Kubernetes, Jenkins, Github Actions, Gitlab bil yani bir zahmet o kadar 4 yıllık tecrübe istemişler, bunu istememişler. Scrum & Agile dan daha önemli bir konu bu. Ben 4 yıllık birini bırak, 2 yıllık tecrübeli junior-mid seviyesi birini bile işe alırken, Docker (Veya benzer virtualization teknolojileri) kullanmadıysa direkt elerim yani.
 
Değerli yorumlarınız için teşekkür ederim bu benim rastgele bulduğum bir ilandı bu kadar detaylı incelemenizi beklemiyordum bilgisayar programcılığı mezunuyum yaş 32 bu arada okulda bir şey öğrenmedim çalışmaktan da fazla fırsatım olmadı zaten. Kendi çabalarımla HTML CSS JS bitirdim şimdi React düşünüyorum ilerisi için yani bir nevi roadmap olarak tavsiyeleriniz ne olur? Front end meslek olarak yürütmek istiyorum. Sizler kadar bilgi sahibi değilim bu konularda o yüzden ricam varsa JS yeni bitirmiş birine önerilerinizi dinlemek isterim. Freelancer olarak mı devam edeyim yoksa belirttiğiniz konularda çalışmaya devam edeceğim belirli bir sıra ile bu arada JavaScript'i gerçekten sevdim.
 
Kendi çabalarımla HTML CSS JS bitirdim şimdi React düşünüyorum ilerisi için yani bir nevi roadmap olarak tavsiyeleriniz ne olur?
Hocam yaşınızdan dolayı zaman sizin için kritik. React üzerinden devam edebilirsin. Sonuçta oradan bir adım atmışsın. Bunu sürdürmeni tavsiye ederim.
Roadmap olarak; React üzerinde projeler yap. Gerçek projeleri incele vs. Ama React bağımlı olmanı tavsiye etmem. Diğer frameworkleri de bir dene. En azından hepsinde benzer projeler yap (Klasik ToDo App gibi). Diğer teknolojilere bir aşinalığın olur. Bu sayede Vue veya Angular isteyen yerlere rahatça başvuru yapabilirsin.

Freelancer olarak mı devam edeyim
Kendinizi yeterli görüyorsan, iş alabilirsin. Freelance kısmında, yeni olduğun için pastadan büyük pay alamayabilirsin. Bu sebeple, önce bir şirkete girip oradan devam etmek mantıklı olabilir. Ama yine iş ararken, bir yandan da gelen freelance işleri değerlendirebilirsin.
 

Technopat Haberler

Geri
Yukarı