We have a million tasks that need doing – bugs, fixes, improvements, features etc. We track these in a backlog which is always growing. There are Easy Things and then there are Hard Things.

Easy Things might not actually be easy, but they are well-defined. The deliverables are clear and understood, you accomplish them or not. Easy things probably need doing eventually, they might even require me to be the one to do them. But getting lots of easy things done is fake productivity – easy things move the needle much.

  • Fix a bug
  • Update UI layout
  • Improve performance

Hard Things are not well defined. They don’t have clear finish lines or acceptance criteria. Solutions are subjective and debatable. Your solution might be wrong, and the cost of being wrong might be high. Great solutions might require you to spend infinite time researching, preparing, testing, and proving. You need to decide when you know enough or your solution is good enough and move forward.

  • Design a scalable communication architecture
  • Decide between building on AWS or GCP
  • Define the authorization strategy

Great technical leaders take hard things and turn them into easy things – that’s the hard part!

Focus on the hard things and do them well!