İçeriğe geç
Muhammed Ali
Kocabey

Ana sayfa/Çalışmalar

ÇALIŞMALAR & DENEYİM

Android, üretimde.

Bankacılıkta kimlik doğrulama, Kotlin’de kod üretimi, açık kaynak ve kendi ürünüm. Her çalışmada neyi üstlendiğimi ve nasıl yaklaştığımı anlatıyorum.

Sistem haritası

Kaynaktan üretime: bir çalışmayı nasıl inşa ediyorum.

  1. 01Kaynak@Destination · Kotlin
  2. 02DerlemeKSP kod üretimi
  3. 03SDKNFC eID kütüphanesi
  4. 04UygulamaFeature ekipleri · 9+ uygulama
  5. 05ÜretimAkbank · bankacılıkta canlı

01NFC kimlik doğrulama SDK

Akbank Mobile · Android

Bir çipten uygulama akışına.

Akbank Mobile’ın onboarding akışı için NFC ile kimlik doğrulama yapan Android SDK’sını sıfırdan tasarlayıp geliştirdim.

Benim sorumluluğum
Android SDK’sının tasarımı ve geliştirilmesi; çip iletişimi, veri gruplarının okunması, kimlik eşleştirme, doğrulama ve uygulamaya entegrasyon.
Mimari yaklaşım
Çipten okuma, doğrulama ve entegrasyonu modüler bir yapıda ayırdım. Clean Architecture ve Hilt ile feature ekiplerinin kullanabileceği bir kütüphane oluşturdum.
Teknik yaklaşımı aç
  • BAC/PACE erişim kontrolü ve ICAO 9303 güvenli mesajlaşma ile eID çipini okudum.
  • DG1 (MRZ) ve DG2 (yüz) veri gruplarını APDU’larla okudum; SOD’a karşı Passive Authentication ile belge imzasını ve veri gruplarının hash’lerini doğruladım.
  • Kurum içi kaynak kodu yerine burada sorumlulukları ve paylaşılabilir yaklaşımı anlatıyorum.
SDK’nın üç sorumluluğu

Bir katmanı açın; sorumluluk sınırını görün.

  1. 01Okuma
  2. 02Doğrulama
  3. 03Entegrasyon
01OkumaKimlik çipi → veri

Önce veriye ulaşmak.

NFC üzerinden kimlik çipiyle iletişim ve veri gruplarının okunması. Okumak, tek başına doğrulamak anlamına gelmiyor.

NFC · Çip iletişimi
02DoğrulamaVeri → doğrulama sonucu

Veriyi almak ile güvenmek ayrı işler.

Belge imzası ve veri bütünlüğü kontrolleri ayrı bir sorumluluk. Uygulamanın ilerleyebilmesi için okuma sonucunun doğrulanması gerekiyor.

İmza · Veri bütünlüğü
03EntegrasyonSDK → uygulama

Teknik sonucu kullanılabilir kılmak.

Android SDK’sının uygulama akışına bağlanması. Modüler yapı, çip iletişimi ve doğrulama sorumluluklarının entegrasyondan ayrı ele alınmasını sağlıyor.

Android SDK · Modüler yapı

Kavramsal sorumluluk şeması
Kurum içi mimariyi temsil etmez.

KSP / Kotlin Symbol Processing

Tekrarlayan rotaları derleme zamanına taşımak.

Navigation graph’ının elle tanımlanması, yeni ekranlarla birlikte tekrar eden kod ve birleştirme sorunları üretiyordu. @Destination tanımlarını okuyarak graph üreten bir KSP işlemcisi için kavram kanıtı geliştirdim.

  1. 01 / KAYNAK@Destination
  2. 02 / İŞLEMCİKotlin Symbol Processing
  3. 03 / ÇIKTIÜretilen navigation graph

Benim katkım POC ve ilk işlemciydi. Framework ekibi bu çalışmayı olgunlaştırıp ortak altyapıya ve üretime taşıdı.

02Koduyla incelenebilir.

Açık kaynak projeler

Açık kaynak · 2025 - devam ediyor

Aspectify

Kaynak kodunu incele

Cross-cutting concern'leri (logging, auth, cache, retry, timeout) iş mantığından ayırıp tek bir annotation'ın arkasına taşır. Hem Android'de hem saf JVM'de çalışır.

  • Kotlin
  • AOP
  • Reflection
  • Dynamic Proxy
  • Android · JVM
Kapsam ve özellikler
  • @Loggable
  • @Retryable
  • @Cacheable
  • @Timed
  • @RateLimit
  • @BackgroundThread
  • @Debounce
  • @Timeout
  • @Transactional
  • @Authenticated

