How Will AI Impact Software Development, Products, and Teams?
This post was originally shared on March 29, 2024 on Medium. I'm experimenting with Substack, and figured a good start would be to migrate my earlier content here.
As a software startup founder, my passion is building products that add value to people’s lives and businesses. As an experiment, I plan to start open-sourcing more of my ideas and learnings through this blog. I hope to inspire and connect with like-minded individuals with this writing. If you have feedback, reach out at nadia [at] ethoswallet [dot] xyz.
Now, let’s dig into today’s focus: how will AI impact software development, products, and teams?
Why should we care about AI in relation to our work / life?
AI is a hot topic that is a frequent source of discussion and change in my network. Many friends who work in technology are joining AI startups or building or integrating AI products at their existing organization. And connections in other industries are considering how to advise clients and evaluate AI products on their benefits and risks.
Unlike other game-changing technologies such as blockchain, where many in my network were deeply curious but not directly impacted, AI is already changing our day-to-day. Almost everyone I know is interacting with AI through product experiences such as ChatGPT and the content consumed. AI technology is increasingly utilized through products and integrations in both work and personal life.
What is the role of AI in software technology companies?
This is a fundamental question for anyone building or whose business depends on software (hint: probably you!).
There is generally consensus that AI will play a role in writing code for software products. How that happens may vary significantly in the short- and long-term. One version of how this happens today is GitHub Copilot (from Microsoft) that’s betting on helping developers move faster. After ChatGPT, Copilot was the most adopted AI product among 50+ respondents to a survey we conducted in December 2023. Another approach is that of Devin AI (built by Cognition Labs, who recently announced a $21 million Series-A round). Devin AI is marketed as the “first AI software engineer” that is fully autonomous and able to complete tasks independently.
Regardless of your thoughts around complete autonomy versus human-in-the-loop, the future likely involves more code being written more quickly, via direct or indirect involvement of AI. This means that new software companies, products, and features can be launched faster.
However, this increase in AI adoption to create code can lead to side-effects such as more code to maintain, more complex codebases, and possibly also less human-readable code. Merging in changes to a codebase can already be challenging without AI. Even the best Pull Request review process is likely to miss some details. If AI is generating more PRs at a much higher speed, then these issues will become even more untenable.
This leads to another question…
If software developers increasingly use AI to write code in one form or another, what does this mean for their product and team?
Anyone working on software products has likely experienced “technical debt” and the pains it produces for the team. Decisions made to ship fast in the early stages lead to compounding challenges later on that ultimately might lead to a slowdown for developers and deployments. In a world where there’s more code and more complex code, this painful experience accelerates.
For non-developer product team members, like product managers, UX researchers, designers, data scientists, and customer support roles, this amplifies an existing challenge around understanding what’s going on in your product and the underlying code, and how it impacts your business and users.
What if instead of project management, product teams could get a snapshot of the current state of the product directly through the code?
We’re not talking about reading GitHub commits, which while technically feasible can be difficult to get value from as a non-developer if your developers aren’t writing detailed change logs. While I can’t share too many details on what we are building yet, we are exploring helping software product teams understand the real status of their product by simulating changes to the code and providing summaries and interactive demonstrations.
If successful, this should not only help product team members answer questions like “What happened to this task that a developer was working on?” or “When will this feature hit production?” but it will also help with quality assurance and testing. Even the least technical member of the team should be able to easily set up a user scenario and experience a change, before it hits production. You can change variables to see how product changes impact users with different attributes without logging in or out or generating multiple user accounts for testing.
This same functionality can greatly benefit pull request reviews as well. Adding a completely new dimension of information to pull requests reduces the likelihood of any issues getting merged in.
What does the role of the product manager or product owner look like in the future?
Even before the adoption of AI in software development, there was skepticism about whether product managers are necessary. Now with AI, there’s an interesting question of “Who should make product decisions?” — if you could wholly automate them and make Devin a PM friend (or just give Devin product decision-making powers) should you do it?
Product decisions should and will continue to be made by people for the most part. However, AI can speed up and improve these decisions and will become a critical tool to help empower product decision-makers, whether that’s a Product Manager, founder, or engineer. AI can provide better data and insights to help PMs make smarter product decisions, faster.
We plan to leverage AI to reduce the amount software product teams need to spend on project management and communication to get everyone on the same page. We want to enable shorter, faster, and more meaningful and informed product decisions by providing everyone with a better understanding of the product. This includes simulating how a software product will appear for users in different states based on the underlying code changes earlier in the process than possible today. This will reduce collisions and miscommunication and lead to shipping high-quality products faster and with less cost and effort.
How can product managers and founders use AI to build quality products faster?
AI unlocks superpowers for founders and product managers to empower them and their teams to ship high-quality products faster than ever and experience more delightful collaboration in their interactions with developers and other critical team members such as design and product marketing. This will work for all software product teams from remote to hybrid to in-person.
Our team is partnering with select individuals to pilot an early product. If you’re curious to learn more about this, please reach out to nadia [at] ethoswallet [dot] xyz .
We’re also conducting a survey and will be prioritizing respondents for follow-up. You can complete the survey here: https://bit.ly/2024-software-survey .
All the survey questions are optional, so if you don’t know how to answer a question, just skip it.
What’s next?
Exploring how AI can help product and development teams collaborate more effectively to deliver high-quality products quickly is our focus. We’re investigating both how we can leverage AI to help solve software product process challenges today, and to build a solution that empowers teams to make great decisions in a world where AI becomes more common in software development. I’ll also continue to open-source more of our ideas, experiences, and learnings.