Blog

Thoughts on software engineering, productivity, and entrepreneurship

All Articles

25 articles and counting

Showing all 25 articles

Engineering

15 articles

May 16, 2026

Metrics You Must Measure From Day One

Most teams only start measuring after something breaks. But there are metrics that should be tracked from the very first line of code — even before you have a single user.

Engineering
Software EngineeringEngineering MetricsDevOps+2
May 16, 2026

When Is a Technical Improvement Worth Prioritizing?

Not every technical improvement needs to be done. But that does not mean all of them can be ignored. There is a simple framework for deciding which ones deserve priority — and which ones can wait.

Engineering
Software EngineeringEngineering LeadershipTechnical Debt+2
May 5, 2026

The Best Stack Is the One Your Team Can Execute With

Engineers obsess over picking the right technology, but the biggest predictor of success isn't the stack — it's the team's mastery, cohesion, and execution discipline.

Engineering
Software EngineeringTeamBest Practices+1
May 5, 2026

Choosing the Right Stack for the Job

A practical breakdown of what Node.js, .NET/C#, Python, Java, and Go are genuinely best at — ignoring team preferences and focusing purely on technical fit.

Engineering
Software EngineeringArchitectureBest Practices+1
May 3, 2026

Folder Structure in Practice: One Feature, Five Architectures (C# / .NET)

Building the same Orders feature using Simple MVC, Layered, Feature-Based, Clean Architecture, and Microservices — with testing strategies for each, using real code examples in C# and ASP.NET Core.

Engineering
Software EngineeringArchitectureC#+2
May 3, 2026

Folder Structure in Practice: One Feature, Five Architectures (Node.js)

Building the same Orders feature using Simple MVC, Layered, Feature-Based, Clean Architecture, and Microservices — with testing strategies for each, using real code examples in TypeScript, Express, and NestJS.

Engineering
Software EngineeringArchitectureTypeScript+3
May 3, 2026

Folder Structure in Practice: One Feature, Five Architectures (Python)

Building the same Orders feature using Simple MVC, Layered, Feature-Based, Clean Architecture, and Microservices — with testing strategies for each, using real code examples in Python and FastAPI.

Engineering
Software EngineeringArchitecturePython+2
May 3, 2026

Modular Monolith in Practice: Enforced Module Boundaries (C# / .NET)

Building the Orders feature using Modular Monolith with C# and ASP.NET Core — project separation, the internal keyword, ArchUnit for architecture tests, and the right testing strategy.

Engineering
Software EngineeringArchitectureC#+2
May 3, 2026

Modular Monolith in Practice: Enforced Module Boundaries (Node.js)

Building the Orders feature using Modular Monolith with TypeScript and NestJS — public API per module, inter-module communication, boundary enforcement with ESLint, and the right testing strategy.

Engineering
Software EngineeringArchitectureTypeScript+3
May 3, 2026

Modular Monolith in Practice: Enforced Module Boundaries (Python)

Building the Orders feature using Modular Monolith with Python and FastAPI — public API via __init__.py, Python Protocol as interface, import-linter for boundary enforcement, and the right testing strategy.

Engineering
Software EngineeringArchitecturePython+2
May 2, 2026

The Evolution of Folder Structure in Software Engineering

How folder structure evolved from simple MVC to Clean Architecture and Microservices — and why it reflects the engineering mindset of each era.

Engineering
Software EngineeringArchitectureBest Practices
April 21, 2026

Using Claude Code and GitNexus with Multi-Service Systems

How to analyze and refactor complex microservices architectures safely with Claude Code and GitNexus across multiple repositories

Engineering
Claude CodeGitNexusMicroservices+2
April 22, 2024

Testing Microservices in Practice with FastAPI and PostgreSQL

A comprehensive guide to testing strategies for microservices built with FastAPI and PostgreSQL

Engineering
PythonFastAPIPostgreSQL+3
March 15, 2024

Getting Started with Next.js 15

Learn how to build modern web applications with Next.js 15 and the App Router

Engineering
Next.jsReactWeb Development
March 1, 2024

Building Scalable APIs with FastAPI

Best practices for designing and implementing high-performance APIs

Engineering
PythonFastAPIAPI Design+1

AI & ML

6 articles

May 7, 2026

Introduction to RAG Systems — Giving LLMs Access to Your Data

Large language models are powerful reasoners but their knowledge is frozen at training time. Retrieval-Augmented Generation solves this by connecting models to live, private, and up-to-date information at query time.

AI & ML
RAGLLMAI Engineering+3
May 6, 2026

Introduction to Large Language Models — What Engineers Need to Know

LLMs are not magic, not sentient, and not unpredictable once you understand what they actually are. Here's the conceptual foundation every engineer working with AI systems needs before writing a single line of integration code.

AI & ML
LLMAI EngineeringMachine Learning+1
May 6, 2026

Introduction to Prompt Engineering — The Engineer's Starting Point

Prompt engineering is the practice of structuring inputs to get reliable, useful outputs from language models. It's learnable, systematic, and the first skill every AI engineer needs.

AI & ML
Prompt EngineeringLLMAI Engineering+2
May 6, 2026

LLM Integration in Production — What Nobody Tells You

Integrating large language models into a real system is a different discipline than using them via a chat interface. Here's what that actually looks like from an engineering standpoint.

AI & ML
LLMAI EngineeringPython+2
May 6, 2026

Prompt Engineering in Practice — A Field Guide for AI Engineers

Prompt engineering is not magic words and trial-and-error. It's a systematic discipline with learnable principles. Here's how to approach it like an engineer.

AI & ML
Prompt EngineeringLLMAI Engineering+2
May 6, 2026

Building RAG Systems That Actually Work in Production

Retrieval-Augmented Generation sounds simple — retrieve context, inject it, generate. The production reality is more complex. Here's a field guide to building RAG pipelines that are accurate, fast, and maintainable.

AI & ML
RAGLLMAI Engineering+2

Stay Updated

Get notified when I publish new articles about software engineering and entrepreneurship.