Previously I asked if you needed developers.
We'll now cover how to lay a foundation for hiring those developers.
Note: This guide is meant for hiring developers, but most of the advice
is useful for hiring any position. Learning your employees and treating
them properly is just a damned good idea.
Make A Plan
Read through this and all my other advice.
Get a plan together that your organization can pull off.
Get Your Mind Right
Have you ever been talking to your mechanic and realized that he's asking you
very specific questions all you can do is make noises at him? Talking to a specialist in any field often works this way.
We'll stick with a simple explanation for developers: Developers
think in a different language.
Learning the innards of computers and the magic that drives them makes
fundamental changes in your brain. Developers tend to ask hard or obtuse questions
about the tasks you give them. You need to prepare for this. It's no different
than talking to a doctor or mechanic.
Simple advice: Spend extra time with your developers. Learn how they think,
talk and act. As with any relationship it pays to invest in it. Expect that
they will do the same for you. Teach your developers about your business so
that they can help you with better solutions.
Space
I have scaled advice for making space for developers. I will present the options
from best to worst. Choose the best you can manage:
Give every developer an office. Folks smarter than me have been saying this for years.
Let developers share offices. Be careful who you pair. Encourage open, honest communication and basic neighborly behavior.
Isolate developers. Give your developers quiet space to work so they can focus. Show me a noisy, distracting environment and I'll show you unproductive and unhappy developers.
Create cubicles with some privacy. High walls, sound dampening, etc.
Basic human decency: Enforce headphones, ban speakerphone, discourage phone calls.
I also highly encourage you create some common space for your developers to
meet, hack as a group or just to hang out in. Fill it with whiteboards, some
Nerf guns and some Red Bull. Use this space for everyone, not just your
developers. Encourage this space to be used for hallway meetings, impromptu
discussions or phone calls. This will keep your working area quiet.
Telecommuting
It's never been easier to telecommute. Combinations of Skype, IM, group chat (Basecamp, HipChat, Flowdock) and cloud-based systems mean that folks can work together from anywhere in the world.
That being said telecommuting has it's own problems. It's definitely not for everyone. Employees need a quiet, dedicated work space and a close attention to how they spend their time. If you can overcome these challenges then you open yourself to a huge number of talented developers and cost savings. I'm planning to write an entire article on telecommuting in the future.
Gear
Developers don't use computers the way normal people do. Imagine a race car
driver hopping into your car and taking it onto a track. The driver would
not have the equipment they need.
Developers need to perform tasks with their computers that are very intense.
They need powerful processors with lots of cores, lots of RAM and big hard
drives. They also need to install and fiddle with lots of software. Your
current purchasing and IT policies may not fit. They may also need to be
mobile. The best advice I can give is to give your developers a short list
of approved hardware and let them choose. Pick a powerful desktop and a
powerful laptop.
Big ass monitors. The biggest you can afford and as many as you can plug in.
This is pretty much universal.
Policies
A lot of your policies will depend on your business. Many organizations have
to worry about compliance with various regulations. You should already know
how this works, so I won't help. Start with this advice and prune it back: Give
your developers freedom. Teach your developers about the policies your
company or industry must adhere to. Developers want to know why they must
do things.
Developers can usually fix their own machines and they are little risk for
viruses or malware. They often need to install crazy software that requires
total access to their machines.
Conclusion
Don't stress getting everything in this list perfect. Getting even a few of
these criteria in place makes you very attractive to developers.
If you think all of this is crazy then I suggest you go back and determine
if you really need to hire developers.