Principal Engineer & AI Builder — Dublin, Ireland

Building systems
that think
intelligently.

15+ years designing scalable distributed systems. Now at the intersection of LLM engineering, multi-agent systems, and MCP servers — shipping AI that actually works in production.

View Projects → Get in Touch
15+
Years exp.
6
Industries
Coffee
Scroll
About

Architecture-first
engineer with an
AI obsession.

I'm Onur Celikaslan, Principal Software Engineer at Eurofins Scientific in Dublin. My background spans life sciences, healthcare, gaming, oil & gas, and edtech — but my current focus is clear: building intelligent systems with LLMs.

I don't just integrate AI as a feature. I think about it as infrastructure — multi-agent orchestration, MCP server design, context-window management, and production-grade reliability. Clean Architecture and DDD aren't optional extras; they're how I think.

I'm also building RepraId and PulseMe — two independent products — while contributing to the .NET/AI engineering community through technical writing on LinkedIn.

Core Stack
.NET / C# 13
Azure Cloud
LLM Integration
MCP Servers
Semantic Kernel
Multi-Agent Systems
Microservices / DDD
CQRS / MediatR
Angular / TypeScript
Flutter
PostgreSQL / EF Core
Azure DevOps / CI/CD

What I've shipped.

02
Active · Personal

PulseMe

A Flutter-based mobile application with a full .NET backend. Healthcare domain product, built and delivered solo — mobile app, backend services, and infrastructure. Production-grade reliability in a regulated environment.

Flutter .NET Backend Healthcare Azure
03
Open Source

ResearchPipeline

Semantic Kernel + Claude API research pipeline in .NET 10. Multi-agent architecture demonstrating real LLM orchestration patterns. Published on GitHub as companion to a LinkedIn article series.

.NET 10 Semantic Kernel Claude API Multi-Agent
04
Open Source

LLMMessageBroker

LLM as intelligent middleware replacing RabbitMQ between ASP.NET Core microservices. Demonstrates semantic routing, intent detection, and context-aware message dispatch — a novel take on event-driven architecture.

ASP.NET Core LLM Routing Microservices Event-Driven
06
Enterprise · Baydoner

Syngen — Facial Recognition

Core backend architect for a facial recognition attendance platform deployed across 250+ branches and 10,000+ employees, handling 1k–100k RPS peak. Built on .NET Core microservices with real-time identity validation and iPad-based capture.

.NET Core Face Recognition Microservices GDPR IoT / iPad

The journey.

Mar 2024 — Present
Principal Software Engineer
Eurofins Scientific — Dublin, Ireland
Leading backend architecture with .NET 8, DDD, TDD. Driving AI automation adoption, MCP server integration, and multi-agent system exploration. Managing CI/CD on Azure DevOps.
Jan 2021 — Mar 2024
Senior Software Engineer · Scrum Master
Eurofins Scientific — Dublin, Ireland
Introduced DDD practices across the team. Led Angular + .NET Core full-stack delivery. Acted as Scrum Master, championed test automation, and mentored engineers across multiple squads.
Jan 2019 — Jan 2021
Senior Full-Stack Developer
Kianda Technologies — Dublin, Ireland
Built workflow automation platform features and integrations with Microsoft 365, SharePoint, Stripe, and DocuSign. .NET Core microservices following DDD principles, Ember.js frontend.
Mar 2017 — Dec 2018
Team Lead · Senior .NET Developer
egegen Internet Solutions — Izmir, Turkey
Promoted to Team Lead within 6 months. Architected the Syngen facial recognition system. Led cross-functional teams and managed end-to-end delivery of enterprise IoT + web solutions.
2007 — 2017
Software Developer → Senior Engineer
Sebit Inc. · RTB Education · Mega Industry · Wudya · Nokta Medya — Turkey
Cross-industry engineering across edtech, e-learning, oil & gas instrumentation, PLC/SCADA systems, and social gaming (Facebook Flash games). Built strong foundations in system design and low-level integration.

Thinking out loud
on LinkedIn.

Article 01

Multi-Agent Systems as Distributed Systems Patterns

Why the patterns we already know — sagas, choreography, circuit breakers — map directly onto LLM agent orchestration. And why treating AI agents as distributed systems is the right mental model.

Read on LinkedIn →
Article 02

Building a Semantic Kernel + Claude Research Pipeline in .NET 10

A working multi-agent research pipeline using Semantic Kernel and the Anthropic Claude API. Full source on GitHub, architecture walkthrough, and lessons learned from real implementation.

View on GitHub →
Article 03

LLM as Intelligent Middleware: Replacing RabbitMQ with Language

What happens when your message broker understands intent? Replacing traditional queue-based routing with LLM-driven semantic dispatch between ASP.NET Core microservices.

Read on LinkedIn →
Article 04

LLM Token Management & RAG: BPE, Context Windows, and HyDE

Deep dive into tokenization strategy, hybrid retrieval, cross-encoder re-ranking, and RAGAS evaluation for production RAG pipelines. Practical patterns for .NET engineers.

Read on LinkedIn →
Series ongoing

AI Engineering for .NET Developers

An ongoing series covering MCP server design, prompt engineering patterns, multi-agent coordination, and production AI integration — written for senior engineers building real systems.

Follow on LinkedIn →
Coming soon

More articles in progress...

Building MCP servers from scratch. Agentic workflows in production. Memory management across LLM turns. Follow on LinkedIn to get notified.

Let's build
something intelligent.

Open to consulting engagements, technical leadership roles, and collaboration on AI engineering projects. If you're building something ambitious with LLMs, distributed systems, or .NET — reach out.

onur@celikaslan ~ zsh
onur@mac ~ whoami
Principal Engineer · AI Builder · Team Lead

onur@mac ~ cat ./current-focus.txt
→ LLM integration & multi-agent systems
→ MCP server design & tooling
→ Building RepraId & PulseMe
→ .NET AI engineering content

onur@mac ~ dotnet run --project RepraId
✓ Services started on https://localhost:5001
✓ LLM pipeline initialized
✓ Agents ready

onur@mac ~ echo "Available for work"