That's pretty much my story in software
I taught myself as I was working the projects.
First one was an ARINC 429 reader we needed to certify some avionics. The new, all digital cockpit was to have no "steam gauges", so we needed to emulate a flight management display which had not yet been built. I told the boss, "Give me a PC, some technicians lab time and development software and I'll build one."
The tech shop wire-wrapped up an ISA card with ARINC UARTs, I wrote the software (assembly driver, Turbo Pascal UI) and it worked.
We had a bunch of new hires, fresh out of college. Probably with better software skills than me. But I was the first to raise my hand. One guy asked my boss why I got all the "cool projects" while they were busy tracing schematics and counting wires.
My boss said (I heard this later), "Paul has been working in the industry for a few years. So I figured he could handle the job."
This guy then came over to me and asked me where I used to work. "The power company," I replied.
"So, what did you do?"
"Just drove around in the county in a pickup truck, pounding in stakes where the crews were supposed to set poles."
He walked away with a rather confused look.