• Where We Hire
      Overview
EN
|
ES
Log In
Get Started
Log In
Businesses Engineers
    • Overview
    • Canada
    • LatAm
    • Europe
  • The Remote Engineer
Get Started
Go back to The Remote Engineer

Level up your code | Blog Post

The 8 Best Books for Software Engineers

Linzi Nield

Share this post

It is a truth universally acknowledged, that an engineer in possession of a thriving mind, must be in want of new, exciting information. TheIt is a truth universally acknowledged, that an engineer in possession of a thriving mind, must be in want of new, exciting information. The study of engineering might involve many technical subjects, but there are a lot of softer topics that are useful for engineers as well. Studying engineering might involve many technical subjects, but there are a lot of softer topics that are useful for engineers as well. There has been a lot of ink spilled about how engineers can improve their skills, but there is an equal amount of ink that can help engineers exercise their minds while also relaxing them, and reading is a great way to do both. 

Check out our eight recommendations for the best books for software engineers to have in their library. 

What If?: Serious Scientific Answers to Absurd Hypothetical Questions by Randall Munroe

What if you could drain all the water from the oceans? What would happen if you tried to hit a baseball pitched at 90% the speed of light? If your cells suddenly lost the power to divide, how long would you survive? Randall Munroe answers these questions and more with painstaking calculations and irreverent wit. Born of Munroe’s popular webcomic, XKCD, this book collects some of Munroe’s geekiest and most interesting explorations, which often predict the total annihilation of humankind or, at the very least, a massive explosion. Engineers will appreciate Munroe’s clarity, attention to detail, and hilarity. 

To Engineer Is Human: The Role of Failure in Successful Design by Henry Petroski

Blameless engineering cultures and fail-fast environments are popular concepts at many of today’s start-ups. That’s because failures teach us the limits of our designs. We can learn from failures, and our designs improve only by being free to create – and then find – flaws. This book examines major design failures and mines them for lessons. It explores the simple design error that caused the collapse of the walkways at the Kansas City Hyatt Regency Hotel in the 1980s, the flaws that made the graceful and innovative Tacoma Narrows Bridge twist apart in a mild wind in 1940, and more. It’s one of the best books for software engineers to question the deepest notions of progress and perfection.

Cracking the Coding Interview: 150 Programming Questions and Solutions by Gayle Laakmann McDowell

This highly technical guide will give you the tools you need to ace your coding interview. Many coding interviews require you to answer algorithmic questions or whiteboard engineering problems, and if you aren’t used to using these skills on a daily basis, then you might need a refresher. This book covers the interview process, behavioral preparation, and technical questions. It also gives tips on what to do before the interview and gives you a behind the scenes look at how your coding is likely to be graded. Now in its fifth edition, this essential guide provides over 500 pages of information to help you land your dream job.

Clean Code: A Handbook of Agile Software Craftsmanship by Robert C. Martin

How to recognize bad code and, what’s more, how do you turn it into good code? This book is considered a best-in-class primer on how to recognize “clean code” – which is to say, code that can be read and enhanced by a developer other than its original author. Clean Code is frequently recommended by senior engineers as a handbook that can help engineers learn the principles, patterns, and practices of writing clean code, and provides numerous case studies for turning “bad” code into “good” code. It also explains how the book’s authors think when they read, write, and clean code, giving the reader an innate understanding of how to examine their own work and the work of others.

The DevOps Handbook: How to Create World-Class Agility, Reliability, and Security in Technology Organizations by Gene Kim et. al.

The DevOps Handbook became an instant classic when it was released in 2016. More and more tech companies are adopting DevOps principles for their engineering teams. Organizations like Google, Amazon, Facebook, Etsy, and Netflix are routinely and reliably deploying code into production hundreds, or even thousands, of times per day. DevOps emphasizes continuous delivery of software with a shortened systems development life cycle, and this book shows leaders how to replicate these incredible outcomes with ​​agile software development practices and lean manufacturing. This is one of the best books for software engineers to understand the full systems lifecycle.

The Fountains of Paradise by Arthur C. Clarke

This 1979 sci-fi novel is about a massive undertaking of civil and mechanical engineering: The construction of a space elevator to a satellite in geostationary orbit roughly 36,000 kilometers (22,300 miles) above the Earth’s surface. It follows the tale’s protagonist, engineer Vannevar Morgan, in his quest to get the elevator built. Set in the 22nd century, this book from the acclaimed author of 2001: A Space Odyssey won both the Hugo and Nebula Awards for Best Novel, and its fantastical tale of a great engineering feat is grounded in Clarke’s careful research and meticulous storytelling. 

Life in Code: A Personal History of Technology by Ellen Ullman

Ellen Ullman has been working in Silicon Valley since the 1970s, often finding herself one of the only women in a boy’s club of idealistic, innovative men who would change the world. In this collection of essays, Ullman looks back on the last 20 years in technology, exploring digital tech’s loss of innocence as it has entered the mainstream. Named a best book of the year by The New York Times Book Review, GQ, Slate, San Francisco Chronicle, Bookforum, and Kirkus, Life in Code is one of the best books for software engineers who want a better understanding of tech’s recent past – and its immediate future.

Snow Crash by Neal Stephenson

This cyberpunk classic from 1992 explored technology that, while now commonplace, was entirely theoretical at the time: mobile computing, wireless Internet, digital currency, smartphones, and augmented-reality headsets. Perhaps the most prophetic part of Snow Crash is its exploration of something called “the Metaverse” – a virtual reality platform not all that dissimilar from the social media arenas where so many of us spend our time. Snow Crash’s dystopian view of the future has incited engineers the world over to laud it for its compelling story and chilling predictions.

Ready to take the next step in your engineering career? Get started with Terminal today