Kerem Göbekcioğlu

Software Engineer | Android · Kotlin · Jetpack Compose | Backend (Spring Boot)

İstanbul, Türkiye

Education

Gebze Technical University

BSc, Computer Engineering · 2020–2026

Gdańsk University of Technology

Erasmus+ exchange semester · 2023

About

Software Engineer specializing in Android development, expanding into Kotlin Multiplatform and backend engineering with Spring Boot.

I like understanding the systems and tools I use, not just what they do, but how they work. That's what lets me build software that's reliable, maintainable, and high-performing.

Experience

Android Development Intern · Augmency

Jan 2026 – Feb 2026

Internship · Gebze, Kocaeli, Turkey · On-site

  • Tracked down and fixed memory leaks using LeakCanary.
  • Built a separate WebRTC-based screen sharing and remote control system for AR head-mounted devices, with Firebase Realtime Database handling signaling.
  • The original architecture had the broadcaster open the session; at a senior developer's suggestion, we reversed it so the viewer opens the session and generates a QR code for the broadcaster to scan.
  • Studied and adapted two open-source projects (Screen Stream, TScrcpyDroid) to fit our signaling and remote-control needs, and used Android product flavors and Koin DI to ship both a Broadcaster and Viewer app from one codebase.

Junior Mobile Developer · Norax AI

Oct 2025 – Dec 2025

Full-time · Istanbul, Turkey · Remote

  • Built "OnGame," a cross-platform React Native/Expo app, working heavily with AI tooling to handle a stack I wasn't deeply fluent in myself — including a layout fix where I measured screen and component heights at runtime to stop UI elements from overlapping across iOS and Android.
  • Debugged and maintained existing React web apps and .NET backend services for various clients.

Android Development Intern · Mobven

Jul 2025 – Aug 2025

Internship

  • Built the Android client for an AI-powered language learning app using Kotlin, Jetpack Compose, and MVVM.
  • Pushed for a WebSocket-based approach when a feature needed to move from request/response to a live stream; built the Android side around SignalR (what the backend team landed on) using Kotlin Flow.
  • Tracked down a tricky state-update bug caused by a ByteArray inside a Compose state class — Kotlin compares arrays by reference, so mutated data wasn't triggering recomposition.

Projects

Yıldızname

Turkish-first astrology app, Kotlin Multiplatform, live on Google Play with iOS in App Store review.

A Turkish-first astrology app built from a single Kotlin/Compose Multiplatform codebase for Android and iOS, taken through signing, store listing, and production release on Google Play — the iOS version is currently under App Store review.

  • Three-tier content pipeline (Room cache → Firestore → external API) with period-aware cache validation for daily and monthly content.
  • TypeScript Cloud Functions backend that enriches templated horoscope data using the Gemini API on a schedule, with retry and model-fallback logic for quota and timeout failures.
  • Push notifications on both platforms from scratch, Firebase Anonymous Auth, and per-user Firestore security rules.
  • Native sharing that renders horoscope cards to PNG and shares them directly to Instagram Stories via platform intents.
Daily horoscope screen for Capricorn, showing the zodiac constellation and the day's reading
Günlük yorum
Detailed compatibility analysis between Taurus and Pisces, with a 91% match score and category breakdown
Detaylı analiz
Monthly zodiac calendar for August 2026 with daily indicators and a summary of the month ahead
Burç takvimi
  • Kotlin Multiplatform
  • Compose Multiplatform
  • Room
  • Firebase Auth
  • Firestore
  • Cloud Functions (TypeScript)
  • Gemini API
  • FCM/APNs

Agentic Sprint Planner

Multi-agent AI pipeline that turns raw epics into an assigned sprint board, built to learn backend and multi-agent system design.

My second grad project, taken on specifically to get into backend development and learn how to design multi-agent AI systems. A full-stack tool that automates sprint planning end to end — from raw epics to an assigned sprint board — using four focused AI agents (breakdown, estimation, capacity, distribution) instead of one general-purpose call, so each agent stays narrow and failures are easy to isolate. It integrates with Trello to publish approved plans as real cards, and keeps a persistent team memory of velocity and history so later sprints get sharper suggestions. Built working closely with Claude Code — planning the architecture together, then splitting features into focused implementation runs — and deployed end to end on Railway and Vercel.

  • Java 21
  • Spring Boot 3
  • PostgreSQL
  • JPA/Hibernate
  • Flyway
  • React
  • TypeScript
  • Zustand
  • TanStack Query
  • Tailwind
  • Gemini API
  • Trello API
  • Railway
  • Vercel

Smart Reading Assistant for Visually Impaired Users

Glasses-mounted AI assistant that reads printed text aloud, in about 3–4 seconds, powered by Gemini.

A wearable AI assistant that helps visually impaired users understand printed text — menus, documents, labels — just by asking out loud. Rather than aiming a phone at text, the camera is built into a glasses frame so it naturally follows where the user is looking; they press a button, ask a question, and hear a spoken answer in about 3–4 seconds, powered by Gemini 2.5 Flash. Built as a graduation project at Gebze Technical University.

  • C++
  • ESP32-CAM
  • BLE
  • Kotlin
  • Jetpack Compose
  • Hilt
  • Retrofit
  • Room
  • Gemini 2.5 Flash

MindFlux — 2.5D Game with Custom Hardware Controllers

2.5D Unreal Engine runner playable via keyboard, joystick, motion bracelet, or head tracking — I built the hardware-to-game bridge.

A 2.5D endless runner built in Unreal Engine, playable four different ways — keyboard, a custom joystick, a motion-sensing wrist bracelet, or head movement tracked by camera. My part was the software bridge connecting all of the custom hardware to the game: a C++ SerialPort class inside Unreal that opens and reads from three completely different sources through the same interface — a serial line for the joystick, a Bluetooth RFCOMM device for the motion bracelet, and a FIFO named pipe for head-tracking data from a teammate's Python/OpenCV pipeline — with no third-party plugins. On the character side, I wrote the polling and parsing logic that turns each device's raw data into game input. CV processing was heavy enough to hurt performance on the main thread, so we moved it to its own thread.

Best bug of the project: the game would silently hang on launch, no error, just a frozen screen. Turned out one FIFO was opened in blocking write mode before Unreal had opened its read end — a named pipe write just sits there waiting for a reader that doesn't exist yet.

  • Unreal Engine
  • C++
  • IPC (Named Pipes/FIFO)
  • Multithreading & Concurrency
  • Serial Communication (UART/Bluetooth RFCOMM)
  • POSIX System Calls

aIoT — Smart House Controller App

Voice-controlled smart home app with real-time intruder photo alerts, across Raspberry Pi, ESP8266, and Android.

A distributed smart home system built for CSE476 (Mobile Communication Networks) — voice-controlled lights and real-time intruder alerts with photos, all over the local network, across a Raspberry Pi server, an ESP8266 relay, and an Android app. I built the Android app: record a voice command, send it to the Pi over the network, and get a push notification with a photo if the Pi's camera flags an unrecognized face. The app also runs its own lightweight HTTP server (NanoHTTPD) just to receive those intruder images from the Pi. The trickiest part was Retrofit — its base URL isn't known at build time since the Raspberry Pi's local IP can change — so I built a RetrofitManager that rebuilds the Retrofit instance at runtime whenever the user enters a new IP, persisting it so the app reconnects correctly across sessions.

Teammates handled the Raspberry Pi server (Node.js/Python, speech-to-text, face recognition) and the ESP8266 relay hardware.

  • Kotlin
  • Jetpack Compose
  • MVVM
  • Hilt
  • Retrofit
  • NanoHTTPD
  • Coroutines