Yesterday I came to a realization that explains my career dissatisfaction and gives me a goal I can use as a target to get back on track. To get explain the realization and the goal you’ll have to come with me on a journey through my past. For your safety while on attractions, please keep your hands, arms, and legs inside the vehicle at all times. Now sit back and enjoy the ride.
To begin I don’t have a college degree. I did attend a college for about a year and a half but I made some poor choices, the first being the school I attended, and was expelled during my second year. My declared major was Computer Science but at that time (1984-1985) we were being taught COBOL, FORTRAN and Pascal on a VAX-11/780 minicomputer. After getting expelled I enlisted in the Marine Corps to take advantage of the GI bill but was unable to return to a college. Without a degree or experience I didn’t have much luck getting programming jobs but I had enough knowledge to get started in operations. I figured if I worked on a computer I could pick up the skills and get some experience under my belt to become a computer programmer. I spent most of my free time reading K&R’s The C Programming Language and saved my pennies to buy a copy of the Aztec C compiler while earning a living by loading tapes into drives, replacing paper in printers, and generally running around a large data center refilling whatever needed to be refilled. It took about 10 years but in the end it worked and I landed my first job with the title “Computer Programmer.”
I wasn’t initially hired as a programmer, instead I was hired for technical support for a small company. At the height of the company I think we had 20 employees. The owner was the sole developer when I started but as the company grew he had less and less time for programming. I mentioned I knew how to program and after some conversations he challenged me with a problem. He asked me to write a compression algorithm (1)[more later] that used the absolute minimum of memory. I don’t remember how long it took for me to deliver the result but I do remember falling asleep at my keyboard at home more than once and dreaming in 80186 assembler. I delivered my project and we integrated it into the product. After that I was given more and more side projects until I worked full time writing an update to the product that worked on Windows 3.0. The work was interesting, challenging, and there was always a new problem to solve. Yet it was still a small company and there was nowhere to go and sadly the pay wasn’t great but with the experience on my resume I looked for the next step on my path.
The next job I was hired as a programmer from the start. The product was for financial traders and allowed them to view and analyze data from the stock markets, commodity markets, and included news and press releases in one integrated application. While there I had to develop charts displaying various financial data, implement domain specific compression algorithms, and write some low level networking code. I found it all very interesting and challenging but I was let go when the company was bought out and my position was eliminated. Now I had two jobs with the title Computer Programmer under my belt and while the lack of a degree was still an issue I made up for it by my experience and skills.
My next job involved writing a library of mathematical and data access routines. The company had developed their own scripting language that tax professionals used to develop tax forms. The library contained system calls that were used when the scripts were executed. I left this job because I had fallen in love with the Pacific Northwest and relocated to Portland, Oregon.
I don’t think moving to the PNW was a mistake but it has caused my career to take a turn and led me to where I am today. I used all my savings and ripped up my life when I relocated. I didn’t have friends or family in the area and it was sink or swim all the way. I was working in a contract-to-hire position and a month after I started the company let go all of their contractors. Being in a strange city without connections and without a cushion to weather employment breaks means I had to take any job I could get. I took a job as a developer working with a team that had been contracted to test a music rights library. When that contract ended I jumped around a bit as a consultant with different contracting firms. My resume started to look like a mash of tech support and testing jobs and the offers I had matched.
Fast forward to today and while I’m not working for a support team anymore the code I’m writing doesn’t involve any of the areas I found interesting. I’ve started reading blogs and books and realized that I really enjoyed reading about the Halton Sequence, Fibonacci Hashing, and Stepanov and McJones’ Elements of Programming…
I enjoy diving into the details of discreet mathematics and pushing bits around at low levels. I want to alter my course and find my way back to that kind of work. Taking a cue from an inspirational friend of mine I will be reading, writing, and (gasp!) speaking about these topics. Just like in the early days I’ll be spending my free time learning as much as I can and showing hiring managers that I have the skills they need to solve their problems.
That is what this blog will be about. Welcome!