Thoughts on the Article
Not all engineers care about products, but I believe we should. Good engineers focus on:
- Designing the right thing.
- Being efficient.
- Building something people love.
The reason we're so concerned with performance and other technical details is because we want to create something great. However, the definition of "great" often differs between developers and product teams, and aligning these perspectives is crucial for building successful products.
So, why don't more developers lean into the product side? The disconnect often stems from:
- Lack of Training: Many developers simply don't know that understanding the product is an important part of their role. They're more exposed to code structure and optimization, which is why they have stronger opinions in those areas.
- Difficulty Accessing Product Info: It can be tedious or challenging to get the information needed to understand the product deeply.
- Politics: Leading a product direction can be complicated, especially if the company isn't set up to support it. In a well-run company, this is significantly easier, but in others, you'll feel the strain of trying to make a product-level impact while being judged primarily on code output.
- Performance Metrics Not Tied to Product Impact: If your environment values daily code output or bug fixes over product impact, it can be tough to lead in this area. You might have to work hard to educate others on the importance of a product-minded approach.
- Team Culture & Peer Pressure: Team culture is vital. If you're in a culture where the focus is on getting work done without considering the product, it can be frustrating to push for product-minded changes.
Self Reflection
I'm proud that I've pushed for some features that resulted in a better, smoother user experience. My background in Human-Computer Interaction (HCI) has given me a strong appreciation for designing the "right" thing, even though I'm not a designer by trade. The effort is rewarding, even if the recognition is minimal.
I enjoy this aspect of my work, though it pushes me out of my comfort zone. Learning about the product has made me realize how much I still have to learn, even after being with the company for over six months. It also requires engaging with people I’m not familiar with, such as attending company events and joining discussions outside my immediate circle.
What I Can Do More in My Career
Moving forward, I plan to allocate more time to understanding product direction and less to the technical nitty-gritty, as our development environment is now in a "good" place. Over the years, I've defaulted to:
- Improve job workspace overall
- Performance improvements.
- Developer experience (DX) improvements.
- Refactoring
- "Shapen my 🪓"
- Tinkering with my development setup during "free" time.
- Learn more about the foundational technologies we use.
- Learn more about new tools and technologies
Now, I want to focus more on:
- Learning about our products and contributing to their design.
- Joining more customer calls.
- Collaborating more with various teams to understand different perspectives.
- Learning how to use analytics data to inform product decisions.
- Picking up some design skills to better understand customer needs.
By shifting my focus, I hope to have a more significant impact on the products we build and ensure that they truly meet the needs of our users.
Foreseeable Challenges
Time: Finding the right balance between:
- Completing challenging programming tasks.
- Keeping up to date with the team in terms of software design and building rapport.
- Managing board tickets and staying on track with due dates.
Remote Work:
- Mappedin is a remote-first company, but we have a few offices in Ontario where most people connect.
- Not being in the office in person could significantly impact feeling like part of the team and being involved in product decisions or processes.
How to Deal with These Challenges
- Prioritize: Focus on communication and delivery over developer experience (DX) improvements if the current setup is good enough.
- Remote Work Issue:
- Make an extra effort to meet people in person when possible.
- Be thorough with suggestions by backing them with data and prototypes—show, don’t just tell.