(And How You Can Too)

When I began my engineering journey, I honestly believed success was all about writing neat code, tackling tough technical problems, and delivering new features. I could hold my own alongside other talented developers; most of us were pretty sharp technically. Somehow, though, I found myself taking on projects with bigger scope and working directly with founders much earlier in my career than some of my peers. At first, I chalked it up to luck. My work was solid, but not every product I helped build felt as useful or meaningful to real users as I hoped.
Things began to shift when I got the chance to collaborate with engineering leaders I really respected. That’s when I stumbled on what I like to call the "magic sauce." For me, approaching products with this mindset felt natural, but I realized many engineers found it surprisingly tricky: it's what we call 'product thinking.' It became clear that the best engineers aren't just great at building things... they focus on building the right things.
As I started coaching and mentoring early-career engineers, I noticed a common thread: many were curious about how to develop stronger product skills and leave a real mark with their work. If you're wondering how to get better at 'product thinking,' I'd love to share what I've learned. Understanding this approach has completely changed how I think about my job and how I approach building products... and I think it can do the same for you.
The biggest shift happened early in my school life, when I started getting genuinely curious about the products I was using every day. Instead of just scrolling through websites mindlessly, I began asking myself deeper questions:
What specific problem does this app solve for me?
What feature or interaction makes me come back?
How does this app make me feel?
What job am I "hiring" this app to do?
This curiosity extended to products that frustrated me too. When a website or app annoyed me, instead of just complaining, I'd dig into why. What made the experience so bad? How would I fix it? This practice of analyzing both beloved and broken products taught me more about user experience than any textbook ever could.
Moving from pure engineering to product thinking required me to rewire how I approached problems. Here are the key mindset changes that make a lot of difference:
Most engineers get excited about building cool features.
Try asking: "What outcome are we trying to achieve for users?"
A feature is just a means to an end.
Old approach: "This new framework is amazing, let's use it!"
New approach: "What do users actually need, and what's the best way to deliver it?"
I have learned that shipping something good that helps users is better than spending months perfecting something that might miss the mark entirely.
Product thinking taught me that the best solutions come from collaboration.
Our code is just one piece of a much bigger puzzle.
Let me tell you about some books that can help you open your eyes to product thinking. I'll start with the three that were specifically recommended to me:
This book shows us the real, messy process of building products that people actually want. What I loved most was how it emphasises systematic thinking about product development and understanding market needs before jumping into building. It taught me that balancing speed and quality isn't just about engineering... it's about understanding what users really need.
This one completely changed how I make decisions. As engineers, we like to think we're logical, but this book showed me all the cognitive biases that can derail even the smartest technical decisions. It taught me to question my assumptions, use evidence-based reasoning, and see the bigger picture beyond just the technical solution.
I haven't yet read this one, but Yogini Bende recommended this book to me. It is about how products like Hotmail and eBay grew teaching us that great products don't just solve problems... they create behaviors. The book shows us how to think about network effects, user behavior patterns, and what makes a product stick with users.
After the above three, I'd recommend diving deeper into product thinking with these additional reads:
This book introduces us to the Build-Measure-Learn cycle and the concept of Minimum Viable Products. It teaches us that we don't have to build everything perfectly from the start... you can validate ideas quickly and iterate based on real user feedback.
Understanding the psychology behind engaging products is eye-opening. The four-step Hook model (trigger, action, variable reward, investment) helps us think about how to create products that users naturally want to return to.
This classic taught me usability principles that I now apply to every interface I build. Norman's ideas about making things visible, using natural relationships, and designing for error changed how I think about user experience.
This book helps us understand how products move from early adopters to mainstream users. It's crucial for engineers to understand these different user segments and what they need at each stage.
Instead of focusing on user demographics, this book teaches us to focus on what job users are trying to accomplish. It's a completely different way of thinking about product development that makes so much more sense.
This short book teaches us how to talk to users and get honest feedback. The three rules are simple but powerful: talk about their life instead of your idea, ask about specifics in the past, and talk less while listening more.
This is a go-to guide for understanding how great product teams work. Cagan's insights into product discovery, cross-functional collaboration, and building user-centered solutions are invaluable for engineers who want to contribute beyond just code.
Learning about product thinking is one thing, but applying it is another. Here's how you can integrate these concepts into your regular engineering routine:
Every morning, try spend 15 minutes analyzing a product you use.
Ask yourself: What problem does this solve?
What works well?
What's frustrating?
This keeps your product sense sharp.
Before building any feature, write a brief explanation of what user problem it solves and how you'll measure success. This simple practice has saved me from building countless unnecessary features.
I regularly study how other products in our space solve similar problems. It's not about copying - it's about understanding different approaches and learning from them.
Instead of thinking "I need to optimize this database query," try to reframe it as "Users should be able to load their dashboard in under 2 seconds." This keeps user value at the center of technical decisions.
Product thinking isn't just about reading books - it's about changing how you approach every decision. Here are the questions I ask myself throughout my workday:
What user problem does this solve?
How will we know if this is successful?
What's the simplest way to test this assumption?
Are we building the right thing?
What would users actually do with this?
How can we make this more intuitive?
What did we learn from user behavior?
What would we do differently next time?
How can we improve the user experience?
One of the biggest changes in my approach was developing genuine empathy for users. Here's what helped me:
I started sitting in on user interviews and support calls. Hearing real people struggle with our product was both humbling and incredibly motivating.
I became a daily user of everything I built. If I wouldn't use it myself, why should I expect others to? Working at places like Atlassian only helped, because we were the real end-users of the apps anyways 🙂
I learned how our product makes money and what success looks like from a business perspective. This helps me make better technical decisions that are aligned with company goals.
Developing product thinking didn't mean abandoning technical excellence. Instead, it highlighted which technical skills matter most:
Understanding how to measure product success becomes as important as writing clean code.
Learning to test ideas quickly and scientifically becomes a core skill.
Basic user research skills helps us validate assumptions before building solutions.
Being able to explain technical concepts to non-technical teammates becomes crucial for product success.
Developing product thinking has completely transformed my engineering career. Instead of just being someone who implements features, I am someone who helps shape what we build and why. This shift has led to:
More interesting and impactful work
Better collaboration with product managers and designers
Greater influence on product decisions
Clearer career advancement opportunities
More satisfying work because I see the user impact
If you're ready to start developing your product thinking, here's what I recommend:
Pick one app you use daily and spend 10 minutes analyzing why it works well
Ask "why" more often in meetings and code reviews
Start one user research conversation this week
Read one of the books I mentioned (I'd start with "The Mom Test" since it's short and practical)
Find ways to interact with users of your product, even informally
Remember, product thinking isn't about becoming a product manager. It's about becoming a more effective engineer who builds things that matter. The best engineers I know aren't just great at coding - they're great at understanding what to build and why.
The transition from pure engineering to product thinking takes time, but it's worth it. Your code will still be excellent, but now it will also be purposeful. And that makes all the difference.
2
20
0