# mtdvio/every-programmer-should-know

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/mtdvio-every-programmer-should-know).**

97,839 stars · 8,641 forks · cc-by-4.0

## Links

- GitHub: https://github.com/mtdvio/every-programmer-should-know
- awesome-repositories: https://awesome-repositories.com/repository/mtdvio-every-programmer-should-know.md

## Topics

`cc-by` `collection` `computer-science` `educational` `novice`

## Description

This project is a comprehensive, community-curated knowledge base designed to support software engineers in mastering both fundamental computer science principles and practical industry methodologies. It serves as a centralized reference library that aggregates technical resources, academic literature, and professional guidance to facilitate systematic skill acquisition across the entire software development lifecycle.

What distinguishes this repository is its holistic approach to the engineering profession, which bridges the gap between theoretical knowledge and career-oriented development. Beyond core technical topics like system architecture, distributed systems, and algorithmic design, the project provides extensive guidance on professional growth, including resume optimization, soft skills, and strategies for maintaining mental health and productivity in demanding technical environments.

The repository covers a broad capability surface, ranging from low-level system concerns such as memory management and data structures to high-level practices in platform engineering and software craftsmanship. It also incorporates resources for collaborative development, security protocols, and interactive learning, ensuring that developers have access to authoritative information for both daily problem-solving and long-term career advancement.

The content is structured as a hierarchical collection of markdown files, maintained through a version-controlled, community-driven workflow that ensures the information remains accurate and relevant as industry standards evolve.

## Tags

### Content Management & Publishing

