Professional Programming: software engineer resources
Professional Programming is a hand-picked reading list for software engineers, curated by one developer rather than crowdsourced or ranked by votes. Skip it if you want exhaustive coverage: the maintainer says outright he won't add everything, to keep the list from becoming overwhelming. Reach for it if you want a working engineer's opinionated shortlist spanning algorithms, API design, and career habits.
What is Professional Programming
Professional Programming is a single README maintained by Charlax that links out to books, articles, talks, and courses for software engineers. It isn't a course or a tool — there's nothing to install or run, just curated links grouped under topics like accounting, agentic coding, algorithms, and API design, each tagged with an icon marking whether it's a book, video, paper, or must-read pick.
What the collection covers
- ✓The "Must-read books" section names a handful of specific titles — The Pragmatic Programmer, Code Complete, Release It!, Scalability Rules, The Linux Programming Interface, and the free MIT textbook Structure and Interpretation of Computer Programs.
- ✓A separate "Must-read articles" section collects single essays like "On Being A Senior Engineer" and "Lessons Learned in Software Development," often with the author's own bullet-point takeaways added under the link.
- ✓Topic headings go past generic advice into niches like Accounting (ledger-design pitfalls for engineers), Agentic coding, and API design & development, each with its own short reading list.
- ✓Every entry carries an icon — book, video/talk, slides, paper, or must-read — so you can tell the format before you click.
- ✓It links out to other curated lists, like free-programming-books and developer-roadmap, for readers who want more depth than this page provides on its own.
- ✓The list keeps growing: newer additions cover things like agentic coding and Claude Code workflows alongside the original algorithms and API-design material.
How to use this resource list
- •Start with "Must-read books" if you want the fastest path to the author's top picks instead of browsing every topic heading.
- •Jump to a specific topic — API design & development, say, or Algorithms and data structures — when you're closing one particular knowledge gap.
- •Pair it with a structured course rather than using it alone: the README itself recommends Teach Yourself Computer Science or OSSU for a full curriculum.
- •Revisit periodically, since new topic sections and articles get added as the maintainer finds things worth including.
Strengths
- ✓Each pick comes with a sentence of context instead of a bare URL, so you know why it made the cut before clicking through.
- ✓Topic coverage goes beyond generic "learn to code" basics into things most reading lists skip, like accounting concepts for engineers and agentic coding workflows.
- ✓It stays one scannable README instead of a sprawling multi-page site. There's no navigation to get lost in.
- ✓The maintainer is upfront about the list being incomplete by design, so you won't mistake it for a full curriculum.
Scope and limitations
- △It's one person's taste, not a vetted or comprehensive index. The maintainer states outright that the selection is opinionated and that he won't add every submission.
- △There's no search or filtering beyond the icon legend, so finding one specific resource means scanning a long single-page README by eye.
- △Not every linked piece is uniformly strong — one linked article on "signs of a good programmer" is flagged by the maintainer himself as containing counterproductive points.
- △A few recommended books cost money, like the $30 Imposter's Handbook, with no free substitute noted for that specific title.
Similar programming resource lists
Frequently asked questions
Professional Programming groups its links under topic headings such as Accounting, Agentic coding, Algorithms and data structures, API design & development, and Attitude, habits, and mindset, alongside separate must-read book and article sections.
Professional Programming leans toward developers with some experience already — several must-read articles assume you've worked on a team and hit real production problems, though entries like the free SICP textbook and CS 61B suit newer engineers too.
Most links in Professional Programming are free articles, talks, and open GitHub lists, but some recommended books are paid — The Imposter's Handbook is listed at $30 — and the README separately calls out a handful of free book options.
Professional Programming is intentionally small and opinionated rather than exhaustive. The README says outright the maintainer won't add every submitted resource, keeping the page to entries he personally found inspiring instead of indexing everything available.
Contributions to Professional Programming go through GitHub pull requests, though the maintainer notes he won't merge everything submitted since the stated goal is staying concise rather than comprehensive.
Professional Programming's must-read books include The Pragmatic Programmer, Code Complete, Release It!, Scalability Rules, The Linux Programming Interface, and the free MIT textbook Structure and Interpretation of Computer Programs.
Who should try it — and who should skip
Professional Programming suits developers with a couple of years in already — people who want a working engineer's opinion on what's worth reading next, not a first introduction to programming. It's a good fit if you like browsing by topic (API design one day, career habits the next) rather than following a fixed syllabus. Skip it if you're brand new to software and need structured fundamentals first — the README itself points toward Teach Yourself Computer Science and OSSU's free curriculum for that job. Also skip it if you want a truly exhaustive index; the maintainer turns down submissions to keep the list short.
Related repositories
Still deciding about professional-programming?
One click hands the question to an AI along with this page — see what it says about professional-programming.
