Every project should get started with the most important feature first.
Last year my team was hired to create an AI integration. The eventual goal for an API for a chatbot. We started with a proof of concept, which I call critical path here.
Not being able to ship on the critical path makes all other efforts invalid.
Imagine the inversion: a project has one critical component inside. The team starts working on all things surrounding it. They create nice interfaces, a billing system, logins for clients to change their data. Only to find out that the core idea does not work. The whole project could have failed with much less resources.
Right now we are building a small case study SaaS. The idea was to fully specify the project and then let the engineer execute by themselves. This is how they prioritized the work:
- Create the base interface, add the logo
- Deploy to a staging server for testing
- Work on the buffering, the critical feature
These things are on the critical path, because the early win is important for the dev to feel good about their progress.