AAverho

Averho knowledge

Topics.

Every concept in the curriculum, grouped by the path it belongs to. Read them in order, or start wherever the question you have today lives.

5of 50 available now

Path 01

Reliable distributed workflows

Build workflows that survive retries, partial failures, and reordered messages.

5 of 10 available
01

Idempotency

How to make repeated operations safe in the presence of retries.

20 min read
02

Timeouts, retries, backoff, and jitter

Bound waiting time and recover from transient failures without amplifying load.

25 min read
03

Queues and asynchronous processing

Decouple producers from consumers to smooth load and isolate failures.

25 min read
04

Transactional outbox

Publish events reliably by writing them in the same transaction as state.

30 min read
05

Synchronous request-response and its limits

Where synchronous calls help and where they create fragile coupling.

20 min read
06

Exactly-once claims and the reality

Why exactly-once is an application-level property, not a network guarantee.

Coming soon
07

Sagas and compensating transactions

Coordinate multi-step business processes without holding locks end-to-end.

Coming soon
08

Dead-letter queues and manual workflows

Isolate unprocessable messages and give humans a path to resolve them.

Coming soon
09

Backpressure and flow control

Let a system signal overload instead of collapsing under it.

Coming soon
10

Observability for reliability

Instrument workflows so retries, duplicates, and stalls are visible.

Coming soon
Path 02

Scaling and performance

Make systems handle more load without spending more than the load is worth.

0 of 10 available
01

Caching fundamentals and invalidation

What caching actually buys and why invalidation is the hard half.

Coming soon
02

Read models and materialized views

Precompute query-shaped data instead of deriving it on every request.

Coming soon
03

Indexing and query patterns

Design indexes from the queries you actually run, not from the schema.

Coming soon
04

Connection pooling and resource limits

Why a database falls over long before the application does.

Coming soon
05

Horizontal versus vertical scaling

When adding machines beats adding capacity to one machine.

Coming soon
06

Partitioning and sharding

Split data across nodes and live with the queries that no longer work.

Coming soon
07

Rate limiting and throttling

Protect shared capacity by deciding whose requests get refused.

Coming soon
08

Performance budgets and measurement

Measure latency honestly with percentiles before optimizing anything.

Coming soon
09

Asynchronous I/O and concurrency models

How threads, event loops, and async runtimes spend a machine differently.

Coming soon
10

Capacity planning and load testing

Find the breaking point deliberately instead of discovering it in production.

Coming soon
Path 03

System boundaries and integration

Design the contracts and edges where independent systems meet and evolve.

0 of 10 available
01

Module and service boundaries

Find the seams where a system naturally splits, before distributing anything.

Coming soon
02

API design: REST, RPC, and events

Pick an interaction style from the coupling it creates, not from fashion.

Coming soon
03

Event-driven fundamentals

Publish facts instead of commands, and accept the consequences.

Coming soon
04

Integrating external APIs

Depend on a system you do not control without inheriting its failures.

Coming soon
05

Versioning and backwards compatibility

Evolve a contract without breaking the consumers already using it.

Coming soon
06

Anti-corruption layers and adapters

Keep a foreign model from leaking into the core of your system.

Coming soon
07

Modular decomposition inside a monolith

Get boundaries and independence without paying for the network.

Coming soon
08

Monolith to microservices

Extract services incrementally and earn the cost of distribution.

Coming soon
09

Data ownership and shared databases

Why a shared database is the coupling that outlives every refactor.

Coming soon
10

Team topology and architecture

How organisation shape constrains architecture, and how to use that.

Coming soon
Path 04

Operability and production readiness

Run systems in production: observe, deploy, recover, and secure with intent.

0 of 10 available
01

Logging, metrics, and tracing

The three signals and the questions each one can actually answer.

Coming soon
02

Alerting and on-call fundamentals

Page a human only when a human can and must do something.

Coming soon
03

Feature flags and progressive delivery

Separate deploying code from releasing behaviour.

Coming soon
04

Configuration management

Keep configuration explicit, versioned, and separate from code.

Coming soon
05

Secrets management

Store, rotate, and scope credentials without leaking them.

Coming soon
06

Deployment strategies and rollback

Ship changes with a rollback path baked into the mechanism.

Coming soon
07

Incident response and postmortems

Coordinate during outages and learn from them blamelessly afterward.

Coming soon
08

Chaos engineering and failure injection

Probe failure modes deliberately before they surprise you.

Coming soon
09

Disaster recovery and backups

A backup you have never restored is a hypothesis, not a plan.

Coming soon
10

Security basics for backend engineers

The handful of failures that account for most real breaches.

Coming soon
Path 05

Data architecture for backend engineers

Model, store, and evolve data so it stays correct as the system grows.

0 of 10 available
01

Data modeling fundamentals

Model the domain's real entities, relationships, and invariants.

Coming soon
02

Normalization and denormalization

Trade write simplicity against read speed on purpose.

Coming soon
03

Transactions and isolation levels

What each isolation level prevents and the anomalies it still permits.

Coming soon
04

Event sourcing basics

Store state as an append-only log of the decisions that occurred.

Coming soon
05

Change data capture and data pipelines

Move data between systems from the log instead of from dual writes.

Coming soon
06

Data retention and archival

Decide what to keep, for how long, and where it lives afterward.

Coming soon
07

Schema evolution and migrations

Change schemas without downtime, data loss, or a big-bang cutover.

Coming soon
08

Read and write models: CQRS

Model the read and write sides separately when their needs diverge.

Coming soon
09

Consistency patterns

Strong, eventual, and causal consistency, and what each one costs.

Coming soon
10

Data quality and validation

Enforce invariants at the boundary so bad data never lands.

Coming soon