The market for software developers has never been more competitive. As a former CTO with the lowest turnover rate in a company of almost 1000 employees, I want to share how I cracked the code on retaining a team of high performing developers.
Hopefully, you already realize your existing top developers are being solicited with enticing offers almost daily. Even fresh-out-of-school developers have their choice of job offers.
How I did it.
Step 1. Have an onboarding process for new developers.
When you find that rock star or diamond-in-the-rough, you need to be prepared to move them quickly through the interview and offer process. Once they accept your offer, it will take a day or two for the developer to build his or her environment on their workstation and connect to printers and folders. You should have online documentation they can review that shows the developer how to build their technical environment, how to check code-in and the programming standards being used. Finally, your onboarding process should include pairing the developer with an experienced developer to show them where the code is stored, the processes used for checking and testing code, and understanding your build process. An organized, well-orchestrated start will give your new developer confidence he or she chose the right team.
Step 2. Schedule regular one-on-one meetings with your developers.
Start on an every other week schedule, then reduce it to once per month once you feel the developer is up to speed. Inform them that this is his or her meeting to discuss projects, team dynamics, education, and other key areas. You should also have your own items for discussion. The key is creating a relationship that facilitates open discussion of things standing in the way of individual, project, or company success. If the developer is unhappy or concerned over anything, this is the time to have the discussion. You don’t want to have the annual review, and then be surprised they are not totally happy with their work, team, or manager.
Step 3. Build a career plan for the developer.
Anywhere between the 6-month or 1-year anniversary, create an individualized career plan for the developer. If you have done your one-to-one meeting correctly, you should have enough information to gauge the ambitions of the developer and reset expectations if necessary. I remember one discussion with a junior developer. During the discussion, I asked him where he saw himself in 5 years. To my surprise, he told me he wanted to be a CTO and he felt he would have that role in four to five years. I loved his enthusiasm, but I had some expectation resetting to do regarding the timeline to become CTO of a mid-sized organization.
Step 4. Let them work from home.
Don’t underestimate the value of quality of life to your team. I typically let my team work from home at least a couple days a week. With technology and internet speeds as they are today, there is no reason they can’t be productive telecommuting. It reduces road congestion, helps them save a few bucks, and I actually found them more productive overall. With tools like Skype and instant messengers, connecting and talking to them is a keystroke away. I live in the Atlanta area. By eliminating commute time, working from home will gain them anywhere from an hour to two hours a day. I found my developers used those extra hours for working instead of stuck in traffic.
It really boils down to communication and support, so they can be successful at their job. In my experience, if they love their job and environment, they don’t have a reason to look anywhere else. Remember, people don’t quit their job, they quit their boss. Make time to listen, throw in some work from home days, add some training that will increase their skills and productivity, and you have a recipe for happy, loyal developers.