Web Tasarım

Web Geliştirici Nedir, Ne İş Yapar?

Web Geliştirici Nedir, Ne İş Yapar?

Web geliştirici, web sitelerini ve web uygulamalarını kod yazarak çalışır hâle getiren kişidir. Bir tasarımı tarayıcıda çalışan sayfalara çevirir, formların, üye girişlerinin, ödeme ve arama gibi işlevlerin arkasındaki kodu yazar; var olan bir siteye yeni özellik ekler, hataları giderir, güvenlik ve sürüm güncellemelerini takip eder. Kısacası web tasarımcı sitenin nasıl görüneceğini ve nasıl kullanılacağını planlarken, web geliştirici o planın gerçekten çalışmasını sağlar.

"Web geliştirici" geniş bir şemsiye terim. Bu şemsiyenin altında çok farklı işler yapan insanlar var. Aşağıda bu uzmanlıkları, tasarımcıyla geliştirici arasındaki iş bölümünü, kullanılan dilleri ve bu mesleğe nasıl girilebileceğini anlatıyorum.

Ön yüz, arka yüz ve full-stack: üç farklı uzmanlık

Ön yüz (front-end) geliştirici

Ön yüz geliştirici, ziyaretçinin tarayıcısında çalışan kısmı yazar. Tasarımcının hazırladığı ekranları HTML, CSS ve JavaScript ile kodlar; sayfanın telefonda ve geniş ekranda doğru görünmesini, menülerin açılıp kapanmasını, formların anında hata göstermesini sağlar. Sayfanın hızlı yüklenmesi, erişilebilir olması ve farklı tarayıcılarda aynı davranması da onun sorumluluğundadır. React, Vue ya da Svelte gibi kütüphane ve çatılar bu alanda sık kullanılır.

Arka yüz (back-end) geliştirici

Arka yüz geliştirici, ziyaretçinin görmediği sunucu tarafında çalışır. Bir form gönderildiğinde verinin nereye kaydedileceğini, üye girişinin nasıl doğrulanacağını, ürün stoklarının nasıl güncelleneceğini o yazar. Veritabanı tasarlar, başka sistemlerle konuşan bağlantıları (API) kurar, sunucunun güvenliğini ve performansını gözetir. PHP, Python, Node.js, Java, C# gibi diller ve MySQL, PostgreSQL gibi veritabanları bu tarafın araçlarıdır.

Full-stack geliştirici

Full-stack geliştirici her iki tarafta da iş çıkarabilen kişidir. Küçük ve orta ölçekli projelerde, tek kişinin bir siteyi baştan sona kurabilmesi büyük kolaylık sağlar. Büyük projelerde ise full-stack geliştiriciler genellikle bir tarafta daha derin uzmanlaşır, diğer tarafı da anlayıp ekiple köprü kurar.

Web tasarımcı ile web geliştirici arasındaki iş bölümü

Küçük işlerde iki rolü aynı kişi üstlenebilir, ama yaptıkları iş farklıdır. Fark en kolay bir tabloyla görülüyor:

Web tasarımcıWeb geliştirici
Ana soruSite nasıl görünmeli, nasıl kullanılmalı?Site nasıl çalışmalı?
Ürettiği şeySayfa düzenleri, prototipler, renk ve yazı sistemiÇalışan kod, veritabanı, sunucu kurgusu
Tipik araçlarFigma, Penpot, Photoshop, IllustratorKod editörü, terminal, Git, tarayıcı geliştirici araçları
Başarı ölçüsüZiyaretçi aradığını kolayca buluyor mu?Sayfa hızlı, güvenli ve hatasız çalışıyor mu?

Tasarım tarafının hangi parçalardan oluştuğunu web tasarımın ne olduğunu anlattığım yazıda ayrıca ele aldım.

Bir web geliştiricinin gününde neler var

