It's completely possible to _care_ about whether your code actually helps anyone without ever thinking or worrying about it yourself. All you have to do is trust someone else to make sure you're not wasting your time, whether it's your boss, CEO, or co-founder, and perhaps they can make this determination better than you. It sounds like you feel you have to be in charge of the business to know you're not wasting your time, but not everyone feels this way.
I support a world with strong organizations and separation of responsibility, where designers can design, programmers can program, and chefs can cook lunch, and if the company fails, well, at least lunch was delicious. It's not the back-end programmer's fault for not spending his shower time thinking about the business model. Most people aren't looking for a financially risky job; it's on the entrepreneur to take the risk.
Alternatively, let's just get rid of salaries and everyone can work for equity. Then they'll _really_ be thinking about how much their work is helping the customer.