Hiring a Developer Part 1

In the next couple of weeks we will be posting positions for two new developers to work with myself. As a service to the community I am going to post the process I am going through on my blog so everyone can see what I did when hiring a new developer that would perhaps give them a better idea what works and what does not. Down to business!

My Initial concerns. The area I live in is pretty scarce on tech jobs. The school district I work at is the largest employer in the county and the largest provider of tech oriented jobs so pickings are very slim. My boss and I already typed up a brief description of what type of developer we are looking for that will be posted on Dice and Monster. These will be posted on those websites before we formally place a job posting on our website. I didn’t expect to find anyone that is familiar with OSS tooling or many of the other technologies I work with but I figured if I could get someone that at least knows C#, SQL and a couple of other things, that I could teach them the rest without too much effort.

Everytime we post for an open position we get ALOT of people apply for positions that are not even qualified. It seems like many people just throw everything up there to see what sticks so I am not looking forward to the interview process. I am not going to interview people that have no OOP experience because everyone and their mother has created a website for their family that I do not care about =) Bottom line is, there will be alot of applicants to weed out.

The next part that I have thought about is code tests. I have read in alot of places that people have the interviewee do a simple fizz buzz problem or something along those lines. I’m not sure if this is a good indicator of their work but it would at least tell me if they have problem solving skills which IMO every programmer already has, if they don’t then this test will clearly display this.

These are my initial thoughts on the process. When we get closer I am sure I will have some interesting posts on what works and what doesn’t. If anyone has anything to add please comment!

About Sean Chambers

I am a Senior software developer from Palm Coast, Florida. An advocate of Domain Driven Design, Behavior Driven Development, creator of FluentMigrator and community activist. I am married to my beautiful wife Erin and am the proud father of two wonderful children. I currently reside at ACI, a local insurance industry/mortgage software company that excels in creating solutions using Agile methodologies.
This entry was posted in general. Bookmark the permalink. Follow any comments here with the RSS feed for this post.
  • Over time I’ve moved away from technology-oriented question to more people and motivation questions.

    For instance, if they’ve never written an automated test, then they won’t be considered for a senior position.

    If they are motivated and have an appetite for learning, then it’s a big plus. Where a developer is isn’t as important as where a developer can _be_ 6 months from now.

    I always ask what the candidate is reading. That will give me a good sense about the motivation. In this day and age, podcast listening counts as reading because the important thing is continuous learning.

  • Good insights Jeffrey. Thank you!

    What is another indicator of a motivated developer?

    I was thinking of asking if they have written any code project articles, if they have a blog or who’s blogs they read. Also, if they are involved in any open source projects. It may be wishful thinking to find a developer that meets all of the above but is that too much to ask?

  • Considering what you have outlined here it may be asking a little to much for.

    ‘Focus on someone that can be mentored. As more of the soft skilled questioned to gauge how they would approach a problem and how they would fix. Would they be humble in their approach, would they seek your guidance etc. Also consider looking for Java experience as well. They can be easily coached to using C#.

    Here are some soft categories for you to consider:

    Team Player
    -helping and receiving help
    -following plans and creating plans
    -sharing information
    -learning and teaching
    -giving and receiving constructive criticism
    -negotiating differences
    -appreciating and enjoying other’s contributions

    Self Discipline
    -Accepting of individual accountability for performance results
    -Confronting reality through rigorous data collection and analytical thinking
    -Engaging in intense interaction, debate, discussions, and decision making
    -Willingness to work within the agreed-upon self-organizing framework

    Hope this helps.

  • Based on my recent interviews (last one was couple days ago), it seems finding folks that are investing time in learning/growing by reading books/blogs/podcasts/etc. is pretty rare. I too will usually shy away from technology-specific questions. I focus more on core OO principles, automated testing and I always throw in a “fun” question at the end (who are your favorite bloggers?). The usual responses I get are that they’ve never even heard of the SOLID principles, they’ve never done automated testing and they don’t read books/blogs too much.

    LOL, sorry, I know that doesn’t sound encouraging. But I think what Jeffery and Joe have said are important. Especially the willingness to grow as a developer without bringing excess baggage from their past.

  • Thanks for the comments guys! This is a great help.

    I guess I was a little too optimistic and I had wishful thinking. I thought there was alot of us out there =)

    I will post more as the process beings. Thanks again!

  • Michael

    Hi Sean.
    I see that you are based in Florida. I live out here on the West Coast. I am a developer. I work in an AS400 based system developing ERP app for 7 years. I was disheartened when I read, “I am not going to interview people that have no OOP experience” About two years ago, I went back to school to learn ASP.NET I want to move away from this dying technology. I have spent a lot of my free time trying to ramp up my OO skills. I went thru Scott Mitchell’s excellent data access tutorials on the asp.net site. I than set out to learn data access using custom objects. I ran into Subsonic and NHibernate. I have a decent understanding about n-tier architecture. I spend countless hours going thru blogs of people like yourself in the industry to learn a trick or two. Every often I run into code demo that talks about HttpContext INotifyPropertyChanged, and such and I get discouraged. I have a good understanding of C#, good grasp on OO principles, decent understanding of subsonic, just getting to play around with NHibernate. I need some advice from all you nice folks. I have basic knowledge about the event driven architecture that is ASP.NET. Basic understanding about databinding. Do you think I have enough to get serious consideration? I am willing to scale back and take a Entry level position, just to get my foot in the door. Please advice as to what areas should I concentrate on as I continue learning.
    Thank you

  • Michael,

    I would like to speak with you over e-mail at first if that sounds good with you. but alas! you didn’t put in your e-mail address on the reply for the comment. Please contact me at dkode8@gmail.com.

    I am in north east florida, north of daytona beach. Don’t know how far that is for you but perhaps it’s within distance of you.

    Look forward to hearing from you.

  • Michael

    I come from the procedural world. i want to move away from that to the asp.net. i spent quite a bit of time to learn data access in the asp.net world. than i tried out out the UI part. I am playing around with Yahoo UI Library and can’t get a simple calendar control to work!!! been frustrating to say the least! i dont give up. i will one day get to where rob conery, bill mcaferty, scott guthrie, i could keep goin, there are many bright minds in this industry. I WILL GET THERE ONE DAY

  • Michael

    made a typo. I meant I am going to keep going. I will persevere. I will know more about asp.net than your average joe. even if i get hired to work in an asp.net environment, i am going to keep learning to the point where i know more than anyone out there. anyone out there!!!!