I got my job by starting my own law practice after working at a large tech company + a large law firm. Most lawyers work at firms for several years (or forever) instead of doing their own thing. I did contract programming work for many years before starting my practice so I knew what I was getting into by starting my own business. Without my background in programming I wouldn't have most of my clients. I also get a lot of inbound leads because my website does well on Google (re: former web developer).
My job is awesome because I get to help entrepreneurs start their businesses/keep them running smoothly. I'm independent so I can offer reasonably-priced, fast and flexible service. Another benefit of being independent is that I get to work for businesses that other people might not touch such as Bitcoin-related companies. It's more interesting than being a programmer because I get a higher-level view and work with a wide variety of people. I still keep one foot in the world of programming by building my own services on the side.