Here's my situation. I'm a young engineer(25) with 3 years of industry experience. From the very first few days in this company, my manager gave me 100% independence to do something interesting. 2 years ago the company decided to transition into a brand new building, and that event has just happened. So, 2 years ago, I got this amazing opportunity to work on the digital version of this building, to make it as smart as possible. I am the designer and the implementer of the core component of this project, pretty much an operating system for the building, implemented in Haskell. I gave my heart and soul into this project, because I don't think I'll get this kind of opportunity ever again. Besides this, they sponsored every single conference I wanted to go to, I've had time for about 3 per year. They bought every book I needed and allowed me to work from home whenever I wanted, or come to work whenever I wanted. In less than a month, the project is about to be live, and will do a lot of stuff to help the employees be more productive at work. So this is what kept me going, and I've been extremely happy in my work. However:
1. Even though the pay is about the industry average, I've had to turn down a lot of offers this year(even 2x to 2.5x salaries) because in my head, developing a smart building and developing a website is simply laughable to compare.
2. I'm pretty much the only one in this company(about 600 in this location alone) that has this kind of freedom. I'm lying, a few people have joined the project throughout the years to help me out.
3. There's no real ambition around me. Nobody wants to go beyond the accepted level of quality and deliver something amazing, a few details that would really delight the users. I really have to push to make these things happen.