A minimum viable product is the simplest version of a product that can be sold. The goal of an MVP is to collect customer feedback with minimal effort and avoid building products that customers don't want.

Deciding first features

You don’t need to reinvent the wheel to get started creating enterprise features. EnterpriseReady.io is a great resource that identifies which enterprise features to build first by providing a research-backed roadmap of the 12 most valuable enterprise features, based on studies of successful SaaS companies. Founders can use the self-assessment tool to benchmark their product, receive specific implementation guidance with real-world examples, and prioritize development efforts that will drive enterprise adoption and revenue.

To improve the existing product, product features should be weighted based on their source in listening to customer feedback and informed by customer discovery, and not necessarily on the frequency of requests.

  1. Ideas for features and functionality can come from users, but the end result of what the product will do is defined by the product team.
  2. 90% of the product scope will come from the product team.
  3. Don’t listen to the last objection.
  4. Potential customers never buy because of product features
    1. Overvaluing the requirements of a potential customer can be a high effort and deprioritize more meaningful improvements.
    2. Someone who has never used your product can’t really know how to make it better - their suggestions may in reality be low priority when actually using the product.
  5. The heaviest users will give the best feedback - they understand the limitations of the software and will be more likely to have submitted pull requests for modifications and issues.
    1. Visibility into that feedback through contributions by heavy users is an advantage of open core products.
  6. Sales requests are important but will not make up a significant amount of feature development. Product and sales should have a list of the 5-10 most important requests that they revisit every quarter.
  7. Prioritize features requests based on effort vs value - focus on high value low effort changes.
  8. Working closely with large customers tends to yield the best new features. Large customers have knowledge, expertise and ask for things other customers want.

Second System Syndrome

Second system syndrome refers to the tendency to overcomplicate and over-engineer a new version of a product or system. This syndrome occurs when the creators of the second system try to address all the perceived flaws and shortcomings of the first system, resulting in a bloated and ineffective solution.

To avoid falling into the trap of second system syndrome, it is important to follow these guidelines:

  1. Focus on the core functionality: Identify the most critical features and prioritize them over secondary or nice-to-have functionalities. Keep the system lean and focused on delivering value to users.
  2. Iterate and gather feedback: Instead of aiming for a perfect and fully-featured system from the start, adopt an iterative approach. Release early versions of the system, gather feedback from users, and make incremental improvements based on their needs and preferences.
  3. Stay aligned with user needs: Continuously engage with users to understand their requirements and ensure that the system remains aligned with their needs. Avoid adding features or functionalities that are not directly relevant or valuable to the target users and avoid building in isolation (see Finding customers).
  4. Keep the team focused and accountable: Maintain a clear vision and goal for the second system and communicate it effectively to the development team. Encourage collaboration, open communication, and a shared responsibility for delivering a successful product.

By following these guidelines, you can mitigate the risks of second system syndrome and create a well-designed, user-centered system that effectively addresses the shortcomings of the first system without introducing unnecessary complexity.

Announcing a new release

Commit to a regular communication schedule for release updates. A monthly blog post is recommended. The blog post may include a changelog and should highlight new features and notable improvements.