Açık kaynak · 2025

SecureCheck

Kaynak kodunu incele

Android için runtime ve sistem seviyesinde bütünlük kontrolleri. Root, Frida, Play Integrity, SSL pinning, tamper gibi 25+ kontrol tek bir SecurityState modelinde toplanır; audit ve diagnostik için dışarı aktarılabilir.

Jetpack Compose + MotionLayout arayüz, Dagger 2 ile DI, EncryptedSharedPreferences / AndroidKeyStore ile şifreli depolama.

  • Android
  • Security
  • MVVM
  • Clean Architecture
  • Dagger 2
Kapsam ve özellikler
  • Root
  • Frida / Xposed
  • Play Integrity
  • SSL Pinning
  • APK Signature
  • Tamper / Repack
  • Debugger
  • Emulator / VPN / MockLoc
  • Reflection
  • Dex Loading
  • WebView Security

Açık kaynak · kripto referans app

Exzi

Kaynak kodunu incele

Kripto alım-satım ekranları üzerinden modern Android pratiklerini gösteren referans uygulama: MVVM, Hilt ile DI, UseCase katmanı ve unit testler.

  • Kotlin
  • MVVM
  • Hilt
  • UseCases
  • Unit Test

Açık kaynak · referans uygulama

Mealz Compose App

Kaynak kodunu incele

Modern Android stack için sade bir referans uygulaması: MVVM, Coroutines, Compose, Retrofit. Yemek tarifi keşfi üzerine kurulu.

  • Jetpack Compose
  • MVVM
  • Coroutines
  • Retrofit

03Profesyonel deneyim

Roller, sorumluluklar, bağlam

Oca 2026 - Şu an

Senior Android Engineer

Akbank T.A.S. (Veripark üzerinden)

  • Akbank Mobile'ın NFC kimlik doğrulama SDK'sını sıfırdan tasarlayıp yazdım; Şubat 2026'dan beri canlı.
  • KYC için NFC eID ve canlılık (liveness) temelli kimlik doğrulama onboarding'i geliştirdim; canlılığı anti-spoofing kontrolü olarak kullandım.
  • Feature modüllerinde ortak kullanılan Hilt multibinding pattern'lerini ve ortak network response mimarisini yazdım.
  • Navigation/router için KSP'yle build-time kod üretimi POC'u geliştirdim; framework ekibi olgunlaştırıp kurum genelinde canlıya aldı.

Kotlin · NFC · KSP · Clean Architecture · Hilt · Coroutines/Flow · CI/CD

Şub 2024 - Oca 2026

Senior Android Developer

Akbank T.A.S. (Veripark üzerinden)

  • Yatırım, SIM block, kurumsal admin ve limit yönetimi gibi finansal modülleri MVVM + UseCase mimarisine taşıdım; statik analiz ve test kapsamı üzerinde çalıştım.
  • RxJava'dan Coroutines'a geçişin PoC'sini yazdım; geliştirdiğim lifecycle-aware utility'ler farklı ekiplerin feature modüllerinde kullanılıyor.
  • Admin ve account ekranlarında uzun süredir kapanmayan session ve routing kaynaklı production crash'lerini kapattım.

Kotlin · MVVM · UseCase · RxJava → Coroutines · Clean Architecture

Şub 2023 - Şub 2024

Android Developer

Akbank T.A.S. (Veripark üzerinden)

  • CalendarSelectable ve DoubleOption gibi parametreli UI bileşenlerini yazdım; birkaç feature ekibi tarafından kullanıldı.
  • Static analysis pipeline'ı, encryption standartları ve secure coding pratiklerine katkıda bulundum.

Kotlin · Static Analysis · Encryption

Eki 2022 - Şub 2023

Android Developer

Altamira Digital

  • Tek Android geliştirici olarak 8 ticari uygulamayı modüler MVVM ve REST API'lerle baştan geliştirip yayınladım: Zorlu World, TAV Passport, 42 Maslak, Emaar, Nidalife, Aliving, Büyükyalı, Florya. Hepsi Play Store uyumluluğunu karşıladı.
  • Canlıdaki yüksek trafikli uygulamalarda runtime sorunlarını ve crash oranını düşürdüm; sadakat ve konum tabanlı promosyonlar için güvenli oturum yönetimi ekledim.

Kotlin · MVVM · REST · Play Console

Tem 2021 - Eki 2022

Android & iOS Developer

Comodo / Xcitium

  • Cross-platform bir mobil güvenlik uygulamasını (Android/Java + iOS/Swift) baştan sona üstlendim: antivirüs tarama, runtime tehdit tespiti, cihaz bütünlüğü.
  • Senkronizasyonları zamanlanmış arka plan servislerine taşıdım ve cihaz üzerindeki tarama yolunu kısalttım.

