Three years ago, I made an unconventional career move: I transitioned from product management to software engineering. The journey has given me a unique perspective on both roles. Here are some key lessons I've learned along the way:
Accountability
As a PM, the success of a product depends on many factors outside your direct control - market conditions, sales, design, etc. It can be hard to pin down exactly what you're accountable for.
In engineering, accountability is more binary. Either your code works, or it doesn't. If there's a bug, it's on you to fix it. This clear accountability can be both daunting and empowering. It forces you to take full ownership.
I think engineering accountability boils down to two core things: your code has to work, and it has to ship. That's it. But within those two imperatives lies a universe of complexity.
Binary Thinking
The binary nature of engineering starts to influence your thinking style. You approach problems with more of a clear-cut, yes-or-no mindset:
- Is this feature fully implemented?
- Does this code handle all edge cases?
- Is this system fully redundant?
This binary thinking drives you towards thoroughness, but it can also make it harder to embrace the ambiguity inherent in many product decisions. As an engineer, you want decisive clarity. But in product, sometimes the answer is just "it depends."
"How" vs. "Why"
In my early engineering days, I was laser-focused on the "how" - how to implement features, design systems, debug issues. Only later did I start to consider the bigger-picture "what" and "why."
This bottom-up perspective is invaluable. It gives you deep appreciation for the technical challenges involved in any product decision. But it can also make it harder to zoom out and see the strategic forest for the implementation trees. As an engineer, it's tempting to assume that what's difficult must be important. Sometimes the highest-impact work is actually quite simple, technically speaking.
One-Way Street
It's much easier to go from engineering to product than vice versa.
As an engineer, you're constantly building product intuition. Every technical decision requires you to consider user needs, business goals, market realities. This provides a natural bridge into product.
The reverse is much harder. Without the technical foundation, it's difficult to dive deep into engineering. You can dabble, you can learn to code, but to really inhabit the engineering mindset takes years of focus and practice.
There are exceptions of course, but they're rare.
Passion Arbitrage
In product, it's hard to fake passion. If you're managing a product that doesn't excite you, it will show. You'll struggle to inspire your team.
In engineering, there are always interesting problems to solve, even in "boring" domains. You might not care about the product itself, but you can find deep satisfaction in crafting elegant code and robust systems.
This is a kind of passion arbitrage. Engineers can "borrow" passion from the craft itself, independent of the domain. In product, however, your passion has to be more native to the problem space.
Exploring New Frontiers
As an engineer, it's easy to explore new tech - you can dive into a new language or tool on the side and quickly build expertise.
Exploring new product areas is trickier. Unless you're ready to go full founder, it's hard to gain real product experience outside your day job. It's crucial to choose your product domain wisely.
The ease of exploring new tech is both a blessing and a curse for engineers. On one hand, constant learning is part of the job. On the other hand, it's easy to mistake new tech for truly new challenges.
Building Bridges
Having been on both sides, I've come to appreciate the importance of bridging the PM/eng divide. The best products emerge from engineering and product thinking in harmony.
As a PM-turned-engineer, I try to be a translator between the two realms - helping engineers see the big picture, and helping PMs understand technical realities. It's a challenging but hugely rewarding role.
Making this leap was a major step into the unknown. But looking back, I wouldn't trade the experience for anything. It's given me a richer perspective on what it takes to build great products.
If you're a PM considering a similar move, I have just one piece of advice: go for it. The journey will make you better at both.