Günümüzde mobil uygulama ve web siteleri gibi kullanıcı odaklı projelerde iki temel kısım vardır: front-end ve back-end. Kısaca bu iki kısıma da hakim olan programcıya full stack developer denir.
Gelin full stack developer neymiş, biraz daha inceleyelim.
Front-end yani basit anlamıyla arayüz kısmını projenin kullanıcıya aktarılan kısmı olarak düşünebiliriz.
Back-end ise sunucu bazlı çalışan sistemlerden oluşan kısımdır.Dolaysıyla birbirinden izole oldukları için öğrenilmesi gereken bilgiler genel olarak farklıdır.
Örneğin front-end kısmında görev alan bir yazılımcı Html, Css ve JavaScript dillerine hakim olması gerekirken back-end kısmında görev alan bir yazılımcı PHP,C# gibi dillere hakim olması gerekir.
PHP ya da .NET (C#) platformlarında yazılmış kodlar web servislerine ya da veritabanlarına gönderilir ve burada gerekli işlemler gerçekleştirilir
Normal şartlar altında bir yazılımcının back-end ve front-end bölümlerinden sadece bir tanesine hakim olması beklenir. İki bölüme de aynı seviyede ve ileri seviyede hakim olmak oldukça zor bir durumdur.
Ama gelişen teknoloji ve yazılımcı dostu kütüphanelerin artmasıyla full stack developer arayan şirketlerde oldukça artmaya başladı.Yani .NET ya da PHP ile sunucu bazlı işlemler gerçekleştiren bir programcının aynı zamanda Html,Css ve JavaScript’de bilmesi gereklidir.
Full stack developer ünvanına sahip programcılar genel anlamda tek başına bir uygulamayı baştan sona tamamlayabilir. Yani hem arayüzünü uygulamaya dökerken aynı zamanda da arka planda çalışması gereken işlemleri de denetler.