





Hakkımda
İnsan bilgisayar etkileşimi, arayüz tasarımı ve bilgisayar grafikleri konularında bilgimi geliştirmek için bulduğum her fırsatı değerlendirdim ve eğitimim sırasında bu konularda projelerde yer almaktan mutluluk duydum, profesyonel kariyerime esas olarak Java'ya odaklanmış bir backend geliştirici olarak başladım, ayrıca kullanıcılar tarafından doğrudan kullanılmak üzere backend teknolojileri ile geliştirilen arayüz projelerinde de çalıştım (o dönemde Java swing kütüphanesi popülerdi).
Kariyer basamaklarında yükseldikçe, yeni font-end web geliştirme teknolojileri olan jQuery, KnockoutJS gibi teknolojileri kullanarak backend geliştirme deneyimimi birleştirdiğim projelerde çalışma fırsatı buldum.
Angular ve React, front-end geliştirme dünyasında çok popüler hale geldikten sonra, front-end geliştirmeye daha fazla odaklanmaya karar verdim ve Java Spring framework backend geliştirme deneyimimi geride bıraktım.
Artık kendimi bir Web front-end mühendisi olarak tanımlasam da, tüm bu yıllardan sonra NodeJS ile backend geliştirme tutkum yeniden canlandı.
Eğitim



Kariyer

