Senior Full-Stack Engineer · İstanbul, TR

Ali Oğuzhan
Yüce

Uçtan uca yazılım geliştirici. Mobil, web, backend ve oyun — tek kişilik ürün ekibi.

Uçtan uca ürün geliştiriyorum: mobil istemci, arka uç servisi, yönetim paneli ve mağaza yayını dahil. Aşağıdaki projelerin çoğu şu anda yayında ve gerçek kullanıcıları var. Çalıştığım yığın ağırlıkla TypeScript (Node.js, Fastify, Next.js, React), mobilde Flutter ve React Native, oyun tarafında Unity/C#; veritabanı olarak PostgreSQL, dağıtımda Docker ve kendi sunucum.

Projelere bak İletişime geç
7
Tamamlanan ürün
81 + KKTC
Eczanow'un kapsadığı il (+ Almanya)
4+
Yıl üretim ortamı deneyimi
99.9%
Kendi sunucumda uptime
01

Projeler

yedi ürün, çoğu yayında
Eczanow — nöbetçi eczane haritası
Nöbet haritası
Eczanow — mesafeye göre sıralı eczane listesi
Mesafeye göre liste
Eczanow — ana ekran widget'ı
Ana ekran widget'ı

Eczanow

iOS · Android · Web

Türkiye'nin 81 ili ve KKTC için "en yakın açık ya da nöbetçi eczane" servisi. Gündüz açık eczaneleri, akşam 19:00'dan sonra ve pazar günleri nöbet listesini gösteriyor; hangi modda olduğunu ve modun ne zaman değişeceğini ekranın üstünde açıkça yazıyor. Konum izni verilirse en yakın eczane listenin başına geliyor — koordinatlar sunucuya gönderilmiyor, il listesi cihaza indirilip mesafe hesabı cihazda yapılıyor. Haritadan bir noktaya dokunup "buraya en yakınlar" diyebiliyor, tek dokunuşla arayabiliyor ya da yol tarifi alabiliyorsunuz.

Veri il eczacı odalarının yayımladığı listelerden günlük otomatik çekimle geliyor; eksik ya da bozuk görünen bir liste yayımlanmıyor ve her listede verinin ne kadar taze olduğu yazıyor. Ana ekran widget'ı en yakın nöbetçiyi uygulamayı açmadan gösteriyor. Uygulama Almanya'da da çalışıyor: orada nöbet listesi (Notdienst) henüz bağlı olmadığı için "şu an açık" modunda, kartlarda açık/kapalı/bilinmiyor rozetiyle.

Mimari
İstemci
Flutter
API
Fastify
Veri
PostgreSQL · Prisma
Dağıtım
Docker · nginx

Mane

iOS · Android

Yapay zekâ destekli sanal görünüm deneme uygulaması. Bir fotoğraf çekiyorsunuz ve saç stilini, saç rengini (hazır paletten ya da kendi seçtiğiniz renkle), sakalı, bıyığı, gülüşü ve piercingi kendi yüzünüzde görüyorsunuz. Seçimlerin tamamı tek bir görsel üretim isteğinde birleşiyor, böylece sonuç parça parça yapıştırılmış gibi durmuyor.

Kredi tabanlı bir modeli var — abonelik yok, satın alınan krediler süresiz. Arka tarafta üretim işleri kuyruğa alınıyor, başarısız üretimlerde kredi otomatik iade ediliyor. Android ve iOS'ta yayında.

Mimari
İstemci
React Native · Expo
API
Fastify
Kuyruk
BullMQ
Depolama
Cloudflare R2
Mane — saç, sakal ve renk seçme ekranı
TunnelPulse — oyun menüsü ve en iyi skor

TunnelPulse

Oyun iOS · Android

Unity ile yazılmış arcade refleks oyunu. Bir uzay gemisiyle dönen bir tünelin içinde ilerliyor, tünel boyunca gelen engellerin arasından geçiyorsunuz; kanatları katlayarak dar boşluklara sığmak oynanışın merkezinde — ama on iki engel tipi dört farklı şey istiyor ve biri, Yarık, tam tersini: kanatları açıp hizalamak. Tünel, engeller ve arayüz sahneye elle dizilmek yerine çalışma anında üretiliyor — bu sayede zorluk eğrisi ve denge değerleri ölçümle ayarlanabiliyor.

Oyunun sunucu tarafı ayrı bir projede: skor ve oyuncu servisleri için bir API ve bir yönetim paneli.

Mimari
Oyun
Unity · C#
API
Fastify
Veri
PostgreSQL
Gelir
AdMob · RevenueCat

Outguess

Oyun Yayın öncesi

Eller açık oynanan bir kart düellosu. Ateş buzu, buz suyu, su ateşi yener; aynı tipte büyük sayı kazanır — kuralların tamamı bu. Zor olan kısmı iki elin de açık olması: rakibinin bütün kartlarını görüyorsun, o da seninkileri görüyor. Geriye tek şey kalıyor — sırayı okumak ve hangi turu feda edeceğine karar vermek.

