In many ways a resume is a terrible way to show one’s experience and value to a particular role. I thought it would be a good idea to include a question and answer section. This will grow as I think of more questions to add.
Why are you looking for a new job?
Have you ever hired anyone? If so, what do you look for in a candidate?
Yes. I’ve really only ever interviewed people for technical roles (programmers and/or QA). In general I like to know that the person being interviewed is experienced in a way that he/she can get the job done. Having been on both sides of the interview table, I’ve always felt strongly that very specific questions about software are of little value. For example, when someone hands me a snippet of code and asks me to “find the problem,” it does little to demonstrate whether or not I will be a good programmer. I want to know that the candidate is intelligent and resourceful. Any software engineer who entered into the field because he/she simply loves programming and learning will excel. Any programmer who creates software for fun will likely be a great candidate.
What programming language do you prefer?
I prefer whatever is best for the job (although I prefer working with Java/Linux/Mac). Often recruiters want to know exactly what languages a software engineer has worked with and how many years of experience in each (and too often I have heard the dreaded question: “back-end or front end?” What does that even mean?). This is really a question that is of little value.
What matters most is whether or not a software developer is talented and interested enough to apply his or her knowledge to any project using any tools available. Moreover, an interested software engineer is a good software engineer. It is important that the technical team members be prepared to utilize their knowledge to help a project (not simply write code). This means that good engineers are aware of and interested in new developments in the world of software.
What do you look for in a position?
A challenge and a learning opportunity. If my resume indicates that I have 100% of the skills needed to do a job, there is a good chance I will find that job to be a bore. I have the fortune of being in a career which can be as stressful as any, but is more often fun. Software engineering is often like putting together a puzzle, and it isn’t very much fun to build the same puzzle multiple times. Being surrounded by really good/smart people is always beneficial.
What is your ideal position?
Although I have seldom heard it used, I really like the job title “Chief Software Architect.” This title implies a high-level lead role with a fair amount of hands-on duties. While I have the desire to continue leading software plans and projects, I wish to stay close to design and development. A Chief Software Architect is someone who must keep up with changing technology and be able to guide software activities for a company. This role would require that I maintain a diverse and current knowledge of software technologies while at the same time continuing to grow as a leader. For the same reasons, a Director of Engineering (software) role is appealing. Designing and developing software is fun–so much so that we (software engineers) sometimes fall in love with the design aspect while losing sight of the end goal (get it done!). Its important to be a pragmatic programmer.
What do you do to keep current?
Read. Learn from smart people. Read. Tinker. Read. Repeat. Listen to podcasts. Read. Introduce new and useful technologies at work. Read. Repeat.
Are you willing to relocate?
No. Raleigh, North Carolina is the best place in the world to live. I may consider moving closer to the ocean, but for now, Raleigh is home.
What do you do for fun?
I have two daughters who keep me busy. I love to run and I try to run 6-10 miles daily. If there is any time left I like to mess around with photography, play guitar, write, mess around with Arduino projects and read.