A Programmer No More
At the start of the year, I changed jobs1. I’m still working for Cadence, I’m still working on Encounter, I’m still going the same office and seeing the same faces. However, I’m no longer a Member of Consulting Staff, but a Principal Product Engineer. I’d be the first to admit that neither title is particularly informative, but basically I’ve gone from writing code to writing specifications. In other words, for the first time in my professional life, I’m no longer a programmer.
Stating things in such stark terms is dramatic but a little misleading. Firstly, while I’m no longer writing C++ that gets turned into the shipping product, there is still a (small) Tcl coding aspect to my new role. In addition, I’ve written a lot of code over the last eight years, and I’ll be helping out the new maintainers of that code. These are peripheral aspects, though - the core of my new job is spent in Word, not Emacs.
At the moment, I don’t know if this will be a permanent change. Programming is something I love, and I’ve enjoyed doing it for a living. However, I’ve also been doing it for a long time, and an opportunity came up to try something new. Perhaps it will prove to be something I enjoy every bit as much; at the very least, it will give me a fresh perspective on the business I’m in, and allow me to pick up and improve some useful skills. Either way, I’m going to give it a good shot.
One final note is that, while I’m no longer writing code at work, and the title of this post notwithstanding, I still consider myself a programmer. Programming is a powerful tool I have at my fingertips, but more than that it’s a way of thinking, an approach to solving problems. I’ve been doing it since I was six, I’ve studied and taught it at one of the best university departments in the world, and it’s put food on the table for more than a decade. At this point I feel confident in saying that, whatever else I become, I’ll be a programmer forever.