Web geliştirme dünyadaki tüm diğer sektörlerde olduğu gibi kendi jargonuna sahip. Full stack developer terimi konu web site yapımı olunca sürekli karşınıza çıkıyor. Bu rehberde full stack developer nedir ve nasıl olunur açıklayacağız. İpucu: Kolay olmayacak ama değecek.
İçindekiler
- 1. Full Stack Developer Nedir?
- 2. Front end developer’ın başını ağrıtacak her şey
- 2.1. Front end developer nelerden sorumludur?
- 2.2. Front end sihirbazları genellikle hangi araçları kullanır?
- 3. Nasıl göründüğünü umursamayanlar
- 3.1. Back end developer’lar ne yapar?
- 3.2. Back end developer’lar neler bilmeli?
- 4. Hepsini bir araya getirmek için…
- 4.1. Full stack development bana göre! Nasıl başlamalıyım?
- 5. Sıra geldi paraya, yazılımcı maaşları ne kadar?
Full Stack Developer Nedir?
Full stack developer nedir tam olarak açıklayabilmek için öncelikle size web site geliştirme döngüsünden bahsetmemiz gerekiyor. Bir web sitesi ne işe yarayacağı konusunda bir fikir, bir görüş ile ortaya çıkar. Sistem mühendisleri ve iş geliştiriciler ihtiyaç duyacağı fonksiyonellikleri belirler.
Şu Anda Etkin Olan Güncel Teklifler:
GET 50% OFF
DataCamp Black Friday Sale
During this DataCamp Black Friday, you can access the top-rated courses with a 50% discount. Enrol now for way less!
Sonrasında tasarımcılar UX/UI (Kullanıcı Deneyimi ve Kullanıcı Arayüzü) uzmanlarıyla birlikte kullanıcının bitmiş sitede dolaşırken neleri göreceğine karar verir. Sanatçılar sitenin görünüşüyle ilgili bitmiş bir model oluşturduğunda kodlamanın kendisi başlar.
Web sitelerin göze hitap etmesini sağlayan HTML, CSS ve JavaScript gibi teknolojilerde deneyimli insanlar sanatçıların vizyonunu hayata geçirmek için çalışır. Diğer yazılım geliştiriciler genel hedef, web sitenin gerçekleştirmesi gerekenleri gerçekleştiren sistemleri oluşturma gibi diğer önemli bölümleri tamamlar.
Peki full stack developer nedir? Her işi az çok bilen ama hiçbirinde uzmanlanmamış kişidir.
Front end developer’ın başını ağrıtacak her şey
Gelin içten dışa doğru full stack developer nedir inceleyelim. Örnek olarak diyelim ki PinkFluffyCrocs, LLC isimli bir startup online mağaza oluşturmayı, burada pembe ve pofuduk timsah figürleri satmayı düşünüyor.
Front end developer nelerden sorumludur?
Full stack developer nedir sorusuna doğrudan cevap vermese de bu bölüm full stack developer’ın nelerle uğraştığının bir kısmını anlamanızı sağlayacaktır.
Daha önce de değindiğimiz gibi nihai kullanıcının siteyi ziyaret ettiğinde gördüğü her şey front end developer’ların eseridir. Sitede gördüğünüz her resmin, geçişin, düğmenin, metnin ve videonun bir web tasarımcı tarafından daha önce orada bulunması planlanmıştır. Sonrasında front end developer tarafından buraya yerleştirilmiştir.
Front end developer web sitenin iskeletini oluşturmaktan, iyi görünmesinden ve etkileşime geçilen her farklı öğenin doğru çalıştığından emin olmaktan sorumludur.
Front end developer pinkfluffycrocs.com web sitesinin yerleşim planını kodlar. Ürün resminin nerede duracağını, nasıl görüneceğini, fiyatın nerede yazacağını, SATIN AL tuşuna bastığınızda ne göreceğiniz belirler. Kayıt olurken doğru biçimlendirilmiş bir e-posta adresi girdiğinizi ve daha pek çok şeyi doğrular. Muhtemelen bir fikir sahibi olmuşsunuzdur.
Front end sihirbazları genellikle hangi araçları kullanır?
Profesyonel front end developer’lar minimum HTML, CSS ve JavaScript’te uzman olmalıdırlar. Kullanabilecekleri diğer pek çok teknoloji bulunur. Diğer teknoloji tercihleri isteğe ve pazar talebine göre değişiklik gösterebilir.
Bu üç araçla bir geliştirici muhteşem görünen bir web sitesi oluşturabilir ancak her şeyi sıfırdan yazacağı için uzun vakit alacaktır. Burada da devreye JavaScript kütüphaneleri ve framework’leri giriyor.
Programcıların iyi anlamda tembel oldukları bir gerçektir.
TAB’a basınca metin editörü otomatik şekilde tamamlayabilecekken neden yazasınız?
Aradığınız şeyin mükemmel bir öğesi bir kütüphanede daha önce oluşturulmuşken ve indirip üzerinde düzenleme yapmak yeterliyken neden sıfırdan yazasınız ki?
JavaScript kütüphaneleri ve framework’leri bu işe yarıyor. jQuery, React.js, Angular.js ve Vue.js en popülerleri.
Hepsinde bir şekilde akıcı olmanız gerektiği için bir veya iki tanesinde uzmanlaşmak oldukça iyi bir fikir.
jQuery uzun zamandır piyasada ye alıyor. En azından temellerini öğrenmek gelecekte üzerinde çalışmanız gerekeceği için işinizi kolaylaştıracaktır.
React.js, Facebook’un oluşturduğu bir JavaScript kütüphanesidir. React, HTML’ye benzeyen bir JavaScript XML sözdizimi kullanır. MERN stack’inin bir parçasıdır.
Angular.js ise Google tarafından geliştirilmiştir ve Microsoft’un yarattığı bir programlama dili olan TypeScript’i kullanır. TypeScript, JavaScript ile birlikte çalışması için tasarlanmıştır. MEAN stack’in bir parçasıdır.
Vue.js (View olarak okunur) Evan You tarafından geliştirilmiş bir JavaScript framework’üdür. Daha önce bir Google çalışanı olan You, sevdiği bölümleri alıp tüm framework’ü hafif sıklet hale getirerek Angular.js’yi geliştirmeye karar vermiş. MEVN stack’inin bir parçasıdır.
Peki front end sihirbazıyla kıyaslandığında full stack developer nedir? Tüm bu konuları ve teknolojileri anlayan kişidir. Nasıl çalıştıklarını bilir ve kendisinden istenenleri yetire getirebilir. Ancak front end developer’lar daha derine inip front end’de gerçekten fark yaratabilirler.
Nasıl göründüğünü umursamayanlar
Yanlış anlamayın back end developer’lar genellikler kodlarının düzgün ve okunabilir olduğuna dikkat ederler. Karmaşık kodlar baştan savma bir programcı izlenimi verir.
Ancak.
Front end developer’lar sadece kullanıcıların ne gördüğünü önemser. Back end developer’ların bu umrunda değildir.
Back end developer’lar ne yapar?
Full stack developer nedir sorusuna yanıtın ikinci kısmı budur. Back end developer full stack’in yaptığının bir parçasıdır. Peki back end geliştirmede uzmanlaşırsanız neler yaparsınız?
Özetle sitenin sunucu tarafını geliştirirler. Sitenin sorunsuz çalıştığından emin olurlar. pinkfluffycrocs.com’a geri dönelim.
İstediğiniz croc’u buldunuz. Depoda olup olmadığını kontrol edip bir tane olduğunu gördünüz. Peki site bunu nasıl biliyor? Sunucuda bir veri tabanı bulunuyor. Back end bölümünde çalışanlar sürekli olarak güncel ve doğru kaldığından emin oluyor. Ayrıca bilgisayar başından 10 dakikalığına ayrılırsanız ve o croc satılırsa geri dönüp sayfayı yenilediğinizde ürünün tükendiğini görüyorsunuz.
Oturum açtığınızda back end çalışanlarının oluşturduğu işlemler üyelik bilgilerinizin doğruluğundan da emin oluyor. Şöyle düşünün; front end developer tarayıcınızda olan her şeyi kontrol ederken back end developer’lar sunucuda olan her şeyi kontrol ediyor. İki taraf da birlikte iyi çalışmalı ki her şey sorunsuz olarak çalışabilsin.
Back end developer’lar neler bilmeli?
Front end developer için olduğu gibi back end developer da bazı şeylerde uzmanlaşmış olmalıdır. Bir back end developer olarak çalıştığınız şirkete ve yaptığınız şeylere göre PHP, node.js veya Python gibi programlama dillerini kullanarak sunucu taraflı eylemleri kodlamanız gerekebilir.
Express.js, Laravel veya Ruby on Rails gibi web uygulama framework’le de haşır neşir olmanız gerekiyor.
Bir back end developer olarak veri tabanlarıyla da kapsamlı olarak çalışıyorsunuz. Veri tabanları neden mi lazım? Başka nasıl bilgiler saklanacak?
Diyelim ki bir kullanıcı pinkfluffycrocs.com sitesinde hesap oluşturdu. Tüm ayrıntıları veri tabanına kaydetmeden böyle bir kullanıcı olduğunu ve doğru oturum açma bilgilerini girdiğini nasıl bileceksiniz? Back end çalışanlarınızın sürekli olarak veri tabanını güncellemeden depoda Mavi Gözlü ve Deri Ceketli Pink Fluffy Croc Special Edition olup olmadığını nasıl bileceksiniz? İster sevin ister nefret edin veri tabanları her zaman gereklidir.
Temel düzeyde front end geliştirme ve sunucu yapılandırması da bilmeniz gerekiyor. Ama bu alanlarda sürekli olarak çalışmıyorsunuz.
Sunucu taraflı programlama için Node.js, PHP veya Python gibi uygun bir kodlama dili bilmelisiniz. Veri tabanları için en popüler seçenekler de MongoDB, MySQL ve Oracle.
Peki full stack developer nedir? Back end’de gereken tüm işleri tamamlayan ve yardım gerektiğinde front end developer’lara yardım eden kişidir. Full stack developer bu konularda bir uzman kadar becerikli değildir. Web geliştirme zengin içerikli bir konudur.
Hepsini bir araya getirmek için…
Full stack developer nedir? Elinden her iş gelen ama hiçbir işte uzman olmayan kişidir. Öğle yemeğinden önce yetişmesi için React.js işlerinde front end çalışanlarına yardım eden sonrasında back end çalışanlarına da bir el uzatan kişidir.
Kulağa muhteşem gelse de full stack developer olmanın büyük bir dezavantajı var.
Programlama ciddi anlamda karmaşık bir konudur. Senior Front end Developer olabilmek için yıllarca deneyime ihtiyaç duyuluyor. Aynı şey back end için de geçerli.
Full stack için bu çizgiye ulaşmak daha da uzun sürer. Ulaşsanız bile şirkette bir full stack’ten daha iyi React.js bilen kişiler veya bir full stack’in beceremeyeceği Node.js işlerini hemen halledebilecek kişiler her zaman olacaktır.
Bir alanda uzman olmak istiyorsanız full stack developer olmayın. Ama bir şey yerine her şeyden azar azar bilgi sahibi olmak istiyorsanız full stack tam size göre. Kariyerde sizin için full stack developer nedir: Cennet mi cehennem mi?
- Kullanması kolay
- Kaliteli içeriğe sahip
- Fiyat konusunda saydam
- Tamamlamada ücretsiz sertifikalar
- Veri bilimi becerilerine odaklanıyor
- Esnek eğitim programları
- Basit tasarım (gereksiz bilgi yok)
- Yüksek kaliteli dersler (ücretsizler dahil)
- Çeşitli özellikler
- Nanodegree programları
- Firmalara uygun
- Ücretli tamamlama sertifikası
- Sektörde iyi biliniyor
- Pek çok özelliğe sahip
- Dersler üniversite düzeyinde
- Üniversite düzeyince dersler
- Şirketler için uygun
- Ücretli tamamlama sertifikası
Full stack development bana göre! Nasıl başlamalıyım?
Diyelim ki daha önce bir satır kod dahi yazmadınız ama bu dünya sizi büyülüyor.
Şimdi full stack developer olmak için bilmeniz gereken her şeyden bahsedeceğiz.
Öncelikle full stack developer olma yolunuzda ilk yapmanız gereken şey HTML vs CSS’te uzmanlaşmak olacak. Kariyerinizde yapacağınız her şey bu iki şeye dayanıyor, web sitelerde olduğu gibi.
Sonrasında hedefinize ulaşmak için iki yol bulunuyor. Back end’den front end’e veya front end’den back end’e yol almak. HTML ve CSS öğrendiğinizi varsayarsak front end’den başlayıp back end’e geçiş yapmak daha iyi bir yol olarak görünüyor.
Bir sonraki adım olmak istediğiniz full stack developer nedir onu belirlemek. Bu tamamen peşinden koşmak istediğiniz web geliştirme çözümüne bağlı.
Solution stack’ler sıklıkla birlikte kullanılan teknolojilerin kombinasyonudur. Alanınızdaki iş piyasasında hangi beceri kombinasyonlarının rağbette olduğunu analiz edip ona göre öğrenmeye başlamalısınız.
Başlangıç olarak MERN stack’ini öğrenmeyi düşünebilirsiniz çünkü hepsi JavaScript’te oluşturulmuştur ve sorunsuz çalışır.
MERN stack’in ne olduğundan bahsetmiştik ama tekrar bir gözden geçirelim:
M - MongoDB, veri yönetiminden sorumludur.
E - Express.js, Node.js ileçalışmak için tasarlanmış bir sunucu framework’üdür.
R - React.js, Facebook’un JavaScript kullanan front end kütüphanesi ve framework’üdür.
N - Node.js, normalde front end odaklı bir dil olan JavaScript’i back end’de kullanmanıza olanak sağlayan bir çalıştırma ortamıdır.
Öncelikle JavaScript tabanlı araçları kullanmanızı tavsiye ediyoruz çünkü aynı dili kullanmanız sizi olabildiğince hızlandırır.
Ayrıca PHP veya Python gibi diğer back end dillerini öğrenmenin getirdiği yerleşmiş kavramlar olmadan Node.js’de bilmeniz gerekenleri çok daha kolay öğrenebilirsiniz.
Peki bunu neden söylüyoruz?
Python bilgisine sahip olup Node.js öğrenen bazı kişiler front end dilinin back end görevlerde kullanılması gerçeğini kabullenemiyor.
Node.js öğrenmek zor gelebilir. Ama ısrarcı olursanız mutlaka gerçekleştirebilirsiniz.
MongoDB, Express, React ve Node’da yetkin hale geldikten sonra kendi portfolyonuzu oluşturup full stack developer olarak Junior pozisyonlar arayışına girmelisiniz. Deneyim sahibi olmak için bir süre freelance olarak çalışmayı da göz önünde bulundurmalısınız.
Sakın rehavete kapılmayın! MERN geliştiricisi olarak Senior düzey bir işte çalışsanız dahi uzmanlıklarınızı geliştirmeye çabalamalı, MERN’le alakalı araçları öğrenmeyi sürdürmelisiniz.
Burada seviyede MySQL, Angular.js (TypeScript öğrenmeniz gerekecek), Vue.js gibi diğer araçlarla çalışmak için tüm bilgilerinizi adapta etmeyi öğrenmeniz gerekiyor.
Ayrıca PHP, Python ve web geliştirmenin üst seviyelerinde yer alan yaygın dillerle de çalışmayı öğrenmelisiniz.
İşin içine daha fazla girdikçe full stack developer nedir sorusuna daha da iyi yanıt verir hale geliyorsunuz.
Yazılım geliştiriciler için hiçbir zaman “Öğreneceğim bir şey kalmadı. Her şeyi hallettim.” diyecek bir seviye bulunmuyor.
Bu mestek kafa karışıklığına ve bilgisizlikle sonsuz savaş halinde. Kafa karışıklığı bir web geliştiricinin hayatında yoldan sapma değil normal yoldur.
Peki full stack developer nedir? Görevin imkansızlığına rağmen kendini web geliştirme hakkındaki her şeyi öğrenmeye adamış bir cesur yürektir. Full stack web developer nasıl mı olunur? Ufaktan başlayıp, akıllıca öğrenip asla pes etmemekle.
Fırtınalı bir denize yelken açtınız. Bir yılda başarırsanız sizinle gurur duyacağız. Yanlış anlamayın, gerçekleştirmek mümkün ama oldukça zor. Becerebilecek misiniz?
Biliyor Muydunuz?
Kariyeriniz için hangi online eğitim platformunun daha iyi olduğunu merak etmiş miydiniz?
Sıra geldi paraya, yazılımcı maaşları ne kadar?
Gördüğünüz gibi sıfırdan bir full stack developer olmak oldukça zor bir iş. Eğer daha önceden front veya back end developer olarak çalıştıysanız biraz daha kolay olacaktır.
Çaba sarf etmeye değer mi? Gelin birlikte Amerika’da yazılımcı maaşların ne kadar göz atalım.
indeed.com’a göre Amerika’da ortalama full stack developer maaşı yılda 112.527$. Ortalama bir front end developer yılda 104.708$ kazanırken back end developerlar ise 121.086$ kazanıyor.
Aslında bakarsanız bu yazılımcı maaşları için rakamlar oldukça iyi. Ortalama front end ve back end maaşlara yakın. Mantıklı da çünkü ne front end’de ne de back end’de uzmanlığa sahipler.
Peki kariyerinizin başlangıcındaki full stack developer maaşı ne kadar olacak? Muhtemelen sadece front end’le başlamanızdan daha iyi olacak. Back end developer olarak başlarsanız daha da iyi olabilir.
Full stack developer nedir, nasıl olunur macerasına başlamadan önce hiç kodlama yapmadıysanız daha önce hiç uzmanlığa sahip olmadığınız anlamına geliyor. Front end veya back end alanlarından birinde uzmanlaşıp, iş bulup birkaç yıl çalıştıktan sonra full stack web developer olmak daha iyi olacaktır.