Günde tek tahta, herkese aynı, tek gönderim. Her günlük tahta kusursuz bir temizlik imkânsız olacak ve tam olarak tek bir diziliş en iyisi olacak şekilde süzülüyor — bu süzme işini oyunu geriye dönük tümevarımla çözen bir çözücü yapıyor. Sonuç beş kare ve bir skor olarak paylaşılıyor, çözümü ele vermeden. Ayrıca 100 basamaklı bir tırmanış (on yedi kişilik, yükseldikçe rakip değil tahta zorlaşıyor), kartların saat olduğu gauntlet koşusu ve altı haneli oda koduyla arkadaş düellosu var.

Mimari
İstemci
React Native · Expo
Çözücü
TypeScript
API
Fastify
Veri
PostgreSQL · Prisma
Outguess — düello ekranı, iki elin de açık olduğu tur
Applied — başvuru listesi, aşamalar ve geciken takipler

Applied

Mobil Yayın öncesi

İş başvurusu takipçisi. Bir ilanı LinkedIn, Indeed ya da başka bir siteden paylaşıyorsunuz; uygulama başlığı okuyup şirketi ve pozisyonu kendisi dolduruyor — bir başvuruyu kaydetmek on beş saniye sürüyor. Kaydedildi'den Reddedildi'ye altı aşama var; her kartta o aşamada kaç gündür beklendiği yazıyor ve takip zamanı gelenlerin tamamı için günde tek bir hatırlatma çıkıyor.

Hesap yok, giriş yok, benim bir sunucum yok: her şey telefondaki veritabanında duruyor ve uygulama bağlantı olmadan da çalışıyor. Türkçe ve İngilizce, ikisi de ilk sürümde.

Mimari
İstemci
Flutter
Yerel veri
Drift · SQLite
Gelir
AdMob · RevenueCat

Fatura Takip Sistemi

Web uygulaması

Sahada çalışan teknisyenler için fatura bilgisi toplama ve takip sistemi. Teknisyen müşterinin telefon numarasını giriyor, sistem KVKK onaylı bir SMS gönderiyor ve fatura adresi doğrudan müşteriden toplanıyor — böylece teknisyen adres peşinde koşmuyor. Kayıtlar listelenip filtrelenebiliyor, fiyat ve işlem bilgileri analiz edilebiliyor; her teknisyen için ayrı hesap açılıp kendi işleri takip edilebiliyor.

Tanıtım sayfası ve ücretsiz deneme kaydı ayrı bir adreste, üye paneli ise giriş arkasında.

Mimari
Arayüz
Next.js · TypeScript
Tek depo
Turborepo
Veri
PostgreSQL
Dağıtım
Docker
Fatura Takip Sistemi — tanıtım sayfası
Olea Osteria Italiana — web sitesi

Olea Osteria Italiana

Web sitesi

İtalyan mutfağı sunan bir restoran için tanıtım sitesi: menü, rezervasyon için telefon, konum ve sosyal medya bağlantıları; Türkçe ve İngilizce. Hafif tutulması öncelikliydi — telefon şebekesinde hızlı açılması ve menüye kaydırmadan ulaşılması istendi.

Mimari
Arayüz
React · TypeScript
Derleme
Vite
Dağıtım
nginx
02

Yetenekler

altı katman, tek kişi
Mobil
Flutter ve React Native istemci
Harita, konum, ana ekran widget'ı
Uygulama içi satın alma ve reklam
iOS ve Android mağaza yayını
Arka uç ve mimari
Fastify ve Express ile REST API
PostgreSQL şeması ve Prisma
Mikroservis ve tek depo (monorepo)
Redis, RabbitMQ, BullMQ ile kuyruk
Swagger ile API dokümantasyonu
Web ve arayüz
Next.js, React, TypeScript
Storybook ve paylaşılan bileşen standardı
Giriş arkasında yönetim panelleri
AngularJS → React taşıması
Ops ve dağıtım
Docker ve nginx ters vekil
GitHub Actions ile CI/CD
AWS, GCP, Cloudflare DNS ve SSL
Tek sunucuda alt alan yönlendirmeli barındırma
Güvenlik
Güvenlik denetimi ve uç nokta sıkılaştırma
SQL injection testi
Sızma testi süreçlerine destek
Üçüncü taraf eklenti ve POS entegrasyonu incelemesi
Oyun
Unity ve C# oynanış sistemleri
Çalışma anında üretilen seviye ve denge
Skor ve oyuncu servisleri
AdMob ve RevenueCat entegrasyonu
03

Yığın

üretimde kullandığım araçlar
Diller
TypeScript Dart C# SQL PowerShell
İstemci
Flutter React Native · Expo Next.js React · Vite Unity Storybook Ant Design
Sunucu ve veri
Node.js Fastify PostgreSQL Prisma BullMQ Cloudflare R2 Express.js Redis RabbitMQ Swagger
Dağıtım ve servisler
Docker nginx Turborepo RevenueCat AdMob · AdSense Google Maps GitHub Actions AWS · GCP Cloudflare
04

Birlikte çalışalım

Fikirden mağaza yayınına kadar bir ürün.

Proje, iş birliği ya da soru için e-posta ile ulaşabilirsiniz:

[email protected]
Aldığım işler
01 Mobil uygulama geliştirme (Flutter / React Native)
02 Web uygulaması ve yönetim paneli (Next.js)
03 Backend / API tasarımı (Fastify, PostgreSQL)
04 Mağaza yayını ve sürüm yönetimi
05 Sunucu kurulumu / deploy (Docker, nginx)
06 Uygulama içi satın alma ve reklam entegrasyonu