@tom_doerr: Comprehensive software architecture terminology mind map https://github.com/kimtth/software-architect-mindmap…
Summary
A curated GitHub repository containing a comprehensive mind map and reference collection covering software architecture terminology, cloud computing, data science, and developer resources.
View Cached Full Text
Cached at: 06/22/26, 03:48 PM
Comprehensive software architecture terminology mind map https://github.com/kimtth/software-architect-mindmap…
kimtth/software-architect-mindmap
Source: https://github.com/kimtth/software-architect-mindmap
Software Architecture Mindmap
The mindmap can be opened and edited using mindmap-maker-clean. You can also use it to convert the JSON source into a high-resolution PNG. Verified on Chrome and Firefox.
Contents
- Section 1: Software Architecture Mindmap
- Section 2: Software Architecture Reference
- Section 3: Computer Science Papers
- Section 4: Data Science (ML/NN)
- Section 5: Terminology and Comparisons
Software terminologies and concepts, software architecture overview
Software_Architecture_Mindmap.png
Three Main Pillars of Software Architecture:
- Modern Application Development
- Cloud Computing (AWS/Azure/GCP)
- Data Science (ML/NN)
- This mind map is based on the Fresco Play curriculum (the internal learning platform of Tata Consultancy Services). © 2022
- This repository was initially created for the mind map; currently, it is used as a curated collection of software architecture references.
Software Architecture Reference
- System Design 101: ByteByteGo
- Awesome Lists: 😎 Awesome lists about all kinds of interesting topics /
awesome.re/ github topic - Ecosyste.ms: Awesome: An open API service indexing awesome lists
- Awesome Software Architecture (simskij)
- Awesome Software Architecture: A curated list of awesome articles, videos, and other resources to learn and practice software architecture, patterns, and principles
- Software Architecture Books: A comprehensive list of books on Software Architecture
- System Design: Learn how to design systems at scale and prepare for system design interviews
- Microsoft .NET Application Architecture - Reference Apps
- Software Architecture Books
- System Design Fight Club
- System Design - Neo Kim
- Awesome System Design Resources
- Awesome Low Level Design (LLD) / Object Oriented Design (OOD)
- Awesome Engineering Articles: Curated high-quality engineering articles from top tech companies
Trend Reports and Mini-Books
- InfoQ: News and Articles
- Dzone: RefCards and Trend Reports
- Thoughtworks: Technology Radar (archived PDFs vo.1 - vol.34)
- Microsoft Learn: Documentation and Code samples
- Trendshift: GitHub Trending repositories
- Design Gurus: Portal For Tech Interviews
- System Design Blueprint: The Ultimate Guide
- InfoQ minibooks: Architectures You’ve Always Wondered About .. 2021 / 2023 / 2024 /2025 / Cell-Based Architecture
- Building a scalable authorization system
- Mastering RAG
- Mastering AI Agents
- Agentic Architectures for Retrieval-intensive Applications
- Programming Notes for Professionals books
- Google SRE Handbook
Building from scratch
- Let’s Build a Simple Database: Writing a sqlite clone from scratch in C
- Let’s Build A Simple Interpreter
- Let’s Build A Web Server
- Web Browser Engineering: Building a basic but complete web browser from scratch
- Clone Wars: 100+ open-source clones of popular sites
- Curated list of project-based tutorials
- Master programming by recreating your favorite technologies from scratch
- Build frontend applications at scale
- Writing an Operating System in 1,000 Lines
- minimal GPT
- PyTorch internals
- JavaScript Runtime from Scratch: C programming
Cloud Architecture
- AWS to Azure services comparison
- Google Cloud to Azure services comparison
- Compare AWS and Azure services to Google Cloud
- Microsoft Azure Developer’s Cheat Sheet: Every product, feature and service in the Azure family
- Azure Cloud Adoption Framework :CAF: organization-wide adoption guidance
- Azure Well-architected Framework :WAF: workload-focussed design and continuous improvement guidance
- Azure Architecture Center :AAC: architecture patterns and reference architectures
- Best practices in cloud applications
- Cloud Design Patterns
- Landing zone
- Resources for architects and developers of multitenant solutions
- Data partitioning strategies
- Azure FinOps Guide
- Modern Web App pattern for .NET / git
- AI agent orchestration patterns
Computer Science courses
- Kaggle Solutions and Ideas: Collection of Kaggle Solutions and Ideas
- Best-of Machine Learning with Python: A ranked list of awesome machine learning Python libraries. Updated weekly.
- freeCodeCamp: Learn to code for free. youtube
- Ultimate Collection of 60 YouTube Courses for 21 Programming Languages
- Computer Science courses with video lectures
- Introduction to CUDA Programming for Python Developers
- AI by Hand
- Computer Networking Fundamentals For Developers, DevOps, and Platform Engineers
Beginner Series by Microsoft
- Generative AI for Beginners
- ML for Beginners
- Web Dev for Beginners
- AI for Beginners
- Data Science for Beginners
- IoT for Beginners
- AI Agents for Beginners
- Cybersecurity for Beginners
- Model Context Protocol (MCP) For Beginners
- Generative AI for Beginners using .NET
- Mastering GitHub Copilot for C#/.NET Developers
- Choose Your Own Copilot Adventure
- XR Development for Beginners
- Mastering GitHub Copilot for AI Paired Programming
Industry Trends
- Software Industry Statistics: Statista Industry Insight
- Gartner Top Strategic Technology Trends 2024
- MAD (ML/AI/Data) Landscape
- Hype Cycle for Emerging Technologies 2024
- Microsoft Digital Defense Report
- Google DORA: DevOps Research and Assessment (DORA)
- Postman State of the API Report
- Stanford AI Index Annual Report
Newsletter
- Substack Leaderboard: Newsletter
- daily.dev: Personalized news feed
Tools & Research
Algorithm & Visualization
- Algorithm Visualizer: Interactive algorithm visualization
- Netron: Neural network visualizer
- Hello Algo: Algorithm tutorials
- Wikipedia: List of Algorithms: Comprehensive algorithm reference
Design Patterns & Development
- OOP Design Patterns: Object-oriented design patterns explained
- Dev Encyclopedia: Encyclopedia for developers (GitHub)
- Data Engineering Wiki: Data engineering resources and guides
Research & Academic Tools
- Semantic Scholar: AI-powered academic search engine
- Liner: AI research tool for highlighting and annotating
- Litmaps: Visualize relationships between research papers
- Connected Papers: Explore connected academic papers
- Ask R Discovery: AI-powered paper discovery tool
- scite_: Smart citation analysis and discovery
- Moonlight: Browser extension for academic research
Diagramming & Visualization Tools
- Excalidraw: Hand-drawn style diagrams
- Eraser.io: Diagramming as code
- PlantUML: UML diagrams
- GraphViz: Graph visualization
- Mermaid Diagram: Diagramming and charting tool
Best Practices
- Robin Wieruch Blog: React.js, Next.js, TypeScript, JavaScript libraries, and trends
- Best Kubernetes Tools: Curated Kubernetes tools by Bluelight Consulting
- PostgreSQL Wiki: Don’t Do This: Common PostgreSQL pitfalls
- Power BI DAX Patterns: Patterns and best practices for Power BI DAX
- How To Secure A Linux Server
- Crontab Guru: Interactive cron schedule expression editor and reference
Visual Learning
- Assembly code visualizer: Visualize Your Assembly Code
- explorar.dev: Explore curated open-source repositories with an interactive code browser.
- Idea Instructions: Complex concepts explained as IKEA-style visual instructions
- Linux Kernel Map: Interactive visual map of the Linux kernel subsystems
- Making Software: Visual explanations of how software works under the hood
- Understanding the Linux Kernel, Visually
LLM-generated wiki
Engineering blog
- AWS Architecture Blog
- Azure Architecture Blog
- GCP Cloud Blog
- Netflix TechBlog
- Uber Blog
- The Cloudflare Blog
- Engineering at Meta
- LinkedIn Engineering
- Stripe Blog: Engineering
- Discord Blog: Engineering & Developers
- Slack Engineering
- 79 Engineering Blogs To Level Up Your System Design Skills
Other Topics
- How to Architect Software for a Greener Future
- Generative Search: Practical Advice for Retrieval Augmented Generation (RAG)
- What are the Greenest Programming Languages?
- Frugal Architect Handbook
- .NET Developer Roadmap
- Celebrate 50 years of Microsoft with the company’s original source code: Altair Basic
- A periodic table for machine learning
- Every GPU — Data Viz: Visual comparison of GPU specs and performance across generations
Transformer Architecture (LLM Foundations)
- Attention Is All You Need
- Interactive Reinforcement Learning Explorer
- LLM Architecture Gallery
- LLM Visualization
- The Illustrated Transformer
- Transformer Explainer
- Why Momentum Really Works
Computer Science Books
General
- The Pragmatic Programmer by David Thomas and Andrew Hunt
- Modern Software Engineering by David Farley
- Code Complete by Steve McConnell
- Software Engineering at Google by Titus Winters, Tom Manshreck, and Hyrum Wright
Good Practices
- Clean Code by Uncle Bob Martin
- Head First Design Patterns by Eric Freeman
- Refactoring by Martin Fowler
- Design Patterns by Eric Gamma and Others
Data Structures and Algorithms
- Grokking Algorithms by Aditya Bhargava
- Introduction to Algorithms by Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein
- Cracking the Coding Interview by Gayle Laakmann McDowell
Data
- Designing Data-Intensive Applications by Martin Kleppman
- Learning SQL by Alan Beaulieu
Testing
- Growing Object-Oriented Software, Guided by Tests by Steve Freeman
- Unit Testing Principles, Practices, and Patterns by Vladimir Khorikov
- The Art of Unit Testing by Roy Osherove
- TDD by Example by Kent Beck
Software Architecture
- Fundamentals Of Software Architecture by Mark Richards and Neil Ford
- Clean Architecture by Uncle Bob Martin
- Software Architecture: The Hard Parts by Neal Ford, Mark Richards, Pramod Sadalage, and Zhamak Dehghani
- Domain-Driven Design Quickly by Abel Avram and Floyd Marinescu
- A Philosophy of Software Design by John Ousterhout
- System Design Interview by Alex Xu
- Domain-Driven Design by Eric Evans
Distributed Systems
- Understanding Distributed Systems by Roberto Vitillo
- Designing Distributed Systems by Brendan Burns
DevOps
- DevOps Handbook by Gene Kim, Patrick Debois, John Willis, and Jez Humble
- Continuous Delivery by Jez Humble and David Farley
- Accelerate by Nicole Forsgren, Jez Humble, and Gene Kim
Machine Learning
- The Hundred-Page Machine Learning Book by Andriy Burkov
- Designing Machine Learning Systems by Chip Huyen
- AI Engineering by Chip Huyen / git
Computer Science Papers
Computer Science Papers Every Developer Should Read
- On the Criteria To Be Used in Decomposing Systems into Modules (1972): D.L. Parnas
- An Axiomatic Basis for Computer Programming (1969): C.A.R. Hoare
- Time, Clocks, and the Ordering of Events in a Distributed System (1978): L. Lamport
- Out of the Tar Pit (2006): B. Moseley, P. Marks
- Dynamo: Amazon’s Highly Available Key-value Store (2007): G. DeCandia et al.
- MapReduce: Simplified Data Processing on Large Clusters (2004): J. Dean, S. Ghemawat
- A Note On Distributed Computing (1994): J. Waldo, G. Wyant, A. Wollrath, S. Kendall
- A Metrics Suite for Object-Oriented Design (1994): S.R. Chidamber
- A Relational Model of Data for Large Shared Data Banks (1969): E.F. Codd
- Why Functional Programming Matters (1990): J. Hughes 1- Transmission Control Protocol (1981): J. Postel | A TCP/IP Tutorial (1991): a tutorial on the TCP/IP protocol
70+ Distributed Systems papers
- Here’s a reading list of 70+ Distributed Systems papers mostly from conferences in just last 2 years! 70+ Distributed Systems papers [Jan 2024]
25 Papers That Completely Transformed the Computer World
- Dynamo: Amazon’s Highly Available Key Value Store
- Google File System: Insights into a highly scalable file system
- Scaling Memcached at Facebook: A look at the complexities of caching
- BigTable: The design principles behind a distributed storage system
- Borg: Large Scale Cluster Management at Google
- Cassandra: A look at the design and architecture of a distributed NoSQL database
- Attention Is All You Need: Into a new deep learning architecture known as the transformer
- Kafka: Internals of the distributed messaging platform
- FoundationDB: A look at how a distributed database works
- Amazon Aurora: How Amazon provides high availability and performance
- Spanner: Design and architecture of Google’s globally distributed database
- MapReduce: A detailed look at how MapReduce enables parallel processing of massive volumes of data
- Shard Manager: Understanding the generic shard management framework
- Dapper: Insights into Google’s distributed systems tracing infrastructure
- Flink: A detailed look at the unified architecture of stream and batch processing
- A Comprehensive Survey on Vector Databases
- Zanzibar: A look at the design, implementation, and deployment of a global system for managing access control lists at Google
- Monarch: Architecture of Google’s in-memory time series database
- Thrift: Explore the design choices behind Facebook’s code-generation tool
- Bitcoin: The ground-breaking introduction to the peer-to-peer electronic cash system
- WTF - Who to Follow Service at Twitter: Twitter’s (now X) user recommendation system
- MyRocks: LSM-Tree Database Storage Engine
- GoTo Considered Harmful
- Raft Consensus Algorithm: Learn about the more understandable consensus algorithm
- Time Clocks and Ordering of Events: The extremely important paper that explains the concept of time and event ordering in a distributed system
The best NLP papers from 2015 to now
Data Science (ML/NN)
- Awesome_Math_Books
- Free eBooks for ML, Data Science & AI
- ML and LLM system design: A database of 800 case studies from 150+ companies.
eBooks for ML, Data Science & AI
Machine Learning & Deep Learning
- Deep Learning – Ian Goodfellow, Yoshua Bengio, Aaron Courville
- Dive into Deep Learning – Aston Zhang et al.
- The Hundred-Page Machine Learning Book – Andriy Burkov
- Machine Learning Yearning – Andrew Ng
- Understanding Machine Learning – Shai Shalev-Shwartz, Shai Ben-David
- Machine Learning for Humans – Vishal Maini, Samer Sabri
- Approaching (Almost) Any ML Problem – Abhishek Thakur
- Machine Learning For Dummies – Judith Hurwitz, Daniel Kirsch
- Hands-On Machine Learning with R – Boehmke & Greenwell
- Machine Learning Engineering – Andriy Burkov
- Machine Learning Systems: Introduction to Machine Learning Systems – Vijay Janapa Reddi
Mathematics & Statistical Foundations
- Mathematics for Machine Learning – Deisenroth, Faisal, Ong
- The Elements of Statistical Learning – Friedman, Tibshirani, Hastie
- An Introduction to Statistical Learning – James et al.
- Pattern Recognition and ML – Christopher Bishop
- Information Theory, Inference, and Learning Algorithms – David J. C. MacKay
- Algebra, Topology, Calculus & Optimization for CS/ML – Jean Gallier
- Mathematical Methods for CV, Robotics, Graphics – Stanford
- Math Foundations for Computer Science – Stanford CS103
- @mathtalent Lecture Notes – Math-focused CS notes
- Algorithms for Artificial Intelligence – Moss
- Calculus for Mathematicians, Computer Scientists, and Physicists – Andrew D. Hwang
Probabilistic, Special Topics
- Probabilistic ML: An Introduction – Kevin P. Murphy
- Probabilistic ML: Advanced Topics – Kevin P. Murphy
- Applied Causal Inference – Uday Kamath et al.
- Reinforcement Learning: An Introduction – Sutton & Barto
- Deep Learning on Graphs – Yao Ma & Jiliang Tang
- Speech and Language Processing – Jurafsky & Martin
- Natural Language Processing with Python – Bird, Klein, Loper
- Computer Vision: Models, Learning, and Inference – Simon J.D. Prince
- Interpretable Machine Learning – Christoph Molnar
- ML Interpretability – Patrick Hall & Navdeep Gill
- Automated Machine Learning – Frank Hutter et al.
- Feature Engineering and Selection – Max Kuhn & Kjell Johnson
- Deep Learning Interviews – Shlomo Kashani, Amir Ivry
- Boosting: Foundations and Algorithms – Schapire & Freund
- A Brief Introduction to ML for Engineers – Osvaldo Simeone
Github for ML, Data Science & AI
Foundational Learning
- Machine Learning for Beginners – Microsoft
- The Data Engineering Handbook
- Virgilio – Data Science Curriculum
- Open Source Data Science Masters
- Python Data Science Handbook
- Data Science Python Notebooks
- Awesome Data Science
- Awesome Machine Learning
- Interactive Educational Data Science Python Dashboards
Deep Learning & Math
- Deep Learning Book (MIT)
- fastai Book (fastbook) | Fast.ai courses
- Mathematics for Machine Learning
- labml.ai – Deep Learning Paper Implementations
- Deep Learning Models by Rasbt
Practical Skills & Production
- Machine Learning Tutorials
- Machine Learning ZoomCamp
- Applied ML – Papers & Blogs
- Awesome Production Machine Learning
- Data Science Project Template (Cookiecutter)
- 365 Data Science Flashcards
- openpilot – Driver Assistance System
Interviews & Cheatsheets
Machine Learning Essentials
Terminology and Comparisons
- See Glossary.md: an overview of key terminology, definitions, and comparisons between related concepts.
Similar Articles
@tom_doerr: Generates architecture diagrams using http://Claude.ai https://github.com/Cocoon-AI/architecture-diagram-generator…
A tool that generates architecture diagrams using Claude.ai, available on GitHub.
@tom_doerr: Structured roadmaps for AI, ML, and LLM learning https://github.com/bishwaghimire/ai-learning-roadmaps…
A comprehensive, open-source GitHub repository providing structured learning roadmaps and curated resources for mastering AI, machine learning, deep learning, and large language models from beginner to advanced levels. Designed for students and professionals, it covers foundational concepts, programming frameworks, career tracks, and emerging AI topics.
@tom_doerr: Generates documentation and architectural diagrams for codebases https://github.com/FSoft-AI4Code/CodeWiki…
CodeWiki is an open-source tool that uses AI to generate holistic documentation and architectural diagrams for large-scale codebases, supporting multiple LLM providers and subscription modes.
@tom_doerr: 300+ engineering articles solving real-world problems at scale https://github.com/ashishps1/awesome-engineering-article…
A curated GitHub repository listing over 300 engineering articles from major tech companies, covering topics like AI, data engineering, and system scalability.
@tom_doerr: Curated list of AI engineering books, courses, and papers https://github.com/owainlewis/awesome-artificial-intelligence…
A curated collection of must-use resources for building AI systems, including books, courses, and landmark papers.