Writing

Engineering ideas, explained clearly.

Notes and practical guides on software architecture, .NET, distributed systems, cloud-native engineering, security, and modern AI.

Writing archive

All articles

30 articles

Understanding LangChain: From Workflows to Intelligent Agents

A practical introduction to AI agents, ReAct, tool calling, and guardrails—and how they let LangChain applications make decisions beyond predefined workflows.

Read on Medium

Understanding LangChain: Building Intelligent Workflows

How sequential, parallel, conditional, branching, and dynamic chains connect LangChain building blocks into structured AI workflows.

Read on Medium

Understanding LangChain: The Building Blocks of Modern AI Applications

An accessible guide to the chat models, messages, runnables, output parsers, callbacks, and middleware behind modern LangChain applications.

Read on Medium

Understanding Event Sourcing: Events, Aggregates, Streams, and Projections

Part two of the Event Sourcing series explains immutable events, aggregate rules, event streams, rehydration, snapshots, and query-ready projections.

Read on Medium

Why CRUD Isn’t Enough: An Introduction to Event Sourcing

An introduction to the limits of current-state CRUD storage and how immutable event histories improve auditability, temporal analysis, and business workflows.

Read on Medium

Stop Guessing Why Your API Is Slow: A Practical Guide to Observability with OpenTelemetry

A practical guide to using logs, metrics, traces, and OpenTelemetry to investigate slow APIs with evidence instead of guesswork.

Read on Medium

C# Multithreading and Asynchronous Programming: Interview Questions Every .NET Developer Should Know

A focused review of advanced C# multithreading and asynchronous programming concepts through the questions .NET engineers commonly face in interviews.

Read on Medium
Top article

Inside Modern AI Search: RAG, Embeddings, Vector Databases, and Similarity Algorithms

A tour of modern retrieval systems covering embeddings, dense and sparse vectors, hybrid search, similarity metrics, vector databases, and the RAG pipeline.

Read on Medium
Top article

OWASP Top 10 (2026): The Most Critical Web Application Security Risks Every Developer Should Understand

A developer-focused explanation of the OWASP Top 10 security risks, why each category matters, and practical ways to reduce exposure in modern applications.

Read on Medium
Top article

AI vs. Machine Learning vs. Neural Networks vs. Deep Learning

Clear explanations of how AI, machine learning, neural networks, and deep learning relate to one another, including the algorithms and architectures behind them.

Read on Medium
Top article

Understanding the Model Context Protocol (MCP): How AI Apps Connect to the World

How MCP hosts, clients, servers, data layers, and transports give AI applications a standardized way to use external tools, data, and actions.

Read on Medium

From Monoliths to Societies: Understanding Agent-Oriented Software Engineering (AOSE)

An introduction to software systems built as societies of autonomous, goal-oriented agents that communicate, coordinate, and adapt to changing environments.

Read on Medium

The Ultimate Guide to Deployment Strategies: Blue-Green, Canary, Rolling, and Beyond

A comparison of recreate, rolling, blue-green, canary, shadow, A/B, feature-flag, and progressive deployment strategies and their tradeoffs.

Read on Medium

Cracking the Code: Why You Should Finally Learn Design Patterns

Why recurring design problems deserve reusable solutions, and how design patterns help developers replace boilerplate with clearer, more maintainable structures.

Read on Medium

Managing the Secure Software Development Life Cycle: Bridging Methodologies and Management

A management-oriented look at integrating security across planning, design, implementation, testing, deployment, and maintenance in the software lifecycle.

Read on Medium

Domain-Driven Design (DDD): A Practical Guide for Developers Who Want to Build Real Business Software

A jargon-light guide to domains, subdomains, ubiquitous language, bounded contexts, and modeling software around real business rules.

Read on Medium

How Generative AI and Large Language Models Are Transforming Software

An introduction to generative AI and LLM foundations—from tokens, transformers, and attention to sampling and context management—and their impact on software products.

Read on Medium

Understanding ACID Principles in DBMS

A clear explanation of atomicity, consistency, isolation, and durability and how these guarantees protect data integrity and reliability in transactional systems.

Read on Medium

The Ultimate Guide to Kubernetes Tools: Management, Monitoring, and Security

A survey of tools that simplify Kubernetes cluster management, deployment, monitoring, networking, and security, with guidance on where each fits.

Read on Medium

Essential Concepts Every Software Engineer Must Know

A broad guide to the fundamental data structures, algorithms, architecture practices, quality principles, and tools engineers use to build maintainable systems.

Read on Medium

Understanding Kubernetes Horizontal Pod Autoscaler (HPA)

How Kubernetes HPA responds to changing demand, the metrics and configuration it relies on, and the role it plays in efficient application scaling.

Read on Medium

Unleashing Kubernetes: Deploying Scalable and Resilient Stateless Applications

A practical introduction to deploying stateless workloads on Kubernetes for repeatable releases, horizontal scaling, and resilient operation.

Read on Medium

Kubernetes Architecture: An In-Depth Exploration

A detailed walkthrough of Kubernetes architecture and the control-plane and worker-node components that coordinate deployment, scaling, and cluster management.

Read on Medium

Common Pitfalls in .NET Development and How to Avoid Them

A review of common .NET mistakes that undermine performance, reliability, and maintainability, with practical guidance for avoiding them.

Read on Medium

Data Structures in C#

A practical comparison of core and concurrent C# data structures, their performance characteristics, and the workloads each collection best supports.

Read on Medium

Microservices at Scale: Docker Swarm’s Load Balancing and Raft Consensus Mechanisms

How Docker Swarm uses service discovery, load balancing, and Raft consensus to coordinate scalable, fault-tolerant microservice deployments.

Read on Medium

Cloud Computing vs. Serverless Computing

A comparison of traditional cloud and serverless models across infrastructure control, scaling, operational effort, cost, and suitable workloads.

Read on Medium

Cloud Computing and Its Ontology

An overview of cloud computing concepts and the vocabulary that connects service models, deployment models, resources, providers, and consumers.

Read on Medium

C# Multithreading and Concurrency: A Comprehensive Overview

A foundation in C# concurrency and multithreading, explaining how applications coordinate multiple operations while staying responsive and correct.

Read on Medium

Message Queues: Operational Models, Features, and Comparative Analysis

A comparison of message-queue models and features for reliable, decoupled communication between independently deployable microservices.

Read on Medium