Five Books Every Effective Engineer Should Read and The Lessons They Teach

by Edmond Lau

Photo credit: Austrian National Library in Vienna

I love reading and read about 1-2 books a week. It’s nowhere near the volume that some of the world’s fastest readers have been able to soak up books – President Theodore Roosevelt was said to have read a book a day before breakfast during his two terms in the White House 1 – but it’s a healthy rate that I work on maintaining and hopefully increasing over time.

More than just entertainment, the stories in books help shortcut your own learning curve so that you can learn and grow faster. “Learn from the mistakes of others,” Eleanor Roosevelt once said. “You can’t live long enough to make them all yourself.” Books, both fiction and non-fiction, offer a way for readers to learn from the lessons and mistakes of others, so that you can re-apply that knowledge without having to start from scratch.

I’ve read many classic texts on the craft of programming and engineering, and they have no doubt contributed to the set of principles that I use everyday on engineering. But a few books have really shaped my thinking on how to be more effective as an engineer, and surprisingly, most of them aren’t actually engineering books at all. In this post, I share these book recommendations with you as well as what I’ve learned from them.

1. Peopleware: Productive Projects and Teams by Tom DeMarco and Timothy Lister.

Peopleware

This research-backed book by two software consultants discusses the many dynamics within projects and teams and set me on a path to thinking about topics like how to build effective engineering teams and what makes a good engineering culture. It covers topics like how imposing overtime work can destroy a team’s ability to gel, how listening to music while programming can interfere with our abilities to think, how the act of estimating the time required for tasks can actually cause the actual tasks to take longer (though it might have other benefits), and many other pearls of wisdom.

First published in 1987, some chapters of this book do reveal their age – one chapter discusses offices with furniture police enforcing decor within the workplace. But what’s amazed me is that I’ve seen many of the other timeless lessons play out exactly as described during my time at Google, Ooyala, and Quora. The more recent Team Geek: A Software Developer’s Guide to Working Well with Others by Brian W. Fitzpatrick and Ben Collins-Sussman is similar in flavor but relies more on the authors’ own experiences from working Google and Subversion rather than on empirical research.

2. High Output Management, by former Intel CEO Andrew S. Grove.

High Output Management

Adam D’Angelo, Quora’s co-founder and CEO, recommended this book to me when I asked for books to help grow as an engineering lead. In High Output Management, Grove distills some of the principles that he used while running and managing Intel. Don’t be turned off by the word “management” in the title if you’re not interested in management. The advice is relevant to both people managers as well as those he calls “know-how managers” – people like senior engineers who have built up and share much of the knowledge within an organization. From this book, I learned the single most valuable lesson in my professional life, to prioritize both my activities and tasks by their leverage – the amount of output or impact produced per unit of time spent.

3. Getting Things Done: The Art of Stress-Free Productivity, by David Allen.

Getting Things Done

The value of this book is that it thoroughly describes a concrete implementation of how to manage to-dos and tasks lists. While I don’t subscribe to everything Allen describes, it was eye-opening to read about one possible way of doing things. If you don’t have a good workflow for prioritizing and getting things done, this book provides a baseline that you can start from.

A key takeaway from this book is to write down all your to-dos in a single, easily accessible list and to remove the burden of remembering tasks from your brain. This has helped me significantly in keeping track of what I need to get done and freed my mental energies to focus on other things. Subsequent readings in books like David Rock’s Your Brain at Work, Jonah Lehrer’s How We Decide 2, and Joshua Foer’s Moonwalking with Einstein have only reinforced that our brains aren’t well-designed for remembering large numbers of things and that trying to remember things only interferes with our other cognitive abilities.

4. The 7 Habits of Highly Effective People: Powerful Lessons in Personal Change, by Stephen R. Covey

The 7 Habits of Highly Effective People

I’m not actually a fan of Covey’s writing style – much of it is a little too abstract and fluffy – but the lasting impact of the ideas in the book compensate for it. From Covey’s third habit of “putting first things first,” I learned that people tend to neglect important but non-urgent activities and spend a lot of time dealing with tasks like emails, phone calls, etc. that may be urgent but ultimately unimportant. This focus on what’s most immediately pressing inhibits our ability to learn and grow both personally and professionally. A key takeaway from this habit is to explicitly budget time to invest in yourself, whether it’s by learning new skills, maintaining relationships, reading, etc. Since reading this book, I’ve developed a practice of explicitly scheduling time to prioritize the things that I consider important.

5. The 4-Hour Workweek: Escape 9-5, Live Anywhere, and Join the New Rich, by Timothy Ferriss.

The 4-Hour Workweek: Escape 9-5, Live Anywhere, and Join the New Rich

Regardless of whether you actually choose to subscribe to the type of extreme lifestyle that Ferriss advocates, this book taught me two things. First, it hammered in what’s possible if you relentlessly prioritize your work. The Pareto principle, also known as the 80-20 rule, focuses on the 20% of the effort can produce 80% of the wins; Ferriss focuses on identifying the 10% of effort (4 hours per week) that can produce most of your wins. Prioritizing your work based on impact and cutting unproductive activities are important lessons regardless of how many hours you work.

Second, it drove home the importance of creating sustainable systems with low maintenance, as that’s the only way that someone can reliably produce wealth with 4 hours of work per week. That’s a lesson that’s often underemphasized in engineering, where our design choices to build new features with new and sexy technologies don’t necessarily take the cost of future maintenance into account.


Books on effectiveness are, of course, just one genre of books with lessons and stories to learn from. With the exception of Peopleware, these books were written for a general audience and not specifically with engineers in mind. And that’s why I’m excited to be in the process of writing my own book, one where I’ll show how we can apply these lessons in effectiveness directly to situations that we encounter as engineers.

What books have most influenced your thinking as an engineer? Share your thoughts in the comments.

  1. Brett and Kate McKay, “How to Speed Read Like Theodore Roosevelt”, The Art of Manliness.

  2. I read Jonah Lehrer’s book before his plagiarism and quote phabrication scandal erupted. The book itself is very well-written, despite the moral ambiguity behind its creation.

Posted:

“A comprehensive tour of our industry's collective wisdom written with clarity.”

— Jack Heart, Engineering Manager at Asana

“Edmond managed to distill his decade of engineering experience into crystal-clear best practices.”

— Daniel Peng, Senior Staff Engineer at Google

“A comprehensive tour of our industry's collective wisdom written with clarity.”

— Jack Heart, Engineering Manager at Asana

“Edmond managed to distill his decade of engineering experience into crystal-clear best practices.”

— Daniel Peng, Senior Staff Engineer at Google

Master the techniques used by top software engineers to maximize their impact

Leave a Comment