Books for software engineers and managers

Books / Star Engineer

Books for Star Engineers

You have a few years under your belt. You’re cranking out code. Fixing bugs left and right, all while launching new features. These books will help you advance your skills, transforming you into a higher leverage and more valuable engineer.

Sort by Date or Rating

Working Effectively With Legacy Code
7
Working Effectively With Legacy Code

Refactorings to increase the testability of legacy code

Show Your Work
7
Show Your Work

The quick and inspirational guide to self promotion through content

Foundations of Security
6
Foundations of Security

Security threats programmers need to defend against

Never Split the Difference
Never Split the Difference

Practical guide to everyday negotiations

5 Books to Increase Productivity on Software Engineering Teams
5 Books to Increase Productivity on Software Engineering Teams

Software development metrics and advice to improve productivity and performance

Working in Public
8
Working in Public

Why developers create open source projects and how they are maintained at scaled

The Problem with Software
7
The Problem with Software

A brief history of computer programming, plus analysis of the gap between academia and industry

Books on Distributed Systems and Resilience Engineering
Books on Distributed Systems and Resilience Engineering

Build systems to serve more users while increasing reliability and performance

SQL Antipatterns
8
SQL Antipatterns

Database design pitfalls that you will make if you haven’t already

Hackers & Painters
Hackers & Painters

The culture and languages of makers

The DevOps Handbook
The DevOps Handbook

A pragmatic technical guide to implementing ideas from Accelerate

Staff Engineer
7
Staff Engineer

Beyond senior engineer on the technical leadership track

A Philosophy of Software Design
5
A Philosophy of Software Design

An introduction to useful coding practices

On Writing Well
On Writing Well

The practical guide to non-fiction writing

Clean Architecture
Clean Architecture

Pragmatic advice for transforming readable code into a solid architecture

Designing for Behavior Change
7
Designing for Behavior Change

Applying behavior change science to software design and development

Zen and the Art of Motorcycle Maintenance
Zen and the Art of Motorcycle Maintenance

Quality is hard to define but we know it exists somewhere

Code Complete
Code Complete

The book every junior to mid-level engineer should read to improve their code

The Master Algorithm
7
The Master Algorithm

Machine learning primer for technically-minded people

Practical Monitoring
7
Practical Monitoring

A quick read covering the basics of monitoring

The Subtle Art of Not Giving a F*ck
6
The Subtle Art of Not Giving a F*ck

A quick read self-help guide to focusing on what you care about and ignoring the rest

Designing Data-Intensive Applications
7
Designing Data-Intensive Applications

Highly technical guide to modern data storage systems

Release It!
7
Release It!

Technical primer on resilience engineering

Clean Code
Clean Code

The book on code quality I wish every engineering job applicant would read

Flow
7
Flow

The science of being in the zone

The Pragmatic Programmer
6
The Pragmatic Programmer

Look into the world of professional software development



Articles for Star Engineers

Clean workspaces instead of rewrites

The pragmatic engineer’s alternative to a rewrite

Refactoring is a daily job

Five things that engineering leaders need to understand about refactoring

Deploy to production on day one

Shipping on the first day is an opportunity to send positive signals to new hires about your engineering culture

Your Third Job in Software

Navigate around the pitfalls of finding your third job in software. The right job.