Resources
These are some useful resources I have learned from that I would recommend to others.
Software Architecture
Martin Fowler | Website |
12 Factor App (Heroku) | Article |
Domain Driven Design
DDD: The Good Parts | Video |
Domain analysis (Microsoft) | Article |
Microservices
Principles Of Microservices (Sam Newman) | Video |
Agile / Workflow
Agile manifesto | Article |
Agile principles | Article |
Continuous Delivery (Dave Farley) | Video |
Code Review Love | Article |
Git
Pro Git | E-Book |
Fix up and autosquash | Article |
C++
C++ Core Guidelines | Webpage | It is not important to memorize the recommendations because most of them can be enforced using a static analysis tool, however, it is good to understand the rational behind the guidelines. |
C++ FAQ | Article | Helps to explain the language design. |
CppCon | Youtube Channel | |
CppCast | Podcast | Hit or miss depending on the guest. Good for keeping up to date with what is happening in the C++ ecosystem and hearing real world stories. |
CMake
Effective CMake (Daniel Pfeifer) | Video |
Professional CMake (Craig Scott) | E-Book |
Python
Transforming Code into Beautiful, Idiomatic Python | Video | A few tricks to write more idiomatic Python which usually results in less lines of code and faster execution. |
Documentation
Technical Writing (Google) | Online Course | A short and well structured course. |
Data Structures & Algorithms
Abdul Bari | Youtube Channel | |
Introduction to Algorithms (MIT) | Youtube Playlist | |
Leetcode | Website | Lots of brain-teaser problems that typically require knowledge of data structures to develop an algorithmic solution. |
Operating Systems
Unix System Calls Part 1 & Part 2 (Brian Will) | Video |
Containers From Scratch (Liz Rice) | Video |
Microkernels (David Evans) | Video |
Networking
Networking tutorial (Ben Eater) | Youtube Playlist | Great explanation of networking from the physical layer up to the transport layer. |
How TCP Works | Youtube Playlist | |
YANG fundamentals | Youtube Video |
Programming Paradigms
OOP
Object-Oriented Programming is Bad Part 1 & Part 2 (Brian Will) | Video |
SOLID Principles | Article |
GRASP Princples | Article |
Dependency Injection Demystified | Article |