Skip to content

In which my 31 year-old self tells my 17 year-old self he was wrong.

by Nicholas Barnard on September 7th, 2012

I’ve been in the job market lately. I feel as if I’m in this odd no mans land of not enough experience for the positions I’d like and I’m overqualified for the positions that I’d kind of like and am qualified for.

I’ve also been virtually tripping over listings for software developers, which is, well a little frustrating.


I was having a discussion with some friends last week, when I and another friend mentioned we were both tripping over listings for software developers. A third friend piped up and mentioned: Well do you want to learn? Its not hard.

The funny thing is, I know how to program. I’m not half bad at it, although I’m not half good at it either. I attribute this in part to the fact that I work on a project, brush up on the language and skills and once I’m done with that project I want to do something else with my free time and don’t touch programming for four or six months. This isn’t a formula for getting good at anything. I’ve gotten to be a much better handbell quartet musician because my quartet, The Resonance Ringers, rehearses twice a week, every week.


When I was a junior and senior in upper school many people assumed that I’d go to school for Computer Engineering, instead I threw everyone a curveball and went to school for Theatre. In college, I picked up a Marketing minor (useful for working at a theatre company.) and a Philosophy minor (which just interested me.) Then after three years of college, I realized this wasn’t what I wanted to do, and stopped going to school for a year.

The funny thing is I never stopped programming. I had been writing code on and off since I started teaching myself Applesoft BASIC when I was 7. I picked up some scripting languages along the way: DOS batch files, Unix shell scripting, HTML, Apache’s SSI language. I also took classes two years from the University of Michigan which were delivered as summer camp programs. During these I essentially completed the Introduction to Programming course and I also spent some time learning Artificial Intelligence concepts.


So when I went back to school the obvious thing would’ve been to jump to Computer Engineering, since I had been writing code of one form or the other for quite sometime. However, I went to a college information session which included a pitch for a B.A. in Organizational Leadership, which was something that I had demonstrated an ability for and in addition this was a “completer” degree, which would dovetail nicely with all of my theatre and philosophy classwork.

I slogged though and finished the Organizational Leadership degree. During this time, I had moved from taking classes and enjoying learning, to taking classes and getting through it because I wanted a f*cking degree.


From the my time in school and through all my professional experience, I gravitated toward the technical side of things. In my first stint in college, I was the webmaster for Lambda Union and instead of just writing HTML, there was a whole Apache SSI driven template system in place. In my first professional position at Chiquita, I became the guy on the business side of things who took care of and interfaced with the technical side of the business. I excelled at Speakeasy supporting internet connectivity then the vagaries of VoIP. I again became the business guy on interfacing with the technical side.

I also recognized that I had a skill in working on projects and I decided to get formal training in that, and I earned a Certificate in Project Management from the University of Washington.

While I consider the certificate in Project Management useful, making the jump to actually being a Project Manager is harder than I thought, as there doesn’t appear to be much call for an entry level Project Manager.


Before jumping into examining the steps that I’ll need to take to seek employment as a software developer, its worth examining why I didn’t make that choice when I was 17:

  • I saw software engineering as a solitary profession, and I wanted the interactions that come with theatre.
  • I hated debugging. I’d rather have a cavity filled than debug software. (A root canal is apparently relatively painless.)
  • I saw theatre as much faster at being able to see what you’re doing in comparison to software engineering which a product would only be released every other year or even more infrequently.
  • My health, especially my mental health, wasn’t very good during my late teen years and even for much of my twenties. This is really relevant, because depression significantly impeded my cognitive abilities. Depression has many aspects to it, but it clouded my thoughts significantly.

I now have the following views and perspectives:

  • Having worked with software developers, I know that they actually interact with other people during their work day. I’ve also come to recognize that time working alone is good for me. (My Myers-Briggs type is INTP and I’m a pretty strongly expressed introvert, spending time alone is good for me.) I’ve also found other venues for my artistic expression, such as my mild handbell obsession.
  • I’ve significantly adjusted my programming style, to work on small chunks of code and test frequently, which makes debugging much easier. Also, I think programming tools have a long way in 14 years.
  • Agile Software Development has emerged. Instead of delivering one big monolithic program, developers work in sprints where they release some functionality every two to six weeks.
  • I’ve spent a good amount of time improving my health, and its quite a bit better. I’ve also developed a phenomenal understanding of what I need to do to take care of myself, and keep my physical and mental health high.

The reasons I had for going into theatre at seventeen instead of computer engineering are no longer applicable.


Despite telling my seventeen year-old self off, I’m not ready to make the leap to software development just yet. I need more information to ensure that I’m not falling victim to the fallacy of the grass being greener in software development land. I need to develop a fuller understand what I’m trying to get into. Specifically, I’m exploring the following areas:

  1. What is the work life of a software developer? I realize this varies by project type and employer, but I’m attempting to understand the different varieties of experiences.
  2. Is making this transition actually practical? I’ve run across people who were never formally trained as software developers who work in the field, but I’m trying to identify how much of an exception they are.
  3. What is needed to make the transition? I’m not expecting to just go out and apply for a software development position and get one without training in some way, but I also don’t see spending four years getting a Computer Engineering Degree as feasible.
  4. What would employers be looking for? This is question three. from a slightly different perspective, but is also useful to address.

Luckily, I live in Seattle which has an abundance of software developers, and I know a fair number of folks who are software developers, so this should be doable to explore.

From → Uncategorized