So basically same as becoming a hardcore nerd-level software engineer :-)
If you'd be a #100 chess player, you might support yourself with chess somehow (e.g. coaching), but you have to really be at the top and win tournaments to get any meaningful money just by playing; and if you're top 10% then you're likely spending money to play chess and need a different profession to afford that.
So unlike software engineers, you have to be among the few very best in order to make it your profession, that's a big difference.