Over the last 6 years, I have done quite some Open Source work around Apache httpd and that was, while often stressful, also very rewarding (for the soul). This year, I decided to pursue that exclusively in 2022.
At the end of the year, I will leave greenbytes and be on my own. The company I founded in 2000 with two university friends is not the setup that works for this. It is a bit heartbreaking to let that go, but it is what it is, as they say.
With 30+ years of professional work behind me, I am not looking to build a "career in open source". A lot of people are discussing now how one can possibly do that, the economy of OSS work, etc. I have no answer to that.
What I did in the last 6 years was finding ideas and funding for OSS work by creating new things. HTTP/2, ACME, Rust based TLS for Apache. Developing features is something you can find sponsors for. And I plan to continue this.
I am also looking forward to have the time to develop things that are not easily commercially funded. That interest me. Just because.
Maintenance has eaten into my spare time and that is unhealthy when your full time job is also software development. Making more spare time means effectively a pay cut. Fortunately, I am in a position where I can afford this for now.
No, I have not found someone willing to sponsor maintenance of OSS. It would be very good if we overall could find a solution to that, but I am a bit sceptical.
In the ideal, platonean world there would not be any maintenance. We'd all write our software in SuperRust++ and there are no more bugs. Of course, we know that will never come. Maybe the AIs will one day do it, if we can still talk to them at that point. Probably, if they have become really smart, they'll just write the software they want and need.
If you get paid more for something that needs more maintenance, what is keeping you from becoming Wally and write yourself a minivan? There needs to be some feedback loop.
One thing that works on cutting down on maintenance are test cases, test cases and more test cases. Because testing can be easily offloaded to computers, it is something you do not need to do more than once. They very easily pay off.
In my "feature" developments, there is always exhaustive test case development included. That is not negotiable. It also does not appear as a separate item in my estimations (never do that: it's the first budget item that gets slashed!). It is calc'ed in. Do not develop a new feature without it. It's unprofessional and you yourself will pay for it later.
Look at it this way: maintenance is mainly test cases you had not written yet.
Plus administration, release work, answering questions and integrating updated dependencies. It's not the solution to everything.