A high-quality product is a culmination of proper market research, strategic vision (usually offered by product management) and the engineering team designing and delivering the solution. It is relatively simple to design a product that is similar to another company’s product by copying ideas. It is much more challenging to design a new unique product which is the first of its kind. Developing a product of the type which already exists (replicating the same idea and splitting the target market segment), takes the world from N to N + 1 and is at most an incremental change. But for something new to be created, we go from 0 to 1, which requires ‘Innovation.’ Peter Thiel has nicely represented these startup company scenarios in his book ‘Zero to One.’ Design is critical in laying the product foundation and planning for the future growth of the product.
Importance of proper design
A good product design incorporates different ideas to address business requirements. Creating good design involves performing proof-of-concept, verifying technical feasibility and developing prototypes before actual implementation of the solution. A good design-prototype helps to provide a glimpse of the potential final product and eases communication with all the stakeholders.
While designing a product, beyond addressing the business requirements the design must consider many factors:
- Simple and intuitive end-user experience
- Ensure the scalability of the solution along with the best performance
- Ensure reliability, data integrity, and compliance requirements
- Design a highly secure product to prevent hackers from compromising the security of your product
- Choose the right tools and technology
- Identify trending technology and harness its benefit
- Consider selecting 3rd party components based on licensing, vendor reputation, support, and security considerations
- Ensure highest product availability and recovery
- Have an extensible framework to support customizations and enhancing the product capabilities
- Plan for simplified deployment and product configuration
- Develop upgrade methodologies to ease patching and service packs
- Product must be easy to maintain, troubleshoot, and support in case of issues
And many more…
This is a daunting task and a lot to consider!
Market relevance vs. customer turnkey
Designing a generic software product that meets a broad market need is quite different from doing a customer-specific turnkey development project. Addressing a market need requires much more design when compared to a services-based customized project.
With so many factors to consider during the design phase along with the business pressure to release the product in the market, it is vital to review the design to avoid overengineering iteratively. There is no need to build a cannon to kill a mosquito or design a high-tech pen for writing underwater when a simple pencil would suffice. Features in the product can be iteratively delivered via phases provided the design laid the right foundation.
‘Innovation’ is one of our core values at SailPoint. Our flagship product ‘IdentityIQ’ was launched with a unique offering to address the identity governance market. Regular product innovations have helped to differentiate it in the market. Good early design was critical to allow for this product evolution to occur.