Books for software engineers and managers

The Hard Thing About Hard  Things

Building a Business When There Are No Easy  Answers

by Ben Horowitz, Co-Founder of Andreesen  Horowitz

Categories:
Favorite,
CTO,
Engineering Manager,
Product Manager,
Startup Founder

Ask your team "what are we not doing?" to identify  blindspots

In weekly staff meetings, Horowitz included an agenda item asking, “What are we not doing?” I’m definitely going to borrow this question for my team and ask it during retro.

For engineering teams, I anticipate responses covering two areas. The first and most obvious area is of technical debt. The second and more subtle answer surfaces opportunities – areas of technology or code that could open up new business opportunities or customer capabilities.

That’s the kind of answer I’m actually more interested in because with expansion of opportunity, we also find ways to address technical debt.

There are no silver bullets, only lead bullets when your customers demand a better  product

Horowitz writes, “The customers were buying: they just weren’t buying our product. This was not a time to pivot. So I said the same thing to every one of [my company leaders]: ‘There are no silver bullets for this, only lead bullets.’ They did not want to hear that, but it made things clear: We had to build a better product.”

As a startup engineering manager, I see this all the time. People hope that re-prioritizing work or finding a clever solution will magically unlock the team.

You hope that you’re clever enough to build a feature that explodes and that your prioritization skills make it happen sooner. You’re searching for silver bullets because you want to feel smart, clever, and blessed by the gods of user growth

There’s no glory in lead bullets, but that may be exactly what the job requires.

Sometimes an organization doesn’t need a solution; it just needs  clarity

Horowitz makes this point about company policies around cursing and compensation, but I interpreted the statement differently.

As an individual contributor turned engineering manager, my instinct is to solve problems. But solving everyone’s problems is a recipe for your own burnout and employee stagnation. You want to foster self-sufficiency.

Instead of solving your team’s problems, provide them clarity of direction and clarity of responsibility. Point them in the right direction and tell them it’s their job to get us there.

The most impactful decisions test courage, not  intelligence

Horowitz writes, “The right decision is often obvious, but the pressure to make the wrong decision can be overwhelming.” He’s referencing business decisions like going public vs. not or changing your pricing model. Those decisions certainly require both intelligence and courage, but usually more courage than intelligence.

As an engineering manager, decisions directly relating to people and confrontation test my courage most:

  • Hire / Not hire
  • Discuss poor performance / Avoid the problem
  • Fire / Wait

In these situations, the most helpful advice I’ve received is to concede that you’re doing everyone a disservice by avoiding the issue – that person, yourself, and the entire team or company.

Does your company need a Peacetime CEO or Wartime CEO right  now?

In peacetime, the market is growing and the company has a large advantage over their competitors. Creativity rules. Companies set big, hairy, audacious goals. The company refocuses on core product lines, removing underperforming units.

Wartime is about fighting off an existential threat. If your only training and knowledge comes from peace, you may not be prepared for war. Survivorship bias explains the abundance of peacetime CEO business and leadership books.

Engineering managers need clarity from company leadership – are we in peacetime or wartime? They may not be prepared for the question, but failing to ask could result in you using the wrong approach for the times.

Execs fail by continuing to do their old job instead of their new  job

Ben Horowitz writes this about CEOs and other execs, but I want to examine this at the level of individual contributors – specifically senior engineers, chief engineers, and the like.

Sometimes engineers are promoted because they’re already performing at that level. They’re already growing their sphere of influence. They’re already extending beyond individual contributions. That’s the ideal situation.

Other times, promotions are aspirational. Maybe it’s not a promotion at all – it’s a new hire. But the story is the same and it’s centered around hope. Sometimes those stories have a sad ending.

As a senior engineer, you need to understand that your promotion may not have been deserved. It may have been aspirational or just lucky timing in a growing company. Either way, you’re in a new situation, new role, and you have new expectations.

If your company has an engineering growth framework, you’re lucky and you should look deliberately at the expectations for someone in your role.

You’re probably expected to deliver on higher leverage work like project management and coordination, reducing technical debt, opening up new product capabilities through technology, and driving engineering culture.

The Hard Thing About Hard Things

How strongly do I recommend The Hard Thing About Hard  Things?
9 / 10

I was worried that a book by the co-founder of Andreesen Horowitz would have a venture capital bias and tone that I couldn’t relate to. Wrong.

This book is very readable. Although written from the perspective of a tech CEO, the lessons are highly applicable to software engineering managers and leaders.