A Guide for Individual Contributors Navigating Growth and Change
Tanya Reilly

#management
#software_engineer
For years, companies have rewarded their most effective engineers with management positions. But treating management as the default path for an engineer with leadership ability doesn't serve the industry well--or the engineer. The staff engineer's path allows engineers to contribute at a high level as role models, driving big projects, determining technical strategy, and raising everyone's skills.
This in-depth book shows you how to understand your role, manage your time, master strategic thinking, and set the standard for technical work. You'll read about how to be a leader without direct authority, how to plan ahead to make the right technical decisions, and how to make everyone around you better, while still growing as an expert in your domain.
By exploring the three pillars of a staff engineer's job, Tanya Reilly, a veteran of the staff engineer track, shows you how to:
Where do you see yourself in five years? The classic interview question is the adult equivalent of “What do you want to be when you grow up?”: it has some socially acceptable answers and a long enough time horizon that you don’t need to commit. But if you’re a senior software engineer looking to keep growing in your career, the question becomes very real. Where do you see yourself going?
You may find yourself at a fork in the road, two distinct paths stretching ahead. On one, you take on direct reports and become a manager. On the other, you become a technical leader without reports, a role often called staff engineer. If you really could see five years ahead on both of these paths, you’d find that they have a lot in common: they lead to many of the same places, and the further you travel, the more you’ll need many of the same skills. But, at the start, they look quite different.
The manager’s path is clear and well traveled. Becoming a manager is a common, and perhaps default, career step for anyone who can communicate clearly, stay calm during a crisis, and help their colleagues do better work. Most likely, you know people who have chosen this path. You’ve probably had managers before, and perhaps you have opinions about what they did right or wrong.
Management is a well-studied discipline, too. The words promotion and leadership are often assumed to mean “becoming someone’s boss,” and airport bookshops are full of advice on how to do the job well. So, if you set off down the management path, it won’t be an easy road, but you’ll at least have some idea of what your journey will be like.
The staff engineer’s path is a little less defined. While many companies now allow engineers to keep growing in seniority without taking on reports, this “technical track” is still muddy and poorly signposted. Engineers considering this path may have never worked with a staff engineer before, or might have seen such a narrow set of personalities in the role that it seems like unattainable wizardry. (It’s not. It’s all learnable.) The expectations of the job vary across companies, and, even within a company, the criteria for hiring or promoting staff engineers can be vague and not always actionable.
Often the job doesn’t become clearer once you’re in it. Over the last few years, I’ve spoken with staff engineers across many companies who weren’t quite sure what was expected of them, as well as engineering managers who didn’t know how to work with their staff engineer reports and peers. All of this ambiguity can be a source of stress. If your job’s not defined, how can you know whether you’re doing it well? Or doing it at all?
Even when expectations are clear, the road to achieving them might not be. As a new staff engineer, you might have heard that you’re expected to be a technical leader, make good business decisions, and influence without authority—but how? Where do you start?
This in-depth book shows you how to understand your role, manage your time, master strategic thinking, and set the standard for technical work. You'll read about how to be a leader without direct authority, how to plan ahead to make the right technical decisions, and how to make everyone around you better, while still growing as an expert in your domain.
Exploring the three pillars of a staff engineer's job, Tanya Reilly, a veteran of the staff engineer track, shows you how to:
If you're a senior engineer wondering what the next level is, a staff-level engineer or a manager of staff engineers, this book is for you. It covers so many of the things no one tells you about this role-things that take long years, even with great mentors, to discover on your own.
—Gergely Orosz, Author of The Pragmatic Engineer
Tanya is the perfect author for this exceptional guide to navigating the murky role of staff-plus engineering. Her deep, direct experience comes through in every section.
—Will Larson, CTO of Calm, author of Staff Engineer
This book feels like the missing manual for my whole career. It's amazingly reassuring to see the ambiguity of the role laid out in print, along with great specific guidance on time management, consensus building, etc. I'm going to cite this a lot.
—Titus Winters, principal engineer at Google, coauthor of Software Engineering at Google
The job of senior leadership as an individual contributor has long been ambiguous and difficult to define, and this book is a much-needed guide on being successful in a relatively new role to our industry. Tanya does an excellent job bringing large-company perspective and scaling company challenges for a rounded view on how to be a successful staff engineer.
—Silvia Botros, Coauthor of High Performance MySQL, 4th Edition, and principal engineer
The book I wish I'd had when I stepped up to Principal Engineer.
—Sarah Wells, independent Consultant and Author, former principal engineer at the Financial Times
Tanya Reilly has over twenty years of experience in software engineering, most recently working on architecture and technical strategy as a Senior Principal Engineer at Squarespace. Previously she was a Staff Engineer at Google, responsible for some of the largest distributed systems on the planet. Tanya writes about technical leadership and software reliability at http://noidea.dog. She's an organizer and host of the LeadDev StaffPlus conference and a frequent conference speaker and keynote. Originally from Ireland, she now lives in Brooklyn with her spouse, kid, and espresso machine.









