Full-stack developer at Tech Talent Space, building Qalentis — an AI-powered hiring and HR performance platform. On the side I build open-source tools in Rust, Go, Zig, F#, Java, C# and Python, shipped with tests, CI and, where it fits, a live demo.
| Project | What it does | |
|---|---|---|
| kilim | Conflict-free collaborative editing: an RGA sequence CRDT in Rust → WebAssembly | demo |
| raft-lab | Raft consensus from scratch in Go, 500-seed deterministic fault injection | demo |
| chunkmap | Finds duplicated bytes across and inside files: FastCDC + BLAKE3, one static Zig binary | report |
| subdrift | Fixes out-of-sync subtitles: FFT cross-correlation, framerate drift, Viterbi for cut scenes · F# | report |
| twinlens | Near-duplicate photos via pHash + BK-tree, keeps the best shot, fully undoable · Python | report |
| microservice-management-panel | Full stack: dynamic RBAC, RabbitMQ RPC, pgvector RAG, 99 integration tests | demo |
⭐ Featured — spring-kafka-orders
Two Spring Boot microservices that talk only through Apache Kafka: key-based ordering, parallel consumers with row locking, retries, a dead letter topic and idempotent consumers — each failure triggered by hand and covered by a test.
flowchart LR
client([client])
subgraph order-service
api[REST API] --> odb[(orders)]
srl[stock-results listener] --> odb
end
subgraph Kafka
orders[[orders]]
results[[stock-results]]
dlt[[orders.DLT]]
end
subgraph inventory-service
ol[orders listener] --> idb[(products +<br/>processed events)]
end
client -->|POST /orders| api
api -->|OrderCreated<br/>key = orderId| orders
orders --> ol
ol -->|StockResult| results
ol -. failed after retries .-> dlt
results --> srl
Order lifecycle
sequenceDiagram
participant C as Client
participant O as order-service
participant K as Kafka
participant I as inventory-service
C->>O: POST /orders
O->>K: OrderCreated
O-->>C: 201 PENDING
K->>I: OrderCreated
I->>I: check eventId, lock row, reserve stock
I->>K: StockResult
K->>O: StockResult
O->>O: CONFIRMED / REJECTED
| Package | What it does |
|---|---|
| trkit | Correct Turkish casing (i → İ), TCKN, IBAN and plate validation · pip install trkit |
| kvkk | Finds and masks Turkish personal data in files, logs and dumps · pip install kvkk |
| bordro | Turkish payroll: gross ↔ net with cumulative income tax · npm install bordro |
| kilim | Collaborative-editing CRDT for the browser, Rust → WebAssembly · npm install @ardazeybek-dev/kilim |
| shapesmith | JSON samples → TypeScript, Zod and JSON Schema; Rust compiled to WebAssembly · playground · npm install shapesmith |
| App | What it does |
|---|---|
| aktar | Reads a bank statement, matches payments to people, fills the web panel · in use at a customer |
| chatterfix | Windows tray app that fixes the phantom double click of a worn mouse · C# / .NET |
K.I.T.T. — Knight Rider cockpit with an LLaMA-3 brain, one HTML file · live demo
More projects on my repositories page.