Finding Top Developers: What does it take?
Posted by Dave Bouwman | Posted in .NET, careers | Posted on 10-09-2006
3
While catching up on my blog reading, I ran across a series of articles by Joel Spolsky that talk about
These are very timely articles, as we are about to open
two “GIS Software Engineer” positions (I’ll post more details when the positions are formally
“open”), and it’s always been a challenge to locate top talent.
Joel argues (and I’d tend to agree) that “great developers”, the cream of the crop, just are not out in the marketplace. This is because their employers recognize this, and do what it takes to make sure they don’t even think about looking for another job.
On top of this, the market is pretty tight these days. A quick search for “software engineer” at
ESRI’s careers site lists 59 openings.
Just here in Fort Collins, Miner & Miner have at least one developer position
open, Riverside Technologies is looking for an ArcIMS developer,
and I’m sure that the various other staffing agencies which service the USDA are also
looking for people. Add to this the high-growth rate
of the geospatial industry, and it’s clearly not an easy task to find
experienced geospatial developers.
Which leads to the question of how to get
top talent?
In his “Field
Guide to Developers” article, Joel lists a number of things he believes
developers care about at a job:
- Private Offices
- Good Chairs
- Great Computers
- Being treated well within the company
- Not being micro-managed
- Lack of useless office politics
- Working on cool projects with cool technology
At the end of his
list, he states that compensation - as long as it’s on par with
industry standards - is less important than these other factors. Here’s the actual quote - which I think
is brilliant.
That doesnt mean you can underpay people, because they do care
about justice, and they will get infuriated if they find out that different
people are getting different salaries for the same work, or that everyone in
your shop is making 20% less than an otherwise identical shop down the road, and
suddenly money will be a big issue. You do have to pay competitively, but all
said, of all the things that programmers look at in deciding where to work, as
long as the salaries are basically fair, they will be surprisingly low on their
list of considerations, and offering high salaries is a surprisingly ineffective
tool in overcoming problems like the fact that programmers get 15″ monitors and
salespeople yell at them all the time and the job involves making nuclear
weapons out of baby seals
So assuming reasonable pay - what else
would draw you to an organization?
- Opportunity to use different tools/technologies (i.e ArcGIS Server 9.2)?
- A Herman Miller Aeron chair?
- Working with people who are passionate about what they are doing?
- Stock options?
- Working on a large scale, multi-user system?
- Opporunity to hone / expand your skill set?
- Quad-screen, 2x dual-core system with 4GB or RAM?
- A chance to make a difference?
- Location?
- Opportunities for career advancement?
Other ideas? What brought you to your current job? What keeps you there?


Well, it’s simple for me. I want to work for an organization that is constantly pushing the boundaries. I want the opportunity to work with new technologies and top-of-the-line hardware. I want my employer to encourage creativity and innovation. And, yes, I want to feel like I am working for a larger cause and want to be a part of a team that also believes in the "mission".
For me, I’ll list things in order.
#1) Location
#2) Opportunities to learn and be challenged
#3) Carreer Advancement
#4) Not being treated as a peon (I am a good programmer, and know it. I’m not arrogant, but I want to be treated like I know what I’m doing, like I spent the time to learn it.)
— not having at least 3 of the 4 above immediately makes me pass on the job.
The top 4 will get me to join.
The following will help me to stay (in addition to the above, of course)
#1) A state-of-the-art computer that I can do what I need to/want to on, preferably with 2 monitors.
#2) Unrestricted internet access (I’ll probably quit real quickly if I don’t have this.)
#3) Stock options
#4) Don’t micromanage me, and don’t overarchitect what I’m working on (or better, architect it WITH me instead of around me)
#5) Flexibility of hours and ergonomics.
Location, location, location. The reason ESRI has trouble filling positions (other than their low salaries) is Redlands. I turned down an in person interview (after 7 phone interviews) with them after reading up on the city. There’s no way I’ll raise my daughter there. ESRI is very aware of this - HR warned me during the interviews that Redlands wasn’t for everybody, asthmatics may not like the air quality, the weather’s unpleasant, etc.