I am doing maintenance programming for living (in Delphi 5), which usually consist of long list of small problems and changes: I am usually trying to do one or two things a day, generate new binaries and send it to customer so he have something new to play with. I am usually working on my own things till, say 5 or 6 and then do my daily work for my customer.
I don't know, really. I do Delphi programming for 15 years now and it was quite mainstream back then, even now I occasionally do work for new clients (iOS, Rails, Machine Learning) and every 7 years or so I found another client whom I really like to work with and I just try to keep around. So I might find my client number 3 eventually and it is not going to be Delphi anymore. I usually work with like 2 new people each year.
Basically I do like to work with established, non-tech company that is around for long time, both companies are family owned with 50+ years in operation. I do respond to ads sometimes, got some referrals, bump to some odd guy at wine tasting and stuff like that.
I had never think about this: "established, non-tech company that is around for long time"
Probably makes for a very good working enviroment, they may have a lot of technology to add to their business, and also they may value your work a lot more than a tech companies.