Hiring Good People is Tough!

I’m going to caveat this entry with a warning that it’s both nerdy and technical. It’s about hiring good programmers, but if you read between the lines there are a number of important points about hiring good people, no matter what industry you are in. Replace “programming” with another field and this will be a worthwhile read for you.

So, with that out of the way, hiring technical people is HARD. There are lots of people who consider themselves developers or programmers, but there are very few that are actually good. In most cases, the ones who’ll go out of their way and tell you they are great tend to be the worst of the bunch. Seeing as hiring and retaining talented developers is a huge part of my job, my colleagues and I have come up with a few good techniques.

First, I’m going to offer up a great list provided by the Daniel over on inter-sections.net. These points all rang true to me when I read them so make sure you jump over there to check out all the details.

Positive indicators:

  • Passionate about technology
  • Programs as a hobby
  • Will talk your ear off on a technical subject if encouraged
  • Significant (and often numerous) personal side-projects over the years
  • Learns new technologies on his/her own
  • Opinionated about which technologies are better for various usages
  • Very uncomfortable about the idea of working with a technology he doesn’t believe to be “right”
  • Clearly smart, can have great conversations on a variety of topics
  • Started programming long before university/work
  • Has some hidden “icebergs”, large personal projects under the CV radar
  • Knowledge of a large variety of unrelated technologies (may not be on CV)

Negative indicators:

  • Programming is a day job
  • Don’t really want to “talk shop”, even when encouraged to
  • Learns new technologies in company-sponsored courses
  • Happy to work with whatever technology you’ve picked, “all technologies are good”
  • Doesn’t seem too smart
  • Started programming at university
  • All programming experience is on the CV
  • Focused mainly on one or two technology stacks (e.g. everything to do with developing a java application), with no experience outside of it

Beyond those great bits, I’ve found that resumes are pretty much useless when looking for a good developer. I always ask to see code samples and I make sure I explain that the code sample is being used as part of the evaluation. Good developers will send over well chosen samples that highlight their best work, as well as give you a sense of their coding style and abilities. Bad developers will just send over some random code and not think twice about making a good impression. My team and I will review the code samples and the vast majority of the time we know instantly if we want to pursue a candidate.

Outside of pure technical skill, culture and personality are big points for me. It’s critical to find people who fit the culture of your organization. In my case, it’s all about being a team player and integrating into a really tightly knit high performance team. During the interview this means I’m always on the lookout for people who are asking good team related questions. If a candidate is asking too many “I” focused questions they tend to come off as a “lone gun man” who just won’t work out in my organization.

Never underestimate cultural fit. It’s always easier to take someone with good foundational skills/cultural fit and train them to your specific needs, rather than try and squeeze in someone who might have amazing skills but runs counter to your organizations culture.

At the end of the day, hiring the right people is tough. Hopefully the points outlined above will make the task a little easier. If anyone out there reading this post has anymore tips, tricks, or feedback make sure you post a comment.

Happy hiring…

Neglect is a Dirty Word

First day back at work after the holiday season and I realize I’ve been slacking in terms of fresh content for DGM. This looming sense of slacker-dom has inspired me though. By neglecting my blog I was reminded about the golden rule of not neglecting your employees. It’s one of the worst things you can do. We all get pulled in a number of directions on a daily basis, but we have to remember that without our team, many of us couldn’t do the jobs we do.

Like most things, it’s all pretty logical:

Keep Them In The Loop – You don’t need to tell them every gruesome detail of every single situation, but one of the best things you can do is making it a habit to keep your team in the loop around timely events. Not only does it give people a sense of inclusion, but it’s an easy way to open the door to questions, clarification, and gives the eager ones in the group a chance to step up and be noticed if it’s a topic they’re passionate about.

Get Good At HR – There’s nothing worse than managers who are bad at following through on HR related issues. HR issues are the kind of thing that can cause mass amounts of stress, turmoil and paranoia for many employees. You don’t need to be an HR guru to be good at this stuff. As simple as it sounds, just going over and making friends with your HR counterparts makes this all a lot easier.

Communicate - Whatever you do, do your best to not be a black hole when it comes to communicating with your team members. You should make it a habit to try and manage by “walking the shop floor” and interacting with as many people as you can on any given day. Consider this your daily recon mission to gather new information and add some context to the daily activities. You’d be surprised how much useful information you can garner just by being friendly and taking a second to chat.

Follow Through – If you commit to trying to “make something happen” you better be ready to put your money where your mouth is. Nothing makes an employee feel more neglected than a manager who promises to do something and never finds the time to actually do it. On the flip side, if you do actually try and follow through, but hit a roadblock, make sure you refer back the first points above and keep your employees in the loop regarding the roadblock. An active and attentive management style tends to go a long way for many people.

At the end of the day your job as a Damn Good Manager is to facilitate awesomeness from your team and you’ll never do a truly good job of that if you have a habit of neglecting people.

Don’t Skip Out On That Vacation

Over the years, I’ve found that people don’t take enough vacation. It’s been estimated that American’s leave an average of 4 vacation days un-used per year. When you consider that workplace stress and pressure is at an all time high and only creeping higher, this is a worrisome problem. Exhausted and burned out resources are not ideal for long term productivity.

As a manager it’s important to be on the lookout for folks in need of a vacation. Being able to sense when your top performers need a few days out of the office can be an invaluable skill. Despite the short term perception of lost productivity, the long term benefits are huge. It can be as simple as bookending a weekend with a couple vacation days to have a magical effect on many people.

The benefits of vacation are pretty obvious…

Stress reduction
Creativity booster
Morale reviver
Mental and physical replenishment
Personal satisfaction and happiness

With benefits like that, who wouldn’t want to take a vacation?

When thinking about vacation and making it a part of your team’s working environment, it’s important to remember that taking vacation and focusing on remaining fresh and motivated is a big part of being a damn good manager. If you are it can be very stressful and pressure filled. Don’t make the mistake of burying yourself unnecessarily. A big part of being a damn good manager is knowing when to take a break so you can remain on game.