
Explore the software life cycle from business need and budget through discovery, development, validation, delivery, and operations, highlighting modern infrastructure, deployment, monitoring, and the feedback loop.
Explore engineering with Miro for goals and story refinement, Trello as a Jira substitute for discovery and implementation, and GitHub actions on Azure for CI/CD, edited in Visual Studio Code.
Software arises when a business needs change and aims to transform operations with agility. Investing in software enables online shopping, expansion, cost savings, and GDPR compliance to stay competitive.
Investing in software keeps a company competitive and alive; examples include Uber-like apps transforming transport, Tesla’s online direct-to-consumer model, and expanding services like insurance to boost operational efficiency.
Discover how financial projections and return on investment drive software purchases, including regulatory mandatory software, roi analysis, and cost savings through profit and loss, ebitda, and cash flow forecasts.
Learn how companies finance software projects by allocating a budget, using CapEx for one-off purchases and OpEx for ongoing costs, including salaries, licenses, and cloud.
Explore project financing options by comparing bank loans and corporate bonds from the capital market, including loan terms, interest and principal payments, and the non-guaranteed, end-period repayment of bonds.
Compare bank loans and corporate bonds for a $1 million project over five years, highlighting monthly payments, interest totals, and repayment timelines.
Learn how startups raise capital through funding rounds from seed to series, including angel investors and venture capital, illustrated by Facebook's financing path and eventual ipo.
Explore the product development lifecycle from idea generation and screening to concept development and testing, wireframes, and focus group feedback, ending with mvp, market testing, and market entry.
Secure the budget and align vision with the sponsor before discovery. Create a project charter or product definition document, assign a product manager, and form a team to begin discovery.
Use miro to create a high level product roadmap outlining MVP, dependencies, and launches in US, UK, and worldwide, with three product teams and three supporting teams coordinating.
Identify actors, high-level scenarios, and dependencies in the discovery phase, then refine details through ongoing refinement to define requirements for implementation and deployment.
Leverage discovery techniques to translate business requirements into technical needs via interviews and surveys. Prototype MVPs, user stories, design sprints, and focus groups to gather feedback and refine requirements.
Explore the discovery sprint in software development, outlining three phases: introduction and context, delta, and refinement, with involvement from business users and implementation team to deliver a ready user story.
Visualize a discovery-driven minimum viable product for an insurance platform on a Miro board, detailing quotes, purchase, social login, reporting, profiles, policy downloads, quote comparison, and profile-based recommendations.
Brainstorm and identify the product's main users and stakeholders, including client, administrator, sales representative, and support, then map integration, system, and tech team roles to create user stories.
The lecture demonstrates how to map users into psychographic personas by analyzing actions, motivations, values, and context to tailor insurance for travelers.
Manage sprint capacity by refining a package of story points within a 15-point capacity; discovery and refinement stay iterative to accommodate changing requirements.
Break down complex use cases into small, implementable stories—such as importing quotes, price checks, policy availability, and reporting—and track them on a discovery board from idea to done.
Design clear, value-driven user stories that add value and use invest criteria—independent, negotiable, valuable, estimable, small, and testable—and align with the definition of ready and done.
Explore how discovery items move from backlog to implementation, meet the definition of ready, define user stories with value, acceptance criteria, tests, and deployment in a continuous delivery pipeline.
Identify constraints, needs, and actors in the discovery phase through user research, interviews, and stakeholder collaboration, then produce granular refinement outputs with clear acceptance criteria.
Explain how AI agents act as orchestrators that coordinate large language models and tools to automate tasks, using prompt chaining, workflow routing, and feedback loops across databases, APIs, and services.
Watch AI agents generate and critique a cash-withdrawal user story, validate it with acceptance criteria and the definition of ready, and post outcomes to Jira.
Demonstrate using AI agents to derive test cases from acceptance criteria, coordinate via Jira, define test design best practices, and outline automated testing workflows with Azure.
Learn how AI agents perform automatic peer review on pull requests by fetching the latest GitHub commit, suggesting improvements, and generating review comments for code readiness.
Generate automated tests with copilot and playwright in agent mode, using a page object model to create new test cases from previous runs and decouple test data.
Design a system that uses a foundation model to enrich an item from a prompt, iterating 2–3 times for robustness, with human tweaks and machine learning feedback for future improvements.
Compare traditional and automated architectures for Gen AI enrichment, evolving stories from version 1 through 5 via prompts and automation, with API calls, cascade prompting, and Jira export.
Watch a ChatGPT demo that enriches a fintech user story for mobile cash withdrawal without a card, generating acceptance criteria, positive/negative paths, and functional and non-functional requirements.
Explore enriching content with an API client by calling the ChatGPT API through a post request, tracking tokens, and using tooling to automate prompting and reduce noise.
Explore how unsupervised learning discovers patterns through clustering, association, and dimension reduction, using height and weight examples with two clusters to contrast with supervised learning.
Use a model trained via unsupervised learning to power a recommendation system that suggests items often bought together based on customer cart data and profiles in an e-commerce setting.
Demonstrates building an AI-assisted shopping recommendation engine using untrained data and GPT-4 with Kaggle training data to identify popular products and suggest complementary items from a shopping cart dataset.
Define high-level architecture, pick tools, decide on infrastructure, and map user journeys. Translate refined requirements into code, ensuring quality, performance, and validation.
Architectural decisions shape functionality, maintenance, and cost, guiding technology stack, development methods, security, performance, mobile-first delivery, cloud costs, and a data strategy for value.
Explore a well architected product built with microservices and micro-frontends, leverage serverless functions, caching, and containers, and design for stateless, scalable cloud infrastructure with load balancing.
Explore user experience and interface design through user research, journey mapping, wireframes, and prototypes for mobile, PC, and other devices, guiding development with feedback, usability testing, and a/b testing.
Develop modern software by transforming requirements into code, using linters and unit tests with code coverage, and applying architectural decisions, cloud constraints, and peer reviews.
Learn how test driven development acts as a shift left, starting from a story that meets the definition of ready, writing failing tests first, building code, then refactoring with CI/CD.
Learn how a linter integrated into Visual Studio Code identifies code quality issues in real time. Install SonarLint to surface bad practices as you type Java code.
Demonstrates fast, cheap unit tests using a small calculator app, covering add, subtract, multiply, and divide, with JaCoCo via Maven, six tests, showing instant feedback and failure diagnosis.
Explore how unit tests validate code and strive for 100 percent coverage using coverage tools across Java, .NET, and JavaScript, with an example showing 60 percent overall.
Learn to verify dependencies with the OWASP dependency checker, identify vulnerabilities in libraries, and run a mvn build to review reports and take corrective actions.
Explore how continuous integration merges feature branches into master, using pre-checks, CI server validation, tests, code quality, vulnerability checks, builds, and code review.
Observe continuous integration in action by using GitHub actions to run linting, unit tests, coverage, vulnerability scans, and builds on a master commit, with one failure stopping the pipeline.
Explore ai assisted code healing by training models on your code and coverage reports to generate unit tests, improve coverage, and reinforce learning with developer review.
Demonstrate a self-healing code workflow in CI that uses AI tools to fix failing units, improve coverage, and re-run commits until thresholds are met, with initial human oversight.
Learn how validation and testing cover unit, integration, system, sanity, smoke, API testing, and user acceptance testing to ensure functional success, non-functional quality, and security.
apply the testing pyramid: emphasize unit tests at the base for fast feedback and low cost, balance with integration, api, and limited ui tests, plus manual exploratory testing.
Learn the modern practice of testing on feature branches with dedicated qa environments, ensuring unit and integration tests pass before merging to master and enabling safe, instant releases.
Automate testing and deployment from qa to production with continuous deployment and delivery, tailoring tests per environment and performing smoke and sanity checks.
Explore why teams test across integration, staging, and UAT environments before production, and how continuous testing, CI/CD, and release types shape reliable delivery.
Learn true traceability across the full software lifecycle, linking requirements to development, tests, commits, pull requests, infrastructure, deployment, feature flags, and defects from plan to production.
Demonstrate end-to-end traceability from requirements to production by linking Jira stories, branches, unit tests, Postman collections, test executions, and pull requests across GitHub.
Create on-demand environments from trunk, release, or feature branches by building, testing, and deploying the app and infrastructure, then decommission or scale when idle to save costs.
Learn to create on-demand feature environments with GitHub Actions to test feature branches early, by building or running the app, deploying, and validating via Postman.
Continuous testing integrates with every merge to the trunk, validating builds, deployment, and regression tests for each pull request to support continuous integration and delivery.
The nightly build enables overnight regression testing across trunk and release branches with CI scans, builds, deployments, and tests, surfacing defects within 24 hours.
Showcases a nightly build pipeline that runs linting, unit tests, code coverage, dependency scans, and builds, then deploys performance and functional environments with Google Lighthouse checks and Postman tests.
Demonstrate the latest sprint work to product owners, clients, or stakeholders to confirm value and gather feedback.
Compare kanban and scrum delivery approaches, emphasizing continuous delivery, built-in quality, and a clear definition of done, then learn when to push ready features to production with self-organized teams.
Explain how a given-when-then BDD framework with Gherkin enables NLP-driven automated testing that mirrors real user behavior, while analytics and user journeys reveal usage patterns and risk to guide tests.
Explore a next-generation framework for product acceptance testing that links production to development via BDD given-when-then and analytics-driven prioritization of tests.
Discover what ai agents are and how they orchestrate prompts, llms, and tools to complete tasks, using prompt chaining, workflow routing, and feedback loops with databases and APIs.
Watch a live demo of an AI agent that automatically creates tests from a story, generating acceptance tests, BDD scenarios, and selenium test cases with flow wise.
Install Flowise locally following the official docs, ensure Node.js and npm are ready, then launch on localhost:3000 to access the agent marketplace and human-in-the-loop tools.
Build and orchestrate an AI agent using prompt chaining, a supervisor, and worker nodes, wired through a ChatGPT wrapper to generate titles and stories.
Interact with files by using read and write tools to extract a user story, generate test cases and BDD scenarios with two agents, and save the results to disk.
Demonstrates generating automated tests from a webpage using fire crawl and a vector-augmented workflow, building a site map and element data to produce Playwright scripts.
Explore modern infrastructure, centered on cloud, on-demand provisioning, and infrastructure as code with GitOps; understand hardware, software, networks, security, and data management to achieve scalable, high-availability applications.
Explore how cloud and devops rent hardware, compute, storage, network, and operating systems from providers like Google, Amazon, and Microsoft, highlighting infrastructure as a service.
discover how platform as a service sits above infrastructure to deploy and run apps without managing networks or operating systems, provisioning databases, app servers, containers, and services in the cloud.
Explore cloud software as a service, where you access apps with minimal configuration, avoid development and infrastructure tasks, and focus on logging in, sending emails, reading emails, and archiving.
Demonstrates infrastructure as code by exporting an Azure template to JSON, deploying a resource group with a virtual machine, virtual network, and public IP, and enabling SSH access.
Demonstrates infrastructure as code with an Azure template to deploy and create a resource group, virtual machine, and network, and shows how GitHub Actions automate this in a CI/CD pipeline.
Learn how high availability keeps services operational with layered redundancy: from dual virtual machines in the same data center to cross-data-center and geo redundancy, targeting 99.999% uptime.
Demonstrates infrastructure scalability testing through horizontal and vertical scaling with load balancers, threshold-based rules, and cloud auto-scaling to maintain performance during peak traffic.
Explore chaos engineering by injecting controlled failures to test system resilience, from hypothesis and experiment to analysis, improvement, expanding blast radius for higher uptime, as Netflix popularized Chaos Monkey.
Demonstrate fault-tolerant architecture with dual data centers, two nodes each, and load balancers distributing traffic to 25% per node, using Azure Chaos Studio for targeted chaos experiments.
GitOps uses version control for infrastructure as code to manage environment blueprints and CI/CD configurations with review, pull requests, testing, and auditable changes before production deployment.
Learn how test driven infrastructure validates infrastructure as code across clouds, containers, and orchestration tools, using Chef InSpec or Tera test to verify services, ports, and connectivity.
Demonstrates infrastructure acceptance testing with lightweight tooling and GitHub Actions; write tests for changes, deploy to a test environment, and merge when Chef InSpec tests pass in a GitOps workflow.
Welcome to this great and hands on material on Modern Product Development. This is a beginner level material that is focused on explaining the engineering and best practices that high performing engineering teams apply when developing world class products.
The course is designed for both software engineers and people that have just started in the IT world, and the main focus is to break down the entire lifecycle of the product as well as the most modern approaches to technology from the moment the decision is taken to fund the project until it goes into production and beyond.
There will be practical demos and a showcase of tools that will make this possible, all by leveraging the latest technologies such as Cloud, Devops and AI.
Some of the aspects that will be discussed are:
1. Hands on Demo with: Miro, Jira, Trello, GitHub, VS Code and continuous integration, continuous testing and DevOps pipelines.
2. The decision to create the product. Focus on budget and vision of the software that needs to be created.
3. Practical Example of how to integrate AI to launch the product faster and to have better quality.
4. Discovery and Refinement. We will understand how complex business goals are broken down in smaller usable epics and stories
5. Product Architecture. What makes a great architected product and what are the constraints that engineers consider when defining the architecture.
6. UI/UX – What is experience and look and feel.
7. Development. Modern software development activities, great code, continuous integration and branching strategies for easy to manage dependencies.
8. Testing. In this chapter the focus is on how to test early, how to avoid the waterfall trap to testing, the shift left approach and preventive actions.
9. Infrastructure. What is infrastructure as code, how to use the most of your environment while reducing cost and how is cloud helping companies be on top of their game.
10. Deployment. What it is, how its done, shift right and testing in production, as well as 0 downtime deployment with reverting options.
11. Monitoring in production. Here we will understand how user behavior understanding as well as application monitoring contributes to the overall success of the project.
Take this material and open the door to modern product engineering, understand how great team work together to achieve high performance.