Dışarıdan bakınca geliştirici sürekli yeni bir şey yazıyormuş gibi görünür. Oysa zamanın önemli kısmı var olan kodla geçer:

  • Yeni bir özelliği planlayıp yazmak ve test etmek
  • Bir hatanın nedenini bulmak; çoğu zaman düzeltmekten uzun süren kısım budur
  • Sunucudaki PHP ya da başka bir dilin sürümü yükseldiğinde sitenin uyumlu kalmasını sağlamak
  • Kullanılan kütüphane ve eklentilerdeki güvenlik güncellemelerini uygulamak
  • Yavaş açılan sayfaları bulup hızlandırmak
  • Ödeme, kargo, e-fatura gibi dış servislerle bağlantı kurmak
  • Ekipteki diğer geliştiricilerin kodunu incelemek ve kendi kodunu belgelemek

Web geliştiricinin kullandığı diller ve araçlar

Her geliştiricinin bildiği diller farklıdır, ama ortak bir temel var:

  • HTML ve CSS: Sayfanın iskeleti ve görünümü. Ön yüzde çalışan herkesin iyi bilmesi gerekir.
  • JavaScript: Tarayıcıda etkileşimi sağlayan dil. Node.js ile sunucu tarafında da kullanılır.
  • Sunucu tarafı diller: PHP, Python, Java, C#, Go gibi. WordPress PHP ile yazıldığı için PHP, Türkiye'de birçok web projesinde karşınıza çıkar.
  • SQL: Veritabanından veri okumak ve yazmak için kullanılan sorgu dili.
  • Git: Kodun sürümlerini takip etmeye yarar. Eskiden SVN ve CVS gibi sistemler yaygındı; bugün projelerin büyük çoğunluğu Git kullanıyor.
  • Editör ve geliştirme ortamı: Visual Studio Code, WebStorm, PhpStorm, Sublime Text gibi. Hangi programların ne işe yaradığını web tasarım ve geliştirme programlarını karşılaştırdığım yazıda anlattım.
  • Komut satırı ve sunucu bilgisi: Dosya aktarmak, sunucuya bağlanmak, alan adı ve SSL ayarlarını yapmak için temel düzeyde gerekir.

Teknoloji sürekli değiştiği için bu listenin bir kısmı birkaç yıl içinde başka araçlarla yer değiştirebilir. Bu meslekte yerinde saymak, güncellenmeyen bir telefon gibi zamanla güvenlik açığı ve uyumsuzluk demektir.

Site sahibi olarak ne zaman bir geliştiriciye ihtiyaç duyarsınız

Birkaç sayfalık, nadiren değişen bir tanıtım sitesi için sürekli bir geliştiriciye ihtiyaç olmayabilir. Ama bazı anlar vardır ki bir geliştirici olmadan işin içinden çıkmak zorlaşır.

Bunun en iyi örneklerinden biri mobil uyum dönemiydi. Google, siteleri artık öncelikle mobil sürümleri üzerinden değerlendirdiğini duyurdu ve bunu mobil öncelikli dizine ekleme belgelerinde açıkça anlatıyor. O dönemde bilgi açısından zengin ama mobilde düzgün açılmayan birçok sitenin sahibi, sitesini apar topar güncellemek zorunda kaldı. Elinin altında bir geliştirici olanlar bu geçişi daha rahat atlattı; olmayanlar bir anda geliştirici aramaya başladı.

Bu geçişlerde gözlemlediğim bir şey de altyapının önemi oldu. Yaygın ve güncellenen bir altyapı üzerinde duran siteler tasarım değişikliğine daha kolay uyum sağladı. Kapalı ya da bakımı bırakılmış özel yazılımlarla kurulan sitelerin bir kısmı ise yeni bir sisteme taşınmak zorunda kaldı. Taşıma sırasında adresler değişince de çok sayıda kırık sayfa ortaya çıktı. Bunun neden önemli olduğunu 404 hatasının SEO etkisini anlattığım yazıda bulabilirsiniz.