- [Hyperlink-Centric Knowledge Maps](https://awesome-repositories.com/f/content-management-publishing/documentation-knowledge-management/knowledge-bases/curated-resource-directories/hyperlink-centric-knowledge-maps.md) — Organizes vast amounts of external technical information into a coherent, searchable map of industry knowledge.
- [Software Engineering Knowledge Bases](https://awesome-repositories.com/f/content-management-publishing/documentation-knowledge-management/knowledge-bases/technical-reference-systems/software-engineering-knowledge-bases.md) — Centralizes architectural guidelines and best practices to serve as a comprehensive reference for modern software engineering.
- [Domain Knowledge Maps](https://awesome-repositories.com/f/content-management-publishing/content-management-systems/content-management-platforms/enterprise-specialized-systems/knowledge-management-systems/knowledge-mapping-graph-tools/domain-knowledge-maps.md) — Connects abstract theoretical concepts to the practical methodologies used in professional software environments.
- [Community Curation Strategies](https://awesome-repositories.com/f/content-management-publishing/content-management-systems/content-management-platforms/enterprise-specialized-systems/knowledge-management-systems/collaborative-knowledge-platforms/community-curation-strategies.md) — Foster collective intelligence by gathering peer-reviewed insights and verified technical knowledge from a global community of practitioners.
- [Technical Research Guides](https://awesome-repositories.com/f/content-management-publishing/documentation-knowledge-management/knowledge-bases/curated-resource-directories/technical-research-guides.md) — Directs developers toward authoritative resources and documentation to resolve complex technical blockers. ([source](https://github.com/mtdvio/every-programmer-should-know#readme))

### Education & Learning Resources

- [Computer Science Foundations](https://awesome-repositories.com/f/education-learning-resources/educational-resources/algorithms-theory-academics/cs-theory-foundations/computer-science-foundations.md) — Builds a baseline of essential academic knowledge through a structured collection of computer science principles. ([source](https://github.com/mtdvio/every-programmer-should-know#readme))
- [Career Advancement Resources](https://awesome-repositories.com/f/education-learning-resources/professional-development-career/professional-development/career-advancement-resources.md) — Equips engineers with the necessary insights and strategies to advance through various stages of their technical careers. ([source](https://github.com/mtdvio/every-programmer-should-know#readme))
- [Career Guidance](https://awesome-repositories.com/f/education-learning-resources/professional-development-career/professional-development/career-advancement-resources/career-guidance.md) — Navigates professional growth by highlighting key milestones and strategies for long-term career success.
- [Computer Science Fundamentals](https://awesome-repositories.com/f/education-learning-resources/technical-domain-education/technical-academic-domains/theoretical-cs-foundations/computer-science-fundamentals.md) — Explains core theoretical concepts necessary for mastering system architecture and fundamental computational logic.
- [Algorithms](https://awesome-repositories.com/f/education-learning-resources/educational-resources/algorithms-theory-academics/cs-theory-foundations/algorithms.md) — Clarifies complex computational procedures and data processing logic through clear, community-vetted explanations. ([source](https://github.com/mtdvio/every-programmer-should-know#readme))
- [Data Structures](https://awesome-repositories.com/f/education-learning-resources/educational-resources/algorithms-theory-academics/cs-theory-foundations/data-structure-implementations/data-structures.md) — Simplifies the study of data organization techniques required for building efficient software systems. ([source](https://github.com/mtdvio/every-programmer-should-know#readme))
- [Coding Exercises](https://awesome-repositories.com/f/education-learning-resources/educational-resources/courses-training-certifications/courses-structured-learning/coding-exercises.md) — Presents hands-on technical challenges and interview-style questions to sharpen programming proficiency. ([source](https://github.com/mtdvio/every-programmer-should-know#readme))
- [Productivity and Wellness Strategies](https://awesome-repositories.com/f/education-learning-resources/professional-development-career/career-development/developer-wellness/productivity-and-wellness-strategies.md) — Shares actionable advice for managing workload, preventing burnout, and improving collaboration within remote teams.
- [Soft Skills](https://awesome-repositories.com/f/education-learning-resources/professional-development-career/professional-development/career-advancement-resources/soft-skills.md) — Refines interpersonal communication and professional conduct through targeted guidance for engineers. ([source](https://github.com/mtdvio/every-programmer-should-know#readme))
- [Programming Research Papers](https://awesome-repositories.com/f/education-learning-resources/educational-resources/reference-and-media/books-docs-reference/programming-research-papers.md) — Examine foundational academic research to ground modern development practices in proven computer science theory and historical context. ([source](https://github.com/mtdvio/every-programmer-should-know#readme))
- [Mental Health and Well-being](https://awesome-repositories.com/f/education-learning-resources/professional-development-career/professional-development/career-advancement-resources/mental-health-and-well-being.md) — Prioritize sustainable professional habits by integrating stress management and burnout prevention strategies into daily technical workflows. ([source](https://github.com/mtdvio/every-programmer-should-know#readme))
- [Memory Management](https://awesome-repositories.com/f/education-learning-resources/technical-domain-education/technical-academic-domains/theoretical-cs-foundations/computer-science-fundamentals/memory-management.md) — Master the intricacies of resource allocation and deallocation to maintain system stability and prevent memory-related performance degradation. ([source](https://github.com/mtdvio/every-programmer-should-know#readme))

### Software Engineering & Architecture

- [Architectural Patterns](https://awesome-repositories.com/f/software-engineering-architecture/software-architecture/architectural-patterns.md) — Outlines high-level structural patterns that ensure software systems remain scalable and reliable over time. ([source](https://github.com/mtdvio/every-programmer-should-know#readme))
- [Design Patterns](https://awesome-repositories.com/f/software-engineering-architecture/architectural-design-patterns/design-patterns.md) — Catalogs proven design solutions that help developers resolve recurring architectural challenges effectively. ([source](https://github.com/mtdvio/every-programmer-should-know#readme))
- [Software Engineering Best Practices](https://awesome-repositories.com/f/software-engineering-architecture/project-management-governance/project-governance/standards-rule-enforcement/software-engineering-best-practices.md) — Establishes industry-standard coding conventions and disciplined methodologies for professional software development. ([source](https://github.com/mtdvio/every-programmer-should-know#readme))
- [Distributed Systems](https://awesome-repositories.com/f/software-engineering-architecture/software-architecture/distributed-computing-paradigms/distributed-systems.md) — Details the fundamental principles required to design and maintain resilient distributed computing systems. ([source](https://github.com/mtdvio/every-programmer-should-know#readme))
- [Software Craftsmanship](https://awesome-repositories.com/f/software-engineering-architecture/development-methodologies/engineering-best-practices/code-quality-design-principles/software-craftsmanship.md) — Encourages disciplined coding habits and modular design to foster long-term software sustainability.
- [Development Workflows](https://awesome-repositories.com/f/software-engineering-architecture/development-methodologies/engineering-best-practices/development-process-methodologies/development-workflows.md) — Streamlines development processes by providing standardized workflows for testing, integration, and project maintenance. ([source](https://github.com/mtdvio/every-programmer-should-know#readme))
- [Engineering Best Practices](https://awesome-repositories.com/f/software-engineering-architecture/development-methodologies/engineering-best-practices.md) — Adopt industry-standard architectural patterns and rigorous quality guidelines to ensure robust and maintainable software development outcomes. ([source](https://github.com/mtdvio/every-programmer-should-know#readme))
- [Platform Engineering](https://awesome-repositories.com/f/software-engineering-architecture/development-methodologies/engineering-best-practices/infrastructure-and-platform/platform-engineering.md) — Standardize internal development processes by documenting best practices for infrastructure provisioning and deployment automation. ([source](https://github.com/mtdvio/every-programmer-should-know#readme))

### Testing & Quality Assurance

- [Security Practices](https://awesome-repositories.com/f/testing-quality-assurance/software-testing/security-practices.md) — Highlights defensive programming techniques and essential security protocols to protect software systems. ([source](https://github.com/mtdvio/every-programmer-should-know#readme))
