Teach yourself enough to get a useful job, then constantly be learning while making money. Worked for me. Always assume there are ways to be doing it better, and never be the most experienced person in the room (try to be the newest!). That took me from decent with computers to senior engineer - the hardest part is getting the first job. It will seem random and you may have to not take much money at first. Or if you want to fast track and can afford it go to university.