Kotlin · Java · Swift · Backend integration

Oca 2019 - Haz 2021

Kurucu & Geliştirici

ScoreUpp

  • Play Store yorumlarından sentiment ve kategori çıkaran bir NLP analitik platformu kurdum. BERT, SymSpellPy ve özel sınıflandırıcılar üzerinden çalışıyordu.
  • Flask backend, NLP pipeline ve hafif bir Android arayüzüyle MVP’yi geliştirdim; yorumların otomatik işaretlenmesini uyguladım.

Python · Flask · BERT · SymSpellPy · Android · NLP

04Uygulama çalışmaları

Altamira · Comodo / Xcitium · Açık kaynak

Sadakat, yaşam ve mobil güvenlik alanlarında geliştirdiğim uygulamalar. Ticari uygulama bağlantıları mağaza aramasına gider.

05Teknoloji ve pratikler

Çoğu üretimden; veri/AI tarafı yan projelerden ve kurslardan.

İLGİ ALANLARI

Android · MVVM & Clean Architecture · Mobil güvenlik · REST · Back-End · İlişkisel veritabanı · NoSQL · Veri bilimi · Makine öğrenmesi · Derin öğrenme · Doğal dil işleme · Web kazıma

MOBİL MİMARİ

Kotlin · Java · Jetpack Compose · AndroidX · Coroutines · Flow · RxJava · Hilt · Dagger · Navigation Component · KSP · Custom SDK · Clean Architecture · MVVM · MVI · Modularization · Repository · UseCase · UDF · Retrofit · Room · Glide · Firebase

GÜVENLİK

NFC Identity Verification · Biometric Auth · Secure Coding · Encryption Standards · Runtime Integrity Checks · SSL Pinning · Play Integrity · Static Analysis · OWASP Mobile

DİLLER · ÜRETİM

Kotlin · Java · Swift · Python

DİLLER · AŞİNALIK

C · C++ · C# · SQL · JavaScript · PHP · x86 Assembly · HTML5 / CSS3

BACK-END & VERİTABANI

Spring (JPA · REST) · Flask · REST API · MySQL · SQLite · MongoDB · Bootstrap

VERİ & YAPAY ZEKA

BERT · TensorFlow · Keras · Scikit-Learn · spaCy · NLTK · SymSpellPy · NumPy · Pandas · Selenium

TEST VE KALİTE

JUnit · Mockito · MockK · CI Test Pipelines · TDD · SOLID · OOP · DRY · KISS

ARAÇLAR & DEVOPS

Git · GitLab CI/CD · Bitbucket · Docker · Google Cloud · AWS · Colab · Azure DevOps · Jira · Confluence · Android Studio · IntelliJ IDEA

06Öğrendiklerimi paylaşmak.

07Eğitim ve sertifikalar

SERTİFİKA

Professional Scrum Developer I (PSD I)

Scrum.org · 2025

SERTİFİKA

Professional Scrum Master I (PSM I)

Scrum.org · 2025

EĞİTİM

Agile & Scrum Master Training

Akbank · 2023 (advanced modules 2024)

EĞİTİM

Secure Coding Training

Akbank · 2023

UZMANLIK PROGRAMI

Deep Learning ve NLP Uzmanlık Programı

DeepLearning.AI (Coursera) · 2020 · Neural Networks, CNNs, Sequence Models

EĞİTİM

Lisans, Bilgisayar Mühendisliği

Konya Teknik Üniversitesi · 2016 - 2021

Eğitim, kurslar ve organizasyonlar →

08Çalışma notları

Temmuz 2026 notları

Akbank Mobile · navigation modülü

NFC akışından sonra navigation/router için KSP tabanlı build-time kod üretimi POC'u geliştirdim; framework ekibi olgunlaştırıp canlıya aldı.

İncele ↑

Aspectify

Logging, retry, cache, timeout gibi cross-cutting concern'leri tek bir annotation'la yönetiyor. Kotlin Reflection ve Dynamic Proxy üzerine kurulu.

İncele ↗

Shaping the Future of Android

Android mimarisi üzerine kısa bölümler. Spotify, Apple Podcasts, Amazon Music.

İncele ↗

BİRLİKTE ÇALIŞALIM

İyi bir problemle başlayalım.

Ekibiniz için bir Android mühendisi arıyorsanız veya bir teknik problemi birlikte değerlendirmek istiyorsanız konuşalım.

30 dakika görüşelim[email protected]Tüm iletişim ve podcast bağlantıları