I remember a pivotal moment early in my career at Amazon. My team was tasked with solving a complex problem in the retail catalog system, and everyone was stuck. The project had vague requirements, unclear success metrics, and stakeholders with conflicting priorities.
Classic ambiguous situation.
I grew impatient with the situation, threw my hands up in the air during a meeting, and said "What problem are we actually trying to solve?!"
I didn't realize it back then but I had hit on exactly the issue and solution.
The difficulty with ambiguity is there's nothing to grasp on to. Everything feels like an unbounded investigation.
Coding interview problems are so unrealistic because all of the problems are well-defined. Clear constraints on input. A battery of test cases with known solutions. But real-world engineering is filled with fog and uncertainty.
Tech workers and software engineers specifically are problem solvers. When it comes to code, we have to be exact because computers don't take i…
Keep reading with a 7-day free trial
Subscribe to A Life Engineered to keep reading this post and get 7 days of free access to the full post archives.