Ingeniero informático · Backend y sistemas distribuidos
Arif Emre AbduşoğluConstruyo sistemas que aguantanbajo carga real.
La mayor parte de mi trabajo ocurre en el lado del software que nadie ve: los límites de las transacciones, las garantías de entrega y las costuras donde termina un servicio y empieza el siguiente. El caso de estudio de abajo es la versión medida y honesta de uno de esos sistemas.
- Ubicación
- Türkiye
- Enfoque
- Java · Spring · Kafka · Next.js
- Estado
- Abierto a oportunidades
- 13servicios
- 70.869líneas de backend
- 55.022líneas de frontend
- 1524pruebas automáticas
Perfil
A qué me dedico realmente
Soy ingeniero informático y trabajo de extremo a extremo: primero el modelo de dominio y la arquitectura de backend, después la interfaz que tiene que hacer que todo parezca sencillo. Me interesan sobre todo las partes que deciden si un sistema sobrevive a un mal día: qué ocurre cuando un mensaje se entrega dos veces, cuando una dependencia se cae, cuando dos escritores compiten.
En los últimos meses convertí un monolito modular en funcionamiento en una flota de trece servicios independientes sin romperlo: base de datos física por servicio, transactional outbox, consumidores idempotentes y cada lectura entre servicios sustituida por una proyección local alimentada desde el log de eventos. El monolito congelado permaneció intacto byte a byte durante todo el proceso, como referencia y como camino de vuelta.
Escribo el razonamiento junto al código. Cada regla arquitectónica de esa plataforma la impone algo que rompe la compilación, no una convención que se pide recordar; y la documentación que describe la API asíncrona es en sí misma una prueba.
- Rol
- Ingeniero informático · full-stack, orientado al backend
- Stack principal
- Java 21 · Spring Boot · PostgreSQL · Kafka
- También
- TypeScript · Next.js · Python · Go
- Intereses
- Consistencia distribuida · herramientas de desarrollo · LLM aplicados
- Idiomas
- Turco · Inglés
Proyecto principal
App in Handy
Una plataforma de confianza donde el valor vive en el match, no en la app.
Una aplicación nunca es buena en abstracto: es buena resolviendo un problema concreto de una persona concreta. App in Handy se construye sobre esa idea: la unidad de valor es el Match entre un problema y una app, y es eso lo que lleva la puntuación.
Esa idea de producto es justamente lo que hace interesante el sistema. Puntuaciones, señales de demanda, moderación, búsqueda y un asistente de IA leen el mismo contenido desde ángulos distintos, que es exactamente la situación en la que una única base de datos compartida se convierte en silencio en aquello que nadie se atreve a tocar. Por eso no hay una: hay trece servicios, cada uno dueño de sus propios datos, coordinándose a través de un log de eventos.
13
servicios
26
topics de eventos
1524
pruebas de backend
106
migraciones de esquema
Tres repositorios, tres ciclos de vida
- platform13 servicios, un gateway de borde y 9 bibliotecas compartidasJava 21 · Spring Boot 3.5 · PostgreSQL · Kafka
- web-uiLa interfaz del producto: renderizada en servidor, en cuatro idiomasNext.js 16 · React 19 · RSC-first · capa de datos de 4 niveles
- landingLa superficie pública de marketing, desplegada por su cuentaNext.js 16 · OpenNext → Cloudflare Workers
Otros proyectos paralelos
Lo que construí antes de este
Más pequeños, casi todos con forma de LLM, y cada uno me enseñó algo que acabó en la plataforma de arriba. Abre uno para el resumen, o entra en su página para la historia completa.
Generador de contenido con IAEn producciónUna extensión de Chrome que convierte cualquier página en materia prima.
Una extensión de navegador que lee la página en la que estás y genera contenido original a partir de ella: textos de producto, borradores de blog, publicaciones sociales. Dos cosas la separan de un simple envoltorio: un scraper de doble modo que pasa a la extracción en cliente cuando bloquean la petición del servidor, y una plataforma de evaluación que compara arquitecturas de IA usando un segundo modelo como juez imparcial.
- Python
- Flask
- RAG
- PostgreSQL
- Vanilla JS
- Chrome Extension
Sistema de gestión de propuestas con LLMTerminadoLeer propuestas antiguas para escribir las nuevas.
Desarrollado durante unas prácticas profesionales. El sistema ingiere las propuestas que la empresa ya tiene, deduce la estructura escondida en ellas y la convierte en una plantilla reutilizable; después redacta propuestas nuevas dentro de esa plantilla con generación aumentada por recuperación, de modo que el resultado suena a la empresa y no a un modelo de lenguaje.
- Python
- Flask
- Next.js
- React Query
- PostgreSQL
- Alembic
- RAG
- JWT
LLM Remote AssistantEn desarrolloEntra lenguaje natural, sale Python en un sandbox.
Un experimento para darle manos de verdad a un modelo de lenguaje. En lugar de un catálogo fijo de comandos, el modelo escribe Python para la petición concreta y una arquitectura de seguridad en tres capas decide si ese código puede ejecutarse. Un cliente móvil es la superficie de mando; un agente ligero en la máquina hace el trabajo.
- Python
- Flutter
- Go
- Rust
- WebSocket
- Sandboxing
- LLM
Site-ChatEn desarrolloUna capa de conversación para cualquier URL.
Una plataforma de chat en tiempo real que asocia salas a direcciones web. Para las personas es un lugar donde comentar cualquier página (un artículo, un producto, un vídeo) con quienes también la están leyendo. Para las empresas es un widget incrustable que lleva esa misma conversación a su propio sitio.
- Go
- Next.js
- TypeScript
- WebSocket
- PostgreSQL
- JWT
Tecnologías
Con qué trabajo
Todo lo que aparece aquí se usa en código realmente publicado en alguno de los repositorios de arriba: es un inventario, no una lista de deseos.
Lenguajes
- Java 21
- TypeScript
- Python
- Go
- Rust
- SQL
Backend y datos
- 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
IA aplicada
- RAG
- pgvector
- BGE-M3 embeddings
- Structured outputs
- LLM-as-a-Judge
- Anthropic
- Groq
Plataforma y herramientas
- Docker
- Docker Compose
- Testcontainers
- Toxiproxy
- OpenTelemetry
- Prometheus
- Grafana
- GitHub Actions
- Cloudflare Workers
Contacto
Si algo de esto te resulta útil, me gustaría saberlo.
Estoy abierto a puestos de backend, plataforma y full-stack, y también a conversaciones que todavía no llevan un puesto adjunto.