How to Influence the Product Development Process as a Software Engineer

As an individual contributor (IC) software engineer in an early stage tech start-up, you have the opportunity to exert influence on the product development process in several ways:

Technical Expertise

Use your deep knowledge and expertise in software engineering to provide valuable insights and recommendations on technical aspects of the product. Your input can shape architectural decisions, technology stack choices, and development practices. Keep in mind that technical limitations don't have to stifle creativity - it can lead to a simpler solution and a focused product.

There's a great case study about this topic in the book Shape Up by Ryan Singer. The premise is that customers were asking for calendars, but the product team was hesitant to build one because of the complexity and time it would require. Building a calendar is complicated. Dragging and dropping events between cells, wrapping multi-day events, handling desktop vs. mobile interactions, etc. The technical limitations led them to define a more focused problem statement and create a simpler solution - a read-only grid calendar with a dot for each event.

Not everyone on the product team will know the complexity of a proposed solution, so it is up to you to share that knowledge in a way that can help improve the product without stifling creativity.

Collaborative Problem-Solving

Engage with cross-functional teams, including product managers, designers, and other engineers, to foster collaboration and gather different perspectives. Interdisciplinary collaboration will lead to a well-rounded product. Contribute your ideas, ask thoughtful questions, and engage with the team to collectively find innovative solutions.

Proactive Communication

Take the initiative to communicate your ideas, concerns, and suggestions to the relevant stakeholders. Share your perspective on potential improvements, emerging technologies, and best practices that could enhance the product's development process. Don't be afraid to talk to the designer if you found an edge case that wasn't handled or a component that's out of place. Creating a product or feature is a team sport and it's generally better to over communicate. Who knows, maybe the product manager or designer already knew about the edge case, but deemed it low priority for whatever reason.

Feedback and Iteration

Actively participate in the feedback loop by providing constructive criticism and suggestions during code reviews, design discussions, and testing phases. Encourage an environment of continuous improvement and iteration. If you engage in a retro or post-mortem after each project, the process will continue to improve.

Sometimes the hand-off from the designer to the engineer was sloppy or didn't include enough details. Maybe the success metrics of the product were ill-defined. Or maybe there wasn't a clear plan for releasing the feature and the customer service team suddenly got bombarded with help tickets. Whatever the issues are, unless they get brought up and fixed, they will continue to occur. That's why it's important to address the friction early and often to ensure a smooth process.

There's a great book called Radical Focus by Christina Wodtke that goes into more detail about goal setting and achieving using the Objectives and Key Results (OKRs) method.

User-Centric Mindset

Advocate for a user-centric approach in product development. Use your knowledge of user needs, pain points, and industry trends to influence feature prioritization, user experience design, and overall product roadmap. Sometimes the person who knows the biggest pain points of a feature is the one who built it.

Talk to the product manager, designer, customer service, or any other relevant stakeholders to see if users are facing the same friction you see. Sometimes an issue isn't big enough for users to complain about it, but it might be the difference between someone using the platform or churning.

Experimentation and Innovation

Encourage a culture of experimentation and innovation within the team. Advocate for the exploration of new technologies, tools, and approaches to push the boundaries of the product's capabilities. Make sure you have a clearly defined problem statement and success metrics - otherwise the results of the experiment might not be conclusive.

By actively participating in the product development process and leveraging your expertise, you can make a meaningful impact on shaping the direction and success of the product in an early stage tech start-up.


Last Updated

10/3/2023