2. Talk to people who experience the same problem through DMs or surveys.
3. Build MVP that solves problem.
4. Share MVP to the same people you talked to before.
5. Improve MVP based on their feedback.
Now you have a product worth paying for.
This is how I did it for my project Buildpad and it's now at 1800+ users + 50+ paying customers, so don't say it doesn't work.
I would suggest a slightly different set of steps that are more generic (for startups other than just software):
1. Look at all the problems you experience yourself, pick a painful one.
2. Talk to people who experience the same problem through DMs or surveys. Note those who might be excited early adopters.
3. Write out your requirements and analyze. Note the really important stuff, the high value stuff, the hard stuff, the safety stuff, and the regulation or standardization stuff. These are "must do" requirements.
4. Design and build one or more prototypes that solve(s) the problem or an important aspect of the problem. If it's a service business, prototype your processes. Concentrate on the most important requirements first.
5. Share or demonstrate your prototype(s) with the excited people you talked to before. Get their feedback, and revise your requirements where necessary. Do your final design, as required--drawings, BOM, suppliers, manufacturers, assemblers, etc.
6. Now build your MVP based on the updated requirements and design--build multiple copies, as required--and go back for more demos and conversations.
The next focus is on getting support for initial orders and/or marketing assistance ...then begin pre-marketing in earnest in advance of launch to build interest and some pre-orders.