explaingit

charlax/professional-programming

🔥 Hot50,966PythonAudience · developerComplexity · 1/5ActiveLicenseSetup · easy

TLDR

A curated reading list of books, articles, and talks for software engineers who want to grow beyond coding, covering architecture, databases, career growth, and management.

Mindmap

mindmap
  root((repo))
    What it does
      Curated resources
      Topic categories
      Vetted by experts
    Topics covered
      Technical skills
      Career growth
      Team leadership
      System design
    Resource types
      Books
      Articles
      Videos
      Papers
    How to use
      Browse by topic
      Find starting points
      Long-term reference
      No setup needed

Things people build with this

USE CASE 1

Find vetted books and articles to level up on system design, databases, or distributed systems.

USE CASE 2

Discover resources on soft skills like code review, writing clearly, and managing technical debt.

USE CASE 3

Build a reading plan for career growth from junior engineer to engineering manager.

USE CASE 4

Explore emerging topics like large language models and agentic coding with expert recommendations.

Getting it running

Difficulty · easy Time to first run · 5min
Use freely for any purpose including commercial, as long as you keep the copyright notice.

In plain English

Professional Programming is a curated reading list for software engineers who want to grow beyond just writing code. It collects books, articles, and talks that the repository maintainer has personally found valuable, organized into dozens of topic categories covering nearly every aspect of software engineering work, from low-level algorithms and databases to career growth, team communication, incident response, system architecture, and engineering management. The list is deliberately selective rather than exhaustive, meaning it only includes resources the author considers genuinely useful rather than trying to catalog everything that exists. Topics range from very technical subjects like compilers, garbage collection, and distributed systems, to softer skills like public speaking, writing clearly, managing technical debt, and maintaining work-life balance. There are also sections on newer topics like large language models and agentic coding. Each entry is a link with a brief label, and icons indicate whether it is a book, video, presentation, or research paper, with star markers for must-reads. You would use this repository as a long-term reference to direct your professional development. When you want to level up on a specific area, such as code review practices, designing reliable systems, or understanding how databases work internally, you can browse the relevant section and find starting points that experienced engineers have already vetted as worth your time. It requires no installation or tooling, it is a plain list of external links. The repository is labeled as Python in the language field, though that appears to reflect minor utility scripts; the content itself is language-agnostic career development material for any software engineer.

Copy-paste prompts

Prompt 1
I want to improve my understanding of distributed systems. What are the best starting resources from this professional programming reading list?
Prompt 2
Show me the recommended books and articles on system architecture and designing reliable systems from this curated list.
Prompt 3
What resources does this list recommend for learning about databases, compilers, and low-level performance optimization?
Prompt 4
I'm transitioning into engineering management. Which sections of this reading list should I focus on for leadership and team communication?
Prompt 5
Help me create a 6-month reading plan using this professional programming list to go from mid-level to senior engineer.
Open on GitHub → Explain another repo

Generated 2026-05-18 · Model: sonnet-4-6 · Verify against the repo before relying on details.