Refactoring

Share this post

Monday 3-2-1 β€” Iron triangle, tech strategies, time-to-offer πŸ’‘

refactoring.fm

Discover more from Refactoring

Weekly, practical advice on writing great software and working well with humans.
Over 58,000 subscribers
Continue reading
Sign in
πŸ’‘ Monday Ideas

Monday 3-2-1 β€” Iron triangle, tech strategies, time-to-offer πŸ’‘

Edition #4

Luca Rossi
Jun 27, 2022
11
Share this post

Monday 3-2-1 β€” Iron triangle, tech strategies, time-to-offer πŸ’‘

refactoring.fm
Share

1) 🎽 The Iron Triangle of Planning

Consider the Iron Triangle of Planning, proposed by Martin Barnes in 1969.

It is based on the assumption that Scope = Time * Resources, and supposedly you can change one dimension to impact the others.

However, trading between these constraints is not always possible.

In particular, resources (or budgets) do not often have an immediate impact on the other two.

In fact, you can't usually say "I want to pay twice as much so you can deliver the app in half of the time", because:

  1. In most projects this is straight impossible β€” 9 girls cannot make a baby in 1 month.

  2. Resources are not responsive β€” new people on the project need onboarding, coordination, etc.

To deliver a project faster, your best bet is to act on one of the two other dimensions: 1) reducing the scope, or 2) increasing the time for delivery.


2) πŸ”¨ The Three Pillars of Tech Strategy

A good technical strategy is a superpower. You can design a good one by reflecting on three elements:

🏒 Your Company

What can engineering do to support your company's mission?

What should you invest in to create a core asset for your company, generating a hard-to-copy competitive advantage?

Example: Zoom built a competitive advantage by investing in proprietary streaming tech.

πŸ“± Your Product

How can engineering support your product strategy to deliver a superior experience that drives the company's mission forward?

What kind of products can be enabled by a strong technical strategy?

Example: Uber built additional product lines (Eats, Freight) by leveraging their fleet management tech.

πŸ‘• Your Team

How can you leverage your engineering team's strengths to create something that benefits your company long term?

Example: Airbnb failed the React Native transition because (among other things) their mobile team skills were too invested in native tech.

More about designing technical strategies πŸ‘‡

Refactoring
How to Design a Good Technical Strategy πŸ‘οΈ
A few months ago I wrote an article about the different role of tech leads and engineering managers. After that, several people wrote me to tell their experience, and asked for advice about their responsibilities and career path. I find it very hard to give good advice about leadership roles in tech. The same role can be very different in different compa…
Read more
2 years ago Β· 13 likes Β· 2 comments Β· Luca Rossi

3) πŸŽ’ Keep your time-to-offer within two weeks

When hiring, you should strive to keep yourΒ time-to-offer within two weeks. That is theΒ time that goes from the initial application to the final job offer.

If this seems brutal to you, consider this:

  1. Top candidates are gone in 10 daysΒ β€” that is the time it takes for the top 10% of talent to get a good offer.

  2. In hot markets, companies are evenΒ faster β€”Β Yurii Mykytyn, Director of Engineering, shares his experience with the Eastern European market:

Before the war, Eastern Europe and Ukraine in particular was a boiling hiring market. Salaries almost doubled over the course of two years and bigger software companies were settings KPI's for themselves likeΒ an offer in 24h.

Such things as a home assignment or multitude of interviews were not an option, because during the same time, the candidate could get offers from 5 companies with zero effort.

So in general, our recruitment process looks like:
– 15 min screening
– 1.5h tech + team interview
– 1h final culture interview+offer.

SLA would beΒ 7 working daysΒ from pre-screen to final decision (hire/no hire) per candidate.

I wrote more about good hiring processes in a previous article πŸ‘‡

Refactoring
Creating a Good Hiring Process (Part 2) πŸ’Ό
Welcome back! This is the second part of a two-part article on how to create a good hiring process. In the first part we focused on how to plan for the team’s growth and source candidates. This time, we will cover two other major areas: πŸ” Selecting candidates…
Read more
2 years ago Β· 5 likes Β· Luca Rossi

And that’s it for today β€” I wish you aΒ great week! πŸš€ If you liked the article, consider doing any of these:

1) ❀️ Share itΒ β€” Refactoring lives thanks to word of mouth. Share the article with your team or with someone to whom it might be useful!

Share

2) βœ‰οΈ Subscribe to the newsletterΒ β€” if you aren’t already, consider becoming a paid subscriber. That also gives you access to theΒ communityΒ and theΒ curated library. You can try it for free for 7 days:

Get Refactoring for free for 7 days 🎁


πŸ€” How did you like this email?

Amazing β€’ Good β€’ Meh

11
Share this post

Monday 3-2-1 β€” Iron triangle, tech strategies, time-to-offer πŸ’‘

refactoring.fm
Share
Comments
Top
New
Community

No posts

Ready for more?

Β© 2023 Refactoring ETS
Privacy βˆ™ Terms βˆ™ Collection notice
Start WritingGet the app
Substack is the home for great writing