Çeşitli sorumluluklarla 5 yıldan fazla bir süre Web Front-end yazılım geliştiricisi olarak çalıştım:
- Zeplin web uygulamasında geliştirme (Preact, Flux, Redux)
- Zeplin uygulamasını yeni tasarıma geçirme
- Yeni özelliklerin geliştirilmesi:
- Bildirim merkezi,
- Onaylar,
- Figma stil kılavuzu içe aktarma/senkronizasyon,
- Kullanıcı davet bileşenleri,
- Ana panelinde çoklu proje seçimi,
- Tasarım üzerine eklenen yorumlar ve notlar.
- Performans iyileştirmeleri:
- Projeler sayfasında tembel yükleme (lazy-loading),
- Bileşenlerde ve Redux haritalayıcılarında render performansını optimize etme.
- Tüm projenin Typescript'e geçişi.
- Haftalık bakım görevi:
- Yeni sürümlerin izlenmesi,
- Kullanıcı sorunlarının izlenmesi (Sentry)
- Özelliklerin test edilmesi (Jest)
- Tüm birim, performans ve özellik testleri geliştiriciler tarafından yapılmaktadır.
- Kod incelemeleri.
- Zeplin.io web sayfasında geliştirme
- Zeplin ZAM sayfası ve genel bakım (2021'e kadar)
- Zeplin blog sayfasında geliştirme:
- Blog sayfasını medium'dan kendi ortamımıza geçirme.
- Sanity.io içerik işletim sistemi,
- Gatsby ve React statik blog gönderi sayfaları.
- Blog sayfasını medium'dan kendi ortamımıza geçirme.
Teknolojiler
















Araçlar






Commencis'te çeşitli projelerde back-end ve front-end geliştirici olarak 5+ yıl çalıştım.
Commencis (eski adıyla Monitise), müşteri şirketlere dijital çözümler sunmak için atanan bir dizi ekipten oluşuyordu; bu çözümler iOS, Android ve Web uygulamaları ile back-end hizmetlerini içermekteydi.
Takımlar:
- Ürün yöneticisi (Scrum/Kanban Yöneticisi),
- Front-end ekibi (iOS, Android ve Web uygulaması),
- Back-end ekibi (front-end ekibi için servisler geliştirir),
- Kalite güvence ekibi (manuel test uzmanları),
- Tasarımcılar (UX/VD Tasarımcıları) ve
- İş Analistleri (Proje gereksinimleri)
Commencis'te çalıştığım projeler:

Yeni Pegasus havayolları uygulamalarında geliştirme ekibinde teknik lider olarak çalıştım (booking uygulaması). React & Redux kullanılarak yeni bir Single-page application uygulaması geliştirdim.
Projedeki sorumluluklarım:
- Web uygulama ekibindeki her özellik geliştirmesine dahil olmak.
- Junior geliştiricilerin görevlerini zamanında tamamlamalarına yardımcı olmak ve onları organize etmek.
- Uygulanacak her özellik için estimation vermek.
- Proje teslim tarihini veya bir sprinti etkileyebilecek teknik zorlukları ve/veya diğer sorunları rapor etmek.
- Projede kullanılacak teknolojilere karar vermek.
- Tasarımcılar ve iş analistleri ile senkronize olmak.
- Cypress.io ile uçtan uca testler uygulamak ve continuous integration ile çalıştırılmasını sağlamak.
Teknolojiler










Araçlar


Commencis'te çalıştığım projeler:

Grub Club, şefleri, kullanılmayan alanlarla birleştiren bir Pazar yeri olarak işlev görüyordu, böylece bir akşam için Gezici Restoran açabiliyorlardı.
Single-page application geliştiricisi olarak çalıştım ve backend servislerini yazmakla sorumlu olan bir diğer geliştirici ile beraber çalıştım.
Sorumluluklarım:
- Kurucu ortak Olivia Sibony ile gereksinimleri belirlemek
- Kullanılacak teknolojileri belirlemek,
- Sayfaları tasarlamak React.
- Son ürünü test etmek.
- Backend geliştirme ekibi ile senkronize olmak.
Teknolojiler








Araçlar


Commencis'te çalıştığım projeler:

Türk Hava Yolları projesinde front-end geliştirici olarak çalıştım.
Bu projedeki sorumluluklarım, yeni componentlar yazmak ve genel web uygulaması bakımını yapmaktı.
Teknolojiler




Araçlar


Commencis'te çalıştığım projeler:

Türkiye'nin en büyük bankası olan İş Bankası web projesinde front-end geliştiricisi olarak, bankanın teknoloji sağlayıcısı ile koordineli çalıştım. Softtech.
Uygulama web sayfalarında kullanılacak yeni componentları yazmakla sorumluydum. AngularJS
Teknolojiler




Araçlar


Commencis'te çalıştığım projeler:

CEPTETEP Mobil bankacılık projesi middleware yazılımında back-end geliştirici olarak çalıştım.
Sorumluluklarım, front-end ekiplerine (Android & iOS) kullanacakları servisleri sağlamaktı.
Teknolojiler




Araçlar


Commencis'te çalıştığım projeler:

YKB Mobil bankacılık projesi middleware yazılımında backend geliştirici olarak çalıştım.
Sorumluluklarım, front-end yazılımcılarına (Android & iOS) kullanacakları servisleri sağlamaktı.
Commencis'teki backend projemiz, bankanın backend hizmetleri ile Commencis ön uç uygulamaları arasında bir ara yazılım olarak işlev görüyordu.
Teknolojiler




Araçlar



Cybersoft, İstanbul'da bulunan Türk bankası Şekerbank için teknoloji sağlayıcısıydı.
2 yıl R&D Yazılım geliştiricisi olarak çalıştım.
Cybersoft'taki sorumluluklarım şunlardı:
- Banka çalışanlarının belirli bir işlem için kesinti oranlarını hesaplamak amacıyla kullanacakları bir uygulama geliştirdim. Bu işlem önceden, verileri almak için banka veritabanını sorgulayan (SQL) klasik bir yaklaşım ile yönetiliyordu. Tüm bu işlemin, daha hızlı çalışan bir kural motoru kullanılarak tekrar yazılması gündeme geldi. Bu gereksinimleri gerçekleştiren, (Drools) kural motoru kullanan, KnockoutJS (veri bağlama) ve jQuery ile bir web uygulaması geliştirdim.
Teknolojiler








Araçlar



Datasel, esas olarak dijital sağlık sistemlerine odaklanmakta olan bir yazılım şirketiydi. Çalıştığım bölüm, uzaktan sensörlerle hasta sağlık verilerini izlemekten sorumluydu.
Junior geliştirici olarak Java tabanlı teknolojiler ile geliştirmeler yaptım. Arayüzler için Java Swing kütüphanesi, verileri almak için ise Hibernate ORM kullandım.
Teknolojiler




Araçlar


Projelerim

Kişisel web sitemi geliştirirken farklı bir yaklaşım denedim. Geleneksel portföy sitelerinin aksine, (ki bunlar özgeçmiş belgelerine benzer şekilde geliştirilmiştir) bir 3D sahne oluşturdum. (JS 3D kütüphanesi -> ThreeJS) Geleneksel router yerine bu sahne üzerindeki nesnelerle etkileşim gerçekleştirilerek sayfa geçişlerini gerçekleştirdim.
Web sitesinde mevcut olan tüm route'lar (static oluşturulan sayfalar yaklaşımı ile birlikte -> NextJS) sokakta bulunan binalar ile temsil edilmektedir. Geleneksel bir web sayfasında bir bağlantıya tıklamak yerine, kullanıcılar bu binalara (veya menüden bina isimlerine) tıklayarak o binanın konumuna seyahat eder ve sayfalar sunucudan istenerek görüntülenir.
Kullanıcılar ayrıca serbestçe yürüyebilir ve etrafa bakınabilir ve herhangi bir binaya tıklamadılarsa ve henüz herhangi bir sayfaya yönlendirilmedilerse kullanıcı kontrolleri ve klavye kısayolları ile sahnenin tadını çıkarabilirler.
Sayfalar responsive olarak geliştirilmiş ve mobil cihazlarda 3D render performansları test edilmiştir.

Teknolojiler









Araçlar








Resipise, SurreqlDB veritabanı kullanarak kendi yemeklerinizi tasarlamanıza olanak tanıyan bir yemek kitabı uygulamasıdır.
Resipise malzeme veritabanı esas olarak FDC'den alınan gıda verilerini kullanır, böylece kullanıcılar kendi yemeklerini tasarlarken malzemelerinin besin bilgilerini takip edebilirler.
Resipise özellikleri:
- Gösterge Paneli:
- Kullanıcılar, Gösterge Paneli sayfasında bölümlere geçerek yemeklerini görüntüleyebilir ve düzenleyebilir. Her yemek bir kart ile temsil edilir.
- Tarif:
- Kullanıcılar, malzemeleri seçerek ve aletleri seçerek veya sadece tarif metni ekleyerek kendi tariflerini oluşturabilirler. (Bu yemek, gönderdikten sonra otomatik olarak gösterge paneli sayfalarına eklenecektir.)
- Tarif önizlemesi:
- Kullanıcılar, paylaşılan bağlantılarını takip ederek veya Gösterge Paneli sayfasından yemek kartına tıklayarak kendi veya paylaşılan tariflerini önizleyebilirler.
- Program:
- Kullanıcılar, yemeklerini veya yaygın gıdaları ekleyerek günlük gıda alımlarını planlayabilirler (bu gıdalar, FDC veritabanından elde edilen verilerle birlikte resipise veritabanında zaten mevcut olan gıdalardır).
- Alışveriş listesi:
- Kullanıcılar bu sayfadan alışveriş listeleri oluşturabilir veya paylaşabilirler. (Paylaşılan bir alışveriş listesinde yapılan herhangi bir işlem, tüm paylaşılan kullanıcılar için aynı alışveriş listesi verilerini anında günceller.) Bir alışveriş listesine tıklamak, kullanıcıları alışveriş listesi detayları sayfasına yönlendirir.
- Profil:
- Kullanıcılar, bu sayfadan tercihlerini ve kullanıcı ile ilgili ayarlarını düzenleyebilirler.

Teknolojiler















Araçlar








Yeteneklerim
Teknolojiler
JS Kütüphaneleri ve Frameworkler












Durum Yönetimi



CSS teknolojileri




Test Kütüphaneleri



Paketleyiciler


CRM

Markup

Backend Teknolojisi






Veritabanı ile İlgili Teknolojiler




Sürüm Kontrolü


Araçlar
CI / CD & İzleme



İzleme

Editörler








