I was studying Astronomy at Harvard and dropped out and came out to Silicon Valley to visit a friend. At the start of 1980 I got a job as a Systems Assembler at Calma a company which made CAD systems. In my year as a Systems Assembler I got a board level understanding of the systems and learned to use the operating system and the CAD software. With those skills I got a job as a Technical Instructor teaching Calma Field Engineers an overview of the system and how to debug the system with diagnostics. I was a Technical Instructor for 2 years and learned a lot more about hardware and operating systems and some programming. The head of the diagnostic software team left Calma to go to a startup called Elxsi. He told them I had already worked for him as a programmer and got me a job there. In my 7 years at Elxsi I worked with the most amazing engineers I have ever worked with and learned about hardware and software from them and their code. From there I was able to continue a career as a Software Engineer to this day.