I prioritize doing things right over doing things fast and love building
systems for long-term usage,
making them understandable for future engineers.
// how I think about hierarchies
Experience
Where I've worked
Where I've worked, what I built, and how I grew.
-
Apr 2025 – Mar 2026 · 1 year
Senior Software Engineer
AI services company building LLM-powered conversational experiences for enterprise customers.
- — Migrated from a Microservice to a modular monolithic architecture, reducing development time and complexity.
- — Interviewed and onboarded 4 Software Engineers into the team.
- — Documented the adopted principles and recorded videos explaining the concepts adapted by the team.
- — Mentored 2 interns, supporting their growth and successful integration into the development team.
NestJS TypeScript Modular Monolith DDD Team Leadership -
Mar 2024 – Apr 2025 · 1 year 2 months
Software Engineer
AI services company building LLM-powered conversational experiences for enterprise customers.
- — Built an internal NestJS seedwork adopted across multiple microservices, standardising architecture and reducing onboarding effort.
- — Decoupled HTTP and gRPC communication protocols from business logic, making domain code more understandable and independently testable.
- — Discovered business bounded contexts and integrated domain model concepts into the existing N-Layered Architecture.
NestJS TypeScript DDD gRPC Microservices -
Apr 2023 – Feb 2024 · 11 months
Software Engineer – Digital Menu
Digital Menu is a platform for creating and managing digital menus for restaurants and cafes.
- — Implemented the inbox/outbox pattern, ensuring eventual consistency and idempotency of events.
- — Dockerized the project with separate test, development, and production stages, improving development experience.
- — Removed unnecessary abstractions tied to implementation details, making the codebase simpler and more maintainable.
NestJS TypeScript Inbox/Outbox Docker Event-Driven -
May 2022 – Apr 2023 · 1 year
Backend Engineer
Appointment management platform offering tailored scheduling solutions for businesses, serving over 200,000 users.
- — Migrated JavaScript codebase into TypeScript, using DDD, separating concepts in smaller chunks.
- — Planned parallel development of old repositories and integration with new services.
- — Contributed to the success of a company serving over 200,000 users by prioritizing solving existing challenges.
- — Solved payment problems and issuing subscriptions for the users, making a flow of purchase
- — Solved concurrency issue of reserving a slot of time for a user, using two level locks in the business process.
NestJS TypeScript Hexagonal Arch. CQRS DDD -
Oct 2021 – Mar 2022 · 6 months
Backend Developer
Web technology consultancy delivering creative software infrastructure solutions to clients.
- — Developed APIs using REST and GraphQL to support diverse client applications.
- — Implemented an N-layered architecture in NestJS, ensuring scalability, testability, and clear separation of concerns.
NestJS TypeScript REST GraphQL
Writing
Latest posts
Notes on software architecture, TypeScript patterns, and lessons from the field.
-
Data Inconsistency in Distributed Systems: Problem Patterns & Practical Solutions
Explore why data inconsistency happens in modern distributed systems, and learn proven patterns to tackle cross-service consistency, from basic transactions to inbox/outbox and saga patterns. Includes practical TypeScript examples.
#distributed-systems #data-consistency #transactions #patterns #typescript -
Wrong Abstractions: The Type Safety Trap
Why most TypeScript interfaces in modern web apps aren't real abstractions—and how overusing them for 'type safety' leads to code coupling and anti-patterns. Learn better approaches, with practical NestJS/TypeScript examples.
#abstraction #typescript #architecture #nestjs #anti-patterns -
DDD in Practice: The Value Object you're not writing
Most teams adopt DDD vocabulary but skip Value Objects because they feel like boilerplate. Here's why that's a mistake and how to introduce them without rewriting your codebase.
#ddd #typescript #architecture -
Clean Architecture with NestJS: A practical guide
NestJS modules map naturally to Clean Architecture layers — here's how to structure your project so that your domain stays framework-free and your tests stay fast.
#nestjs #typescript #clean-architecture
Talks
On stage
Conference talks and university workshops on architecture, patterns, and developer craft.
-
28 Dec 2024 · FullstacksJS YouTube Channel
Software Architecture and Hidden Costs
Trade-offs and how to avoid long-term architectural costs.
watch seminar → -
20 May 2024 · Vali-e-Asr University
Software Architecture
The importance and history of software architecture — from monoliths to modern distributed systems.
-
22 Apr 2024 · Vali-e-Asr University
Design Patterns
The importance of patterns with live demonstrations of real-world applications.
-
9 Feb 2023 · Vali-e-Asr University
Clean Code Principles
Clean code principles explained with annotated code samples and live refactoring.
Contact
Get in touch
You also care about patterns and architecture?
I'm open to discuss, feel free to contact me.
- Email khalvayozbek@gmail.com
- GitHub github.com/khalvai
- LinkedIn linkedin.com/in/khalvai-ozbek
- Telegram t.me/khalvai