I am going to give it to you straight but my intentions are to give you constructive criticism. The problem is you are approaching this the wrong way (in my humble opinion as a boostrapped founder). If you are starting with "decent exit" in mind, you will end up doing things that won't help you at least in the beginning.
Focus on the "no longer want to trade time for money" and forget about exits. Exits can happen but if you plan for it when you have $0 and no business, you are in for heartbreak.
As a programmer, you can start a software business on the side, TODAY. It doesn't have to a game changing idea or a hockey stick growth startup or whatever with VC funding. Just start. Build something. Tinker. Put it out ther for users and see if it does anything for you. Learn from it. Then keep building. Be willing to fail. If you want guaranteed success, it ain't happening.
"what metrics do today’s business buyers look at that i can optimize for?"
There is none. Every case is unique. Every founder is unique. Every product/business to an extent is unique with its own set of pros and cons.
Don't worry about creating a desirable business. Worry about creating A business which you can run. Exits will happen if you do the hard work. But be willing to fail. Nothing is guaranteed. Rinse and repeat. Good luck.