I'd say that having realistic expectations about work (you're not "changing the world", you're just building a product that's useful for some people and makes you and your employer some money) and having reasonable working hours (no more than 40 or whatever is in the contract) can be more important.
If you identify too much with the product or company, that can be a sure path to overwork, caring and investing too much time and effort without getting any recognition and neglecting your own needs.
But of course, given equal conditions, prefer working for a company with a good mission. Just don't expect too much.
The company mission exists to guide decision making. Employee motivation and happiness comes from understanding that a job exists to pay for a fulfilling life
High performing people can choose where they work. Here's how you can attract them to your company:
- Make their job reasonably challenging. Their accomplishments should look good on a resume.
- Give them reasonable autonomy on how they work and who they work with (hiring).
- Enable a fulfilling life, whether on the job or out of the job: Reasonable and predictable work hours, good working environment.
- Don't make them pretend to drink the kool-aid. In fact, keep the kool-aid in a corner where people have to go out of their way to drink it. Having guiding principles on how to do business is fine, just don't pretend like someone's life motivation is to change the world through quantum-AI-enabled-crypto-retargeting-adtech.
- What makes me in particular go to work everyday? I like my coworkers and becoming better at my craft.
- There's no shortcut for a good working environment. Focus on having the right people/incentives/culture. Perks and offsites only go so far and won't fix your company.