This is the repository for learn.winningproduct.com portal. You can find gatsby in /portal
and its learning content in /content
.
- Fork the Github repository - http://github.com/winningproduct/learn-portal/
- Find your knowledge area in the models folder
- Fill the given template (Included in each area document) with the following content
- Subtitle - (140 maximum words)
- Add a featured image representing the content - (Please check the copyrights using google image settings)
- Description - (160 maximum words) - Summarize the content added in the “What” section
- Why - (200 maximum words) - Summarize the content added in the “Why” section
- How - List of bullet points - Summarize the content added in the “How” section
- Further Reading - Name and the reference as shown in the template
- Send the PR
- As soon as the PR is merged https://www.winningproduct.com/content will be updated
- The contributors will also be updated under the post - Github image and name
- References should be from valid sources
- Don't add lengthy content, instead refer to references for further reading. Stick to Description, Why and How sections
- In the how section, if there are multiple methods, you should recommend one method.
This is where you explore into different possibilities before locking down on a focused product concept.
Create a pitch deck (or equivalent) to present the idea to different stakeholders such as investors, partners and potential customers.
- Research into current market state, domain trends and study existing competition to understand the context
- Evaluate business/financial viability to ensure long-term continuity and RoI
- Gather information about potential target markets and customer segments and the pros/cons of focusing on each
- Analysis of related user personas to understand pains, gains and behavior of users
- The primary value that the company promises to deliver to customers. This is the declaration of intent or company's brand statement to consumers to communicate what the company stands for, how it operates, and why it deserves their sale
- Understand different paths a user takes to accomplish goals using the product
- Study current world & market trends to align the purpose for the product with a mega trend
Now that you have explored different avenues, start locking-down on a specific area with best potential.
- Verify if the solution is technology feasible to implement with available resources
- Translate main features into a high-level prototype for stakeholders to obtain feedback
- Elaborate business context within the product operate and achieve the business goals
- Elaborate the purpose of the product’s existence from customer's point-of-view
- Identify the minimum set of features that can gain maximum learning and has low cost of implementation.
- Underline architecture of the platform, including hosting considerations, DevOps and tech stack selection
- Architecture blueprint for implementing functionalities, including product components such as licensing, SSO, business APIs etc.
- Validating if your solution effectively solves the customer’s basic problem
Analyze deep in to the focused area to elaborate details required for solving the problem.
- Define the brand personality of the product including composition, design & visual theme, general look-and-feel, logo, name, etc.
- Data architecture is composed of models, policies and rules or standards that govern which data is collected, data relationships, how it is stored, arranged, integrated, and processed.
- Define a set of message to test against target market including a short pitch, tagline, ad messages, etc.
- Estimate the development efforts for functional and non-functional features
- Estimate for production implementation, training and running cost estimations in operation
- Build a detailed prototype to demonstrate how the final product would operate and obtain feedback
- Makes sure that our product is well tuned to solve the problem specifically for the identified target market
- Lay the features and releases in a product evolution timeline
Plan ahead the product development, implementation, operations without losing the ability to respond to market dynamics.
- Outlines the processes such as team management, code reviews, communication strategy, etc.
Team structure should define key roles, responsibilities, boundaries and values
- Implement a vertical of a feature and setup the infrastructure to act as a guideline for further development
- Setup source control flow, code integration process, automation strategy (CI/CD/Tests), scaling, etc.
- Details of the data storage, data interaction interfaces (APIs) and data dimensions for analytics purposes, etc.
- Quality assurance process, test automation, verification, regression and release quality management
- Process of deriving, defining, communicating, documenting, prioritizing and obtaining user feedback
- Integrate suitable product theme, visual element library to code with specific guidelines for developers
- Define quantitative key matrices (timeline, quality, market success) that helps validate achievement of business goals
- Define customer onboarding process includes seamless integration across modules such as websites, demos, trials, licensing, payments, data migrations, resource provisioning, etc.
- Consolidated marketing plan including market segments, key messages, channels, lead capture, nurture, convert, up sale, referrals
- Exploring low cost and smarter options to gain a rapid market reach in a short time for growth through referrals and up-sales
- Plan, manage, schedule and build a process to develop and release changes through different stages and environments. Techniques such as canary releases, dark launching, feature toggles, A-B testing are to be considered when testing and deployment of changes to production.
- Proactive monitoring and log analysis of potential and occurred errors to provide graceful recovery and diagnostic capability for support teams.
- Take actions to protect intellectual property of your business and technical innovations. Take necessary actions such as patenting, copy-rights and non-disclosure agreements and validating compatibility of third-party licenses.
Execute the plan with the goal to validate assumptions (technical, requirements, business) faster and cheaper.
- Incrementally prepare the architecture to support upcoming features and other requirements. Strike a balance between Big-Up-Front (BUF) and No-Up-Front (NUF). Set up architectural collaboration between the teams as the project gets bigger.
- The tactical action plan that outlines the steps necessary to do before, on and after the product launch.
- Set up tooling and workflows for capturing and managing your potential customers. Invest on Customer Relationship Management system to automate and provide uniform experience.
- Establish process to ensure code quality. Implement static code analysis and peer review processes.
- Identify the high priority areas for test automation. E.g. regression tests and repetitive tests. Make the tests run on commits and deployments.
- Build and evolve plans analyze the patterns of potential customers to your marketing sites.
- Build mechanisms to continuously feed product development team with user feedback, sales team findings, competition behavior, support team findings, etc.
- Create a process to identify and manage technical debt during the product development. Think of a time allocation for non-functional improvements in each sprint.
- Understand the data protection policies in target markets. Device strategies for data segregation and limiting access to production data.
- Build mechanisms to track and analyze user behavior within the system with the aim of improving features and providing better UX.
- Set up a process to identify which features should go first. Specify the process to revisit the product roadmap as new knowledge becomes available.
- Enable productization to extend your product into a portfolio. Define unified user experience, each product's UVP, integration between products, and formulation of clear message to market.
- Define the strategy to bill customers. Clearly communicate your strategy such as price/feature tiers, pay as you go, etc...
- Define what levels of code quality, performance/load testing matrices that qualifies as passed for a production release. Implement automation or manual verification in place.
- Build mechanisms for managing license agreements with users. Track usages for relevant features, licence expiry, reminders, payments, etc. Implement restrictions based on price tears and usages.
- Create a quick ramp up guide on both domain, technical and process knowledge for new team members. Make them aware of their purpose responsibilities in the team.
- Implement continuous cycles of identifying, classifying, prioritizing, remediating, and mitigating of software vulnerabilities of the implemented code and third party components.
Fine tune the product to achieve the maximum output.
- Gathering correct and current data and process them to identify patterns and make predictions. Use this to enable data driven decision making.
- Focusing on reducing cost. Consider shredding anu unnecessary waste in platform services, tech debt backlog or team structure. Look into on process improvements.
- Detail plan including frequency, customer segments, market conditions, offerings, ad-word design and message.
- Plan and organize human resources, tools, documentation, training required, communication and troubleshooting capabilities to provide great customer service.
- Adapt industry standards and certifications to design stronger, safer, more reliable products and getting compliance approvals from relevant authorities and industry bodies (e.g: PCIDS, HIPAA, GDPR etc).
- How to correctly manage contracts (versioning, tools etc), SLAs for customers
- Defining a brand of the product team to have a powerful impact on team's alignment, effectiveness and engagement with each other and the rest of the organization.
- How to optimize system performance for best user experience, based on performance requirements and analysis on existing performance
- Offsite (SEO) or onsite improvements provided for user experience so that people will be more likely to convert on your website
Your product is now cash cow. Milk it the maximum while you can.
- Make sure your application scales as users grow. Explore scale up and scale out strategies while maintaining SLA obligations and efficient cost of operations.
Rapidly respond to market conditions and learnings to sustain competitive edge. Iteratively improve the product with improve , invent, or buy decisions aligning with business goals and timelines.
- Monitor system health, detect and alert about system malfunctions and failures. While exception monitoring deals with problems within the product, incident management deals with problems on the larger stack of software and hardware.
- Team and process arrangement to release an update to fix a critical or major error while maintaining SLA obligations in production.
- Increase ‘quality’ traffic to the web site by pushing relevant content to the right minded people via digital marketing channels such as search engine optimization and social media. Continue to help, support and maintain a relationship with both potential and existing customers.
- Start educating prospects, build awareness of your organization and its products. Build trust and build a good relationship making it more likely that the potential client will choose you when it's time to buy.
- Marketing plan that makes use of recommendations and word of mouth to grow the product's customer base through the networks of its existing customers while establishing the customer loyalty. Also how to market higher sales to existing customers (up-sales).
- Roadmap for moving to better technologies to facilitate rapid response process, while boosting security, availability, performance and agility
- Strategize on enhance the image of the product brand and focus on influential media strategies.
- Plan and action business continuity strategy to minimize business risks. Consider technical, market and environmental factors. Ensure that various drills are being done to make sure the readiness.
- Do a win loss analysis on your leads to understand why you lost and what are the strong points in your application. Analyze these results with different demographics in mind.
The product's time is up. Re-invent the technology platform / business model to keep up with the market.
- Identify under which circumstances the stakeholders will agree to retire the product in the view of migrating to the new product along with end-of-service support models.
- Systematic plan to smoothly migrate users from the old platform to new platform without losing users’ data. Have a migration support strategy. Manage customer licenses and contracts to support migration activities.
- Create a strategy and action plan to migrate all solution components from old system to new system while running in parallel.
- Create a plan to document both tacit and implicit knowledge and create knowledge ramp up materials to transfer knowledge.
- With customer's consent to close the account, permanently delete data and provide a mechanism to export customer's data on request.
#TechArchitecture #DeliveryProcess #CostBook #DataModel