onse

Introduction

A premium software-engineering knowledge base covering architecture, distributed systems, databases, .NET, and the patterns that hold systems together.

onsoftware.engineering is a technical knowledge base for software engineers who design, build, and operate real systems. Articles emphasize precise explanations, diagrams, and working mental models—not marketing copy or checklist tutorials.

What you will find

Content is organised by topic so you can go deep without losing the thread across related ideas:

SectionFocus
Data Structures and AlgorithmsFoundations that underpin performance and correctness
ArchitectureSystem shape: modular monoliths, hexagonal design, event-driven flows
Distributed SystemsCoordination, hashing, and behaviour across machines
ScalabilityTechniques for growing read and write capacity
DatabasesSharding, locking, and concurrency control
.NETPractical guidance for the .NET platform
Programming LanguagesLanguage concepts that transfer across stacks
PatternsRecurring solutions and when to apply them

How to read

Each article stands alone, but cross-links connect related material. Prefer reading for understanding over skimming: definitions, prerequisites, comparisons, and diagrams are there to make trade-offs explicit.

Conventions

  • Precision over slogans. Terms are defined when they matter.
  • Trade-offs over dogma. Few techniques are universally correct.
  • Code that clarifies. Examples illustrate the idea; they are not production templates.
  • Interactive where it helps. Some topics—such as consistent hashing—include visualisations so you can see remapping behaviour.

Start here

If you are exploring architecture and scale:

  1. Modular Monolith
  2. Consistent Hashing
  3. Scaling Writes
  4. Database Sharding

Welcome. Dig in.

On this page