Primers¶
Short introductions to the topics that come up again and again in software, cloud and embedded engineering. Each primer explains what something is, why it matters and the main ideas, in a few minutes’ reading, and then points to where to go deeper. They used to be called the Tech 101s.
The primers are introductions, not rules. The Guidelines and Standards sections say how things are done here; the Guides and the Handbook go into depth; the Glossary defines the terms.
The areas¶
| Area | Covers |
|---|---|
| Architecture | Decision records, C4, design principles and patterns, anti-patterns, hexagonal architecture, domain-driven design, event-driven architecture, monoliths and microservices, device shadows |
| Distributed systems | CAP and PACELC, consistency models and CRDTs, idempotency, sagas |
| APIs and data | REST, OpenAPI and AsyncAPI, JSON, YAML, Protocol Buffers, CBOR |
| Cloud | CI/CD, infrastructure as code, serverless, Kafka, IoT on Google Cloud |
| IoT and embedded | Embedded design, RTOS, state machines, interrupts and DMA, watchdogs, bootloaders, MQTT, CoAP, LwM2M, cellular LPWAN, firmware updates, edge computing, hardware-in-the-loop testing |
| Security | Cryptography, PKI, TLS and DTLS, post-quantum cryptography, secure coding, OWASP Top 10, OAuth and OpenID Connect, zero trust, ETSI EN 303 645, ISO/IEC 30141 |
| Methods and delivery | Life cycle models, agile, Scrum and Kanban, event storming, architecture evaluations, testing, code review, technical debt, docs as code, root cause analysis |
| Programming and tools | Git, static analysis, PlantUML and Mermaid, Python, Rust, the terminal |
The primer areas.
Suggested reading paths¶
If you are new to an area, these orders build on each other.
Embedded and IoT firmware
- Embedded systems design
- Real-time operating systems and FreeRTOS
- Finite state machines
- Interrupts and DMA
- Cellular LPWAN, then CoAP or MQTT
- CBOR and compact binary formats
- Bootloaders and firmware over the air
- ETSI EN 303 645
- Hardware-in-the-loop testing
Cloud and distributed systems
- Cloud primers for the service models
- Domain-driven design
- Modular monolith or microservices
- Event-driven architecture and Kafka
- CAP and PACELC, idempotency and sagas
- Infrastructure as code and CI/CD pipelines
Security
- Cryptography basics
- PKI and certificates and TLS and DTLS
- Secure coding practices and the OWASP Top 10
- OAuth 2.0 and OpenID Connect
- Zero trust architecture
Technical leadership