Skip to content

a Programmer

Code. Solve. Create.

Foundations of Computer Science

Algorithms, Data structures, Big-O complexity, and the inner workings of networks, operating systems and databases.

Software Architecture

System decomposition, Architecture styles, Non-functional requirements, Technology selection, Integration patterns, Data architecture, Deployment architecture, Cross-cutting concerns, Quality attributes, Governance and constraints.

Software Design

Design patterns, SOLID principles, Class and module design, Algorithm selection, Data structures, Interface design, Error handling, State management, Code organization, Testing strategy.

Backend

Design of scalable systems, microservices, design patterns, and resilience.

Frontend

Frameworks, State Management, Accessibility, and Optimization.

DevOps & Cloud

Infrastructure as code, Kubernetes, CI/CD, and modern observability.

Security

OWASP, DevSecOps, Secrets Management, and Rate Limiting and Throttling.

Quality and Maintenance

Code Review, Refactoring, Technical Debt, Automation, Clear Documentation, and Testing.

Leadership and Impact

Mentoring, trade-off management, RFC writing, and engineering culture.

Seniority and Impact

Anticipating Problems, Avoid over Engineering, Automation, and Developer Experience.

Readings

The C++ Programming Language, C# Design Patterns, Domain-Driven Design, The Clean Coder, …


Uses the shortcut CMD + K (or CTRL + K) to quickly find any concept, such as “CORS”, “Kafka”, or “SOLID”.

Each technical article contains a section dedicated to Trade-offs. As experts, our job is not to find the “best” tool, but the one with the most acceptable set of disadvantages for the current problem.

This is a living document. Feel free to open a PR if you find concepts that need updating or new technologies that should be mapped.