Here are some of the things I like and don’t like to see in resumes.
Things I Like
- Startup experience - Software engineers who work in startups are on average more skilled than their counterparts in other industries.
- Good companies - Technology companies can be ranked based on the quality of their teams and technical challenges. I’ll take a candidate with a lesser role at a tier 1 company over a more expansive role in a tier 2 or 3.
- Hard problems - Great engineers solve hard problems. The harder and nastier the problem, the more I want to talk to them.
- Open source - Contributing to open source is indicative of someone with a passion for software and an interest in engaging in the tech community.
- Good schools - Even though I went to a state school in New York, I can’t help but to like to see MIT or CMU on a resume. But I’ll also confess I’ve had more luck with WPI than most other schools.
- Good GPAs - While a good GPA doesn’t always result in good engineers, it is definitely an indicator of strong intellect / analytics.
- Continuous learners - The best engineers are autodidactic, and have resumes that show they proactively seek out new technologies / knowledge.
- CS degree - While the most important things in software get learned after graduation, there is no replacement for the foundation of a CS degree. There are many things we can teach you after you join, but abstract data structures is not one of them.
- Personal projects - I love to read about candidate’s personal projects, especially when I can go to a website / GitHub repository.
- T-shape experience - As a general rule, startups look for t-shaped engineers for a simple reason: the technologies and challenges you need to solve today are almost certainly very different from the ones you will need to solve in the future.
Things I Don’t Like
- Big non-tech companies - Software engineers usually go into one of four directions after graduation: tech startups, established tech companies, consulting or corporate IT. The latter is almost never a fit.
- Big companies - In their prime, big technology companies have high talent densities (i.e. Google, early/mid-2000s). As their growth slows, the top engineers move on and are replaced by less talented players. The longer the stagnation, the lower the talent density. Beware of candidates from big companies.
- Job hopping - I hate to see resumes with a series of 6-18 month stints. At a minimum it shows bad judgment, at a maximum, it shows a lack of focus / commitment.
- Consultants - Remember what I said about big non-tech companies? Same goes for consultants. The best software talent is in practitioners, not consultants.
- Old technologies - There was a time and place for technologies like PHP, Perl, and Swing. That time is not 2013, and that place is not a high tech startup.
- Stuck in a technology rut - If you’ve been working with Java continuously for 10+ years, there is a good chance you are in a rut. Saying J2EE, Hibernate, JBoss in 2013 can sound like nails scratching a chalkboard.
- Inflated titles - I don’t care about titles, and prefer to work with people who share my sentiment. But I especially don’t like to see misleading titles (e.g. VP of engineering of a two person startup).
- False claims - It’s okay to not be an expert at every technology with which you have worked. It’s not okay though to try to claim expertise / experience where it does not exist.
One of the advantages of working in a small market like Boston is that over time, you often know someone who worked with just about any candidate that comes across your desk. Personal references are always stronger than any words on a resume. But for those of you out of my network, I'll continue to profile. ;)