Informatiker · Backend und verteilte Systeme
Arif Emre AbduşoğluIch baue Systeme, die unterechter Last zusammenhalten.
Der größte Teil meiner Arbeit passiert auf der Seite von Software, die niemand sieht: Transaktionsgrenzen, Zustellgarantien und die Nahtstellen, an denen ein Service endet und der nächste beginnt. Die Fallstudie unten ist die gemessene und ehrliche Fassung eines solchen Systems.
- Standort
- Türkiye
- Schwerpunkt
- Java · Spring · Kafka · Next.js
- Status
- Offen für neue Aufgaben
- 13Services
- 70.869Zeilen Backend
- 55.022Zeilen Frontend
- 1.524automatisierte Tests
Profil
Was ich tatsächlich mache
Ich bin Informatiker und arbeite von Anfang bis Ende: zuerst Domänenmodell und Backend-Architektur, dann die Oberfläche, die das Ganze einfach wirken lassen muss. Am meisten interessieren mich die Teile, die darüber entscheiden, ob ein System einen schlechten Tag übersteht: was passiert, wenn eine Nachricht zweimal zugestellt wird, wenn eine Abhängigkeit ausfällt, wenn zwei Schreiber kollidieren.
In den letzten Monaten habe ich einen laufenden modularen Monolithen in eine Flotte aus dreizehn eigenständigen Services überführt, ohne ihn zu zerbrechen: physisch eine Datenbank pro Service, Transactional Outbox, idempotente Consumer und jede serviceübergreifende Leseoperation ersetzt durch eine lokale Projektion aus dem Event-Log. Der eingefrorene Monolith blieb dabei Byte für Byte unverändert: als Referenz und als Rückweg.
Ich schreibe die Begründung neben den Code. Jede Architekturregel dieser Plattform wird von etwas erzwungen, das den Build scheitern lässt, und nicht von einer Konvention, an die man sich erinnern soll, und die Dokumentation der asynchronen API ist selbst ein Test.
- Rolle
- Informatiker · Full-Stack mit Backend-Schwerpunkt
- Hauptstack
- Java 21 · Spring Boot · PostgreSQL · Kafka
- Außerdem
- TypeScript · Next.js · Python · Go
- Interessen
- Verteilte Konsistenz · Entwicklerwerkzeuge · angewandte LLMs
- Sprachen
- Türkisch · Englisch
Hauptprojekt
App in Handy
Eine Vertrauensplattform, auf der der Wert im Match liegt, nicht in der App.
Eine App ist nie abstrakt gut; sie ist gut darin, ein bestimmtes Problem einer bestimmten Person zu lösen. App in Handy ist um diese Idee herum gebaut: Die Werteinheit ist das Match zwischen einem Problem und einer App, und genau das trägt die Bewertung.
Diese Produktidee ist der Grund, warum das System interessant zu bauen ist. Bewertungen, Nachfragesignale, Moderation, Suche und ein KI-Assistent lesen denselben Inhalt aus verschiedenen Blickwinkeln: also genau die Lage, in der eine einzige gemeinsame Datenbank still zu dem wird, was niemand mehr anzufassen wagt. Deshalb gibt es keine: Es gibt dreizehn Services, jeder Eigentümer seiner Daten, die sich über ein Event-Log abstimmen.
13
Services
26
Event-Topics
1.524
Backend-Tests
106
Schema-Migrationen
Drei Repositories, drei Lebenszyklen
- platform13 Services, ein Edge-Gateway und 9 gemeinsame BibliothekenJava 21 · Spring Boot 3.5 · PostgreSQL · Kafka
- web-uiDie Produktoberfläche: serverseitig gerendert, in vier SprachenNext.js 16 · React 19 · RSC-first · vierstufige Datenschicht
- landingDie öffentliche Marketing-Oberfläche, eigenständig ausgeliefertNext.js 16 · OpenNext → Cloudflare Workers
Weitere Nebenprojekte
Was ich davor gebaut habe
Kleiner, meist LLM-nah, und jedes hat mir etwas beigebracht, das später in der Plattform oben gelandet ist. Für die Zusammenfassung eines aufklappen, für die ganze Geschichte auf seine Seite gehen.
KI-gestützter Content-GeneratorLiveEine Chrome-Erweiterung, die jede Seite zu Rohmaterial macht.
Eine Browser-Erweiterung, die die geöffnete Seite liest und daraus eigenständige Texte erzeugt: Produkttexte, Blogentwürfe, Social-Posts. Zwei Dinge machen daraus mehr als eine Hülle: ein Scraper in zwei Modi, der auf clientseitige Extraktion wechselt, sobald die serverseitige Anfrage blockiert wird, und eine Evaluationsplattform, die KI-Architekturen mit einem zweiten Modell als unparteiischem Schiedsrichter vergleicht.
- Python
- Flask
- RAG
- PostgreSQL
- Vanilla JS
- Chrome Extension
LLM-gestütztes AngebotsmanagementAbgeschlossenAlte Angebote lesen, um neue zu schreiben.
Während eines Praktikums entstanden. Das System nimmt die vorhandenen Angebotsdokumente eines Unternehmens auf, erschließt die darin verborgene Struktur und macht daraus eine wiederverwendbare Vorlage und entwirft neue Angebote mit Retrieval-Augmented Generation in diese Vorlage hinein, sodass das Ergebnis nach dem Unternehmen klingt und nicht nach einem Sprachmodell.
- Python
- Flask
- Next.js
- React Query
- PostgreSQL
- Alembic
- RAG
- JWT
LLM Remote AssistantIn EntwicklungNatürliche Sprache hinein, Python in der Sandbox hinaus.
Ein Versuch, einem Sprachmodell echte Hände zu geben. Statt eines festen Befehlskatalogs schreibt das Modell Python für die konkrete Anfrage, und eine dreischichtige Sicherheitsarchitektur entscheidet, ob dieser Code laufen darf. Ein mobiler Client ist die Kommandooberfläche; ein schlanker Agent auf dem Rechner erledigt die Arbeit.
- Python
- Flutter
- Go
- Rust
- WebSocket
- Sandboxing
- LLM
Site-ChatIn EntwicklungEine Gesprächsschicht für jede URL.
Eine Echtzeit-Chatplattform, die Räume an Webadressen bindet. Für Einzelne ist es ein Ort, jede Seite (einen Artikel, ein Produkt, ein Video) mit denen zu besprechen, die sie gerade auch lesen. Für Unternehmen ist es ein einbettbares Widget, das dieselbe Unterhaltung auf die eigene Website holt.
- Go
- Next.js
- TypeScript
- WebSocket
- PostgreSQL
- JWT
Technologien
Womit ich arbeite
Alles hier steckt in ausgelieferten Code in einem der Repositories oben; das ist ein Inventar, keine Wunschliste.
Sprachen
- Java 21
- TypeScript
- Python
- Go
- Rust
- SQL
Backend und Daten
- Spring Boot 3.5
- Spring Cloud Gateway
- Hibernate / JPA
- Flyway
- Maven
- Kafka / Redpanda
- PostgreSQL
- Redis
- Resilience4j
- MapStruct
Frontend
- Next.js 16
- React 19
- React Compiler
- Tailwind v4
- Zod
- TanStack Query
- Zustand
- Radix UI
Angewandte KI
- RAG
- pgvector
- BGE-M3 embeddings
- Structured outputs
- LLM-as-a-Judge
- Anthropic
- Groq
Plattform und Werkzeuge
- Docker
- Docker Compose
- Testcontainers
- Toxiproxy
- OpenTelemetry
- Prometheus
- Grafana
- GitHub Actions
- Cloudflare Workers
Kontakt
Wenn hiervon etwas für Sie nützlich ist, würde ich gern davon hören.
Ich bin offen für Backend-, Plattform- und Full-Stack-Rollen und für Gespräche, an denen noch keine Stelle hängt.