Somut durumlara gelirsek, şunlardan biri sizin için geçerliyse bir geliştiriciye ihtiyacınız var demektir:

  • Sitenize hazır temanın ya da eklentinin karşılamadığı bir özellik eklemek istiyorsunuz
  • Sunucu sürümü yükseldi ve sitede hata çıktı
  • Site başka bir altyapıya ya da sunucuya taşınacak
  • Bir dış servisle (muhasebe, kargo, ödeme) bağlantı gerekiyor
  • Site yavaş ve nedenini bulamıyorsunuz

Web geliştirici olmak için izlenebilecek yol

  1. HTML ve CSS ile başlayın. Basit bir kişisel sayfayı sıfırdan kodlayın; telefonda da düzgün görünsün.
  2. JavaScript öğrenin. Önce dilin kendisini, sonra bir kütüphaneyi.
  3. Bir sunucu tarafı dil ve SQL seçin. Bir form verisini veritabanına kaydedip listeleyen küçük bir uygulama yazın.
  4. Git kullanmaya erken başlayın. Çalışmalarınızı herkese açık bir depoda tutmak, ileride portföyünüz olur.
  5. Gerçek bir proje bitirin. Bir akrabanın işletmesi ya da bir dernek için yapılmış, yayında olan küçük bir site, tamamlanmamış onlarca denemeden daha çok şey öğretir.
  6. Kaynakları resmi belgelerden okuyun. Web teknolojileri için MDN, kullandığınız dil ve sistemin kendi belgeleri en güvenilir başvuru yerleridir.

Bu mesleği düşünenler genellikle şunu soruyor

Web geliştirici olmak için üniversite diploması şart mı?

Şart değil. Bilgisayar mühendisliği gibi bölümler sağlam bir temel verir ve bazı kurumlar ilanlarında diploma ister, ama sektörde kendi kendine öğrenip iyi bir portföyle işe giren çok sayıda geliştirici var. İşverenler çoğu zaman yaptığınız işe bakar.

Hangi programlama dilinden başlamak daha mantıklı?

Web için doğal başlangıç HTML, CSS ve JavaScript üçlüsüdür, çünkü tarayıcıda anında sonuç görürsünüz. Sunucu tarafında ise çalışmak istediğiniz alana bakın: WordPress ve klasik web projeleri için PHP, veri ve otomasyon ağırlıklı işler için Python sık tercih edilir.

Yapay zekâ kod yazabiliyorsa geliştiriciye hâlâ ihtiyaç var mı?

Yapay zekâ araçları kod yazmayı hızlandırıyor, ama yazılan kodun doğru, güvenli ve projeye uygun olup olmadığına karar vermek, hatayı bulmak ve sistemi bir bütün olarak kurmak hâlâ geliştiricinin işi. Bu araçları iyi kullanan geliştirici daha verimli çalışıyor.

Küçük bir site için serbest çalışan bir geliştirici yeterli olur mu?

Çoğu zaman olur. Önemli olan kişinin önceki işlerini görmek, kodun ve erişim bilgilerinin size teslim edileceğini baştan konuşmak ve ileride bakım gerektiğinde kime ulaşacağınızı bilmektir. Ücretlerin nasıl belirlendiğini merak ediyorsanız web tasarımcı maaşını belirleyen etkenleri anlattığım yazı geliştiriciler için de büyük ölçüde geçerli.

Sitenizde hazır çözümlerin yetmediği bir ihtiyaç varsa, özel geliştirme işlerini nasıl ele aldığımı PHP yazılım sayfasında anlattım.

HY
Hüseyin Yılmaz

SEO Uzmanı & Dijital Pazarlama Danışmanı — SEO, web tasarım ve dijital pazarlama alanında uzman Hüseyin Yılmaz. Arama motorlarında görünürlüğünüzü artıran, dönüşüm odaklı stratejiler ve uygulanabilir rehberler.

Bu konuda desteğe mi ihtiyacınız var?

Sitenizi büyütmek için ücretsiz bir ön görüşme planlayalım.

İletişime Geç
WhatsApp