Technical Writing

Engineering insights for software professionals

Practical perspectives on production AI, software architecture and the engineering principles that help systems remain reliable, maintainable and designed to evolve.

These articles examine modern AI technologies through the wider lens of software engineering. The focus is not merely on making a demonstration work, but on understanding the decisions required to build complete software systems.

Topics include Retrieval-Augmented Generation, agentic systems, computer vision, architectural patterns, evaluation, observability and the long-term management of technical complexity.

Browse by Topic

Areas of technical exploration

Articles will be organised around complementary areas of AI engineering, software architecture and long-term system design.

01

AI Engineering

Designing, deploying and operating AI-enabled software systems beyond the experimental stage.

02

Retrieval-Augmented Generation

Retrieval quality, evaluation, architecture, observability and production concerns in RAG systems.

03

Agentic Systems

Tools, orchestration, workflows, responsibility boundaries and reliability in agent-based systems.

04

Computer Vision

Complete vision pipelines involving data, inference, evaluation, deployment and monitoring.

05

Software Architecture

System boundaries, interfaces, layers, deployment architecture and designing software to evolve.

06

Software Design

Modularity, abstraction, coupling, cohesion and practical design decisions within application code.

07

Enterprise Systems

Integration, distributed systems, workflows, orchestration and connecting AI capabilities to existing platforms.

08

Engineering Principles

Separation of concerns, design patterns, maintainability, documentation and disciplined technical decision-making.

Recent Writing

Latest articles and engineering notes

This section will grow into a chronological library of articles, technical notes and practical engineering investigations.

RAG Beyond the Demo

Why a working retrieval demonstration is only the beginning, and what software engineers should consider when designing a production-oriented RAG system.

Read article →

From Model to System

A system-level examination of the components surrounding a computer vision model in a production pipeline.

Engineering AI Systems for Change

How architecture, modularity and responsibility boundaries help AI systems accommodate changing models, providers and business requirements.

Writing Philosophy

Explain the engineering decisions—not only the technology

Many technical tutorials explain how to reproduce a particular result using a framework or API. That can be useful, but it often leaves the deeper engineering questions unanswered.

My writing aims to examine why decisions matter, how components interact, what can fail and how systems can be designed for maintainability, observability and future change.

Software architecture is not about making today’s development harder. It is about making tomorrow’s change easier.

Open Engineering Resources

Articles supported by practical material

Where appropriate, articles will connect to source code, notebooks, architecture notes, diagrams, experiments and supporting repositories.

GitHub Repositories

Inspect the engineering work

Explore implementations, project structure, documentation, experiments and architectural decisions alongside the articles.

View GitHub profile →

Practical RAG

Software Engineering RAG

A developing collection of practical RAG projects focused on software-engineering use cases rather than generic document chatbots.

Explore the repository →

Live Education

Discuss the ideas live

Selected article topics will also be explored through live sessions, demonstrations and professional learning programmes.

View live sessions →

Developing Library

A growing body of engineering knowledge

The article library is intentionally being developed alongside real projects and teaching material. This allows the writing to emerge from practical investigation rather than abstract commentary alone.

01

Project-led

Articles connect to problems encountered while building real systems.

02

Architecture-aware

Technologies are examined within the context of the complete system.

03

Designed to endure

The emphasis is on principles that remain useful as tools evolve.

Continue the Conversation

Follow new articles and engineering updates

Follow me on LinkedIn for new technical writing, project updates and announcements about future live sessions.