Funny how so few people get it. This blogger does. I saw the link on CNET. I’ve pasted it verbatum, throwing in notes in between. I’ve worked a number of places, and have never seen all 10 in the same place. In fact I’ve seen very few in any one place.
If management had any clue at all, most companies could really conqour their markets. Unfortunately they don’t get it, and in the end, so many vanish into history, their geeks moving on to other companies, hoping they’ll be treated better the next time.
1. Geeks are curious. Let them feed their desire to learn things
I don’t know how much emphasis I can place on this point. You can take the ultimate geek…give them a rockin’ compensation package…and give them “rubber-stamped” projects (same tasks over and over) for two years and they’ll probably quit anyway. This point is based on the notion that if a geek feels his ability to gain knowledge is hindered he’ll try to find it somewhere else. Let them satisfy their curiosities with the task of picking up the latest technologies and applying them as they see fit. (Even if it’s just for a prototype.)
Google kinda gets this. the whole 20% of your week concept. Even without going to the google extreme, it’s possible to feed geek curiosity, while keeping us on task the rest of the time. The whole "Keep your head down, and work" mentality or culture or whatever you want to call it, only breeds dissent, and eventually (yes eventually) the geeks flee.
2. Geeks like to be self-sustaining. Let them figure things out on their own.
I haven’t met a true geek yet that wants you to hold their hand through every step of an implementation. In fact I’ve seen quite the opposite. They want to do things their way. If you suggest something, odds are the solution is wrong in their mind because it’s not what they would have come up with first. There’s many ways to complete a task in the technical arena, why cram your solution down their throats? Don’t hinder their creativity, just let them figure it out. The exception to this is probably in design. You obviously have to define your interfaces between components and have your requirements for the implementation. Let the details get figured out by whoever’s doing the dirty work. You can optimize things later if they aren’t up to par.
3. Geeks are creative even if they don’t know it. Give them a chance.
One thing I’ve seen is that most geeks don’t see themselves as very creative. Give them the task of creating a GUI tool of some sort and they’ll butcher it up and say “get someone with art talent on the job; I just know how to make it work”. Now this may be true as far as what’s appealing to the eye, but geeks have creativity inside them somewhere.
When you give them a requirement for a component that’s just out of reach with the normal cookie-cutter solutions, who’s jumping at the chance to dig on the web for solutions that could work? Who’s rattling off a dozen ideas for things to try that might work with the newfound constraints? That’s right, it’s management. (Just kidding, though everyone has their moment…who knows? Some managers are geeks too.)
Even if none of the solutions the geeks come up with will work, it’s a vast pool of creative ideas to feed from. Though they see themselves as equation-solvers with little creativity, I see it as opportunity. Let them apply their creativity. They love to be in the brainstorm process instead of pushed to the wayside as a later-used resource.
Never shut out the geeks. I make plain white user interfaces, a la Google, but I still know what I like in UI design and user experience. I may not be able to make a pretty button, but I can help with the user experience.
4. Geeks need tools, good ones. Give them more than they need.
I’ve seen way too many people get frustrated over their hardware’s inability to keep up with them. There’s nothing worse than having a machine that you have to wait on. Bill Gates based his entire company idea on the fact that hardware was going to be unlimited and it allowed him to grow an empire. Had the PC not been able to gain ground as fast as it did in the marketplace Microsoft may have had a different story.
With geeks it’s not much different. Give them unlimited hardware (hell, just give them just a little more than they think they need) and their productivity and creativity will definitely increase. Best of all, it’ll motivate them. Geeks can’t wait to see what they can do with the ultimate environment. Give a geek the latest-released workstation with maxed hardware and you’ll most likely get a little more than you bargained for from them just because they’re motivated enough to push the system to its limits.
I’ve been in both environments. My last "corporate" job knew that we needed the best tools. I had dual monitors, a fast laptop, a good desktop, the right software. It was nice and I was never once hindered by my workstation. The last client I worked with on the other hand, was the opposite. Every workstation is either a cobbled together desktop, or a personal laptop. I think there was only one or two LSDs in the developer area, and almost never two monitors on a desk. If there were two, they were 15 and 17 inch CRTs. Great place to work, and really great people, but the tools are limited. I know money doesn’t grow on trees, but you have to give to get.
5. Private, yet collaborative. Geeks need to be left alone, but not too alone.
I’m really on the fence with this one depending on the project. I’ve seen the case for both putting geeks in offices with doors, and I’ve seen the case for putting everyone in a big non-walled room with the extreme environment at its best. Personally, I like a combination of both. Geeks want to be left alone when they know what their assignment is. Give geeks a problem to solve, and first thing they’ll want to do is run off and come back with something that fits.
Isolation is great for getting things done when you know what’s there, but collaboration is ideal for environments where people can feed off of each other. I think geeks are motivated by the idea of a collaborative environment with their team where they can retreat to a hole-in-the-wall somewhere and not be disturbed while they get into “the zone” and crunch out their tasks.
This is hard for micromanagers. I’ve had managers that were nicely hands off, and managers that liked to keep an eye on me all the time. The hands off manager was one of my favorites, she knew the team knew what we were doing, and let us go to it. Her replacement was the opposite, he didn’t know the technology, he didn’t know us, or seem to care to. he was always interrupting our flow, it sucked.
6. Free stuff. T-shirts, food, desktop widgets, whatever.
It amazes me to no end how free stuff can motivate someone. Geeks could care less about the free company logo pens you hand out. I’m talking real free stuff here. I was on a project once where for two solid months dinner was ordered every night for anyone working late to meet the deadline. I couldn’t believe how many people stayed just because it was easy to do it. Not only that, they were happy to do it!
The power of free things is that it’s generally more motivating when it’s a surprise. If everyone expects it all the time, it’s not really as cool. In my opinion, even if a geek expects free food every Friday afternoon it’s not going to motivate him any less than if you do it every random(6) Fridays.
I’ve seen geeks go out of their way doing some pretty silly things just to get free t-shirts at conferences. The vendors caught onto something right away and have been milking it for everything it’s worth. They know geeks love free stuff, even if it’s crap.
Here that management? A foam chair to rest our mobile phones in, with the company logo, those suck. Free dinner, lunch, those’re good. Free shirts (no company logo, remember that!!!) are nice too. Look at Apple, Throw a shirt with a slogan to each of us, we’ll work like crazy.
This particular point amuses me somewhat actually. I’ve never really met a true geek that didn’t love power. Not the kind of power that an executive has in a company. I’m talking about the power of knowing the inner workings of a complex system that the company benefits from. The power of being able to hop onto a server and manage to be in the top three frag-count players on every map…while everyone else just watches in amazement. The power of knowing that no matter what comes along as a surprise you can figure something out that will work no matter what.
More to the point, geeks like to control their lives. Most of them (well, us) are control freaks that like to do things their own way. Be it control over how to implement their component, design their circuit board, cross out mundane sections of documentation that make no sense except to the business user until it’s re-written, see where they’re headed after the current project…whatever. If a geek doesn’t feel in control, the anxiety will kick in and chip away until greener grass starts to grow on another company’s lawn. Lay out the plans, stick to the plans, and give a comfortable level of control to the geeks and their motivation will feed itself.
8. Geeks need recognition
Having a purpose plays a big role in geek motivation. If geeks don’t feel like they’re needed or appreciated, they’ll begin to wonder if they belong. If someone pulls off some completely unexpected progress by using their creative genius mind, by all means give them some public praise. Feed their desire to do more by giving them the reputation they deserve. The first couple times I was put in front of a VP that really liked what I’d done for their bottom line with my applications, I had such an adrenaline rush that I couldn’t wait to get out there and kick some more ass.
Some may claim to just do it for the general cause of figuring things out and being just another team member, but deep down inside it still has to feel great to know that others are motivated by your accomplishments. Taking credit for a project at a high level in front of management w/o praising the hands-on folks is never the way to go. Giving proper recognition to the true hands-on geeks that are doing most of the grunt-work really motivates them to do more.
Now, I don’t mean for everyone to get some picture in their mind of geeks lining up to see the last scene of Braveheart, but sometimes I just want to lean back and re-enact that scene in front of everyone I know. Hindering geeks’ ability to use the applications they want or being able to configure their machines they way they like is not the way to go. Give them the tools, but then motivate them by allowing them to really use them the way they can by giving them the free reign to set things up however they want. Companies try to hinder their employees so much by limiting access to things when it really just doesn’t matter. If the geek can’t get his job done with all the freedom given to him, then you don’t want that geek working for you anyway.
This probably lines up with the control point quite a bit, but I think it’s a bit separate in what’s being controlled. Keep the freedom for the geek as much as possible, and they’ll hesitate to look elsewhere since most places don’t do this.
I worked at a place that had no concept of freedom for geeks. I understand the need to keep virii out, and the like, but our hardware/software department was more or less Nazi Germany. The developers weren’t allowed to have the latest Photoshop, because "it’s not the corporate standard." yet when our machines that had corporate standard apps broke, more often than not we heard, "we don’t support your machines because you install so many apps we don’t support or understand."
So we’re unsupported, yet restricted in our use of tools. We wanted the latest Dreamweaver… A department other than our own was responsible for approving it, and spend months making us jump through hoops to justify our need. When we got the software it came out of our budget.
10. Compensation – Saved this for last, but geeks gotta live too
This one goes without saying in my opinion. It’s an implied motivator. Not everyone is as motivated by money as managers think, but most of them are from what I’ve seen. All the other stuff definitely adds up, but compensation is generally the first and primary motivator for most. This applies less for people starting out I think. Geeks just at the beginning of their career are more interested in what they can learn and create. Later on it’s more about compensation and perks. This point could probably be an entire post in itself, so maybe I’ll save that for later. For now, just know that proper compensation and benefits are a very key to motivating geeks.
I’m reading a book about Steve Jobs and his making the original Macintosh engineers work for (even at the time) peanuts compared to other company engineers, let a lone the rest of the industry. It amazes me how stingy companies are with the salaries of those who produce applications that usually (when all goes well) add to the bottom line, via time and cost savings.
I’ve seen directors get huge salaries and incredible bonuses for a completed project, while I got my salary and a thank you card, FOR THE SAME PROJECT. I wrote code that completed the project, she came up with the idea to publicly shame whichever department was holding up the latest build.
Compensation is important, geeks like to own homes too. we (some of us) like nice cars. We want new laptops, and iPods and nice clothes (especially if we have to interview at someplace that has more points than the current one). Yeah we also work for the solution to the problem, we work to tinker, we work to create, but none of that buys hamburgers, or tofu, or whatever else we eat.