Many times hiring more developers is flat out unequivocally the wrong answer. Yes, you’re slammed and your team is beyond stressed, but can we please take a moment to evaluate before throwing another dead body on the pile? Humans are complex creatures and require a lot of cuddling, nurturing, and hand holding. This is business people and I got no time for nonsense, so let’s see how many dead bodies we can save.
Evaluate the cause
If you are looking for a developer with a fire hose or a big axe, then it’s time for truth. What is the root cause for this state in which you find yourself?
Please select all that apply:
a. The business is pulling my team away from this year’s beautifully planned strategic initiative
b. My tenured staff have created a hairy ball of twine that needs unrevealing
c. New technology seemed like a good idea at the time
d. Kingdom builders have taken over my reign and I no longer have control
e. I have no growth plan and therefore need more people
f. This place is blowing up and I have no clue
g. All of the above
Once you’ve identified the cause you must meet it head on. Tell the truth. If the business is getting in the way tell them. If your team is slacking deal with the culprit(s). If your processes are suspect then get help, but please do yourself AND the person you are about to throw into the 7th circle of hell a favor and fix the issues before you hire. Dead body #1 saved.
Identify any bottlenecks
Building software correctly is about process. You will perform every phase of development whether you’ve planned it or not so much…
If your DevOps is not in line your code will make good spaghetti, environments will not be identical triplets, scale will be an issue, publishing will become ‘Gone with the Wind’, and your infrastructure team will put you in cell #9 lockdown, because you are a security risk. Automate this now and make everybody happy. Dead body #2 saved.
How does your QA Process look? Bobby tells Freddy (Kruger) he’s pushed everything to QA and it’s ready for testing. Nice. Past me a sandwich. I’m hungry. You and I both know what is going to happen in this movie. Freddy’s going to test some half-baked time wasting version and turn into the slasher at midnight. Get your QA process in order, Jamie Lee Curtis. Dead body #3 saved.
I’ll stop there. Mercy rule just went into effect. Beside no one knows better than you where the dead bodies lye. Time to dig them up and get busy.
Utilize the resources
I have no doubt your corporate plan allocates 10-20% of developer time for learning new technologies, creating self-projects, and mentoring (queue the camp ground crickets). Plus, I’m sure you have a corporate license for PluralSight and a well-defined plan for career path acceleration (rib-it).
No? Then the question becomes, “How do I attract and keep top talent at a reasonable rate?”. My guess is you can’t offer stock options or profit sharing, so you have to get creative. Culture is everything. Millennials want to tell their homies they are working on the latest greatest and good senior dev’s won’t give you a sniff without it. Time to get hip. Call me on this one cause either you got it or you don’t, California. Dead body #4 saved.
Notice I have not mentioned the over blown, over hyped, under cooked yet crispy fried answer for everything… AGILE. No doubt if you don’t have solid development processes you can save a dead body (#6) or two (#7), but there is no agility silver bullet. Remember we have millennials involved here. They know everything, only work 39 hours a week, and can have a bad hair day. Are you feeling me?
What are some ways I can quickly improve my team?
1. Get help – This is not a lifelong commitment like hiring, but a smart decision to temporarily bring in experts who can set up shop
2. Examine process – Front to back and top to bottom scrutinize everything and find ways to improve
3. Continual training – This is not quick fix, but a long term habit. Tie this to developer leadership tracks and their pay
4. Review your tools – Containers, continuous integration, source control, project management, QA, etc… look here for help to become more efficient
5. Educate the business – Unrealistic dates set by the business and/or their customers cause failure. Beware of “Money is not an object”, “Get whatever you need, but I need it yesterday” conversations
6. Extreme programming – An antiquated process that still works like a charm. Pair up the people!
Successful teams have valiant leaders who find creative ways to hone and keep member creativity at peak levels. They also understand the ramifications of adding another member to their team. It’s like a marriage that everyone is continually watching. They know your motivations ‘kingdom builder’ and they also know how to optimize team performance, so ask them.
If your processes are solid, technology stacked, have blissful developers, and a plan, then if you need another zombie by all means grab one (Love to see your 5 step process for hiring newbies). However, do your team and business a favor by looking in the mirror, examining your motives, and making sure your house is in order before you pull the trigger. Dead body #8.