Trainers who work with software developers face a tremendous challenge that is loaded with opportunity but also fraught with peril. Software developers are competitors and natural creators who arrive at new jobs determined to set the world on fire, and if you tap into the great potential they possess, your company could benefit tremendously. But fail to train them adequately, and they may leave for greener pastures.
Software developers have a highly marketable skill; they are in demand, and if you don’t give them the chance to spread their wings, they’ll find someone else who will. This could be a big problem for your business, since the costs of recruiting and training replacements for departed software developers can be fairly prohibitive.
To keep good developers while maximizing their creative potential, you need to institute training programs that are comprehensive, detail oriented, and user friendly. They need to be effective, but they also need to make a good impression on the people you’re training as they will have other options if they think you see them as cogs in the machine rather than human beings.
Here are some tips that can help you refine your existing training programs and increase their efficiency and relevancy:
1. Don’t use a cookie cutter approach. People have different personalities, and that should be respected. Introverts are well represented among software developers, although extroverts are even more common, according to one study. Some people handle constructive criticism well, while others are deeply wounded by even the mildest rebuke.
It may not be immediately apparent where the developers you train fall on the spectrum of personality characteristics. But if you pay careful attention over time, they will give you hints, and it is wise to adjust both your approach and your expectations for each individual based on your observations.
Naturally, your training will be customized to the needs of your business—that is necessary and will lead to some degree of standardization. But your personal interactions don’t have to be so structured, and shouldn’t be if you hope to make your training sessions productive.
2. Include motivational strategies in your presentations. While every person’s personality may be different, the human need for positive reinforcement is nearly universal. It may not be apparent on the surface, but many software developers lack self-confidence and are somewhat intimidated by co-workers they fear are more innovative and creative than they are. For this reason, it is important to acknowledge your trainees’ progress as it occurs, to improve their self-image and gain greater self-assurance as they are asked to complete increasingly complicated tasks.
Of course, you may have some trainees who are supremely self-confident and don’t need praise and encouragement to perform better. Nevertheless, they still will appreciate being recognized for their excellence and will have a higher opinion of you and your company when kudos are freely given.
3. Give software developers an opportunity to learn more about software engineering and architecture. Software developers are deeply curious about their profession, and many hope to someday transition into engineering or architecture. As a trainer, it is in your best interests to cater to this desire and help your developers satiate their need to expand their knowledge base, since engaged learners are focused learners and focused learners are better performers.
More versatile and well-rounded software developers could be an asset to your organization in the future: When you need to hire new engineers or architects, you’ll be able to promote from within, saving your company a lot of money in the process.
4. Survey your software developers on a yearly basis. Last year, for-hire training organization DevelopIntelligence issued a report entitled “How to Train Software Developers in 2017.” The information it contained was collected during a comprehensive survey of currently employed software developers, who shared their experiences and talked about their professional needs and preferences.
The report is a gold mine of useful data, mainly because it comes straight from the horse’s mouth. The survey organizers asked developers themselves what type of training was most constructive and efficient, and the answers they got were eye opening and instructive.
But you don’t have to—and shouldn’t—rely on an outside organization for this type of insight. Each year, you should conduct your own software developer survey (which could include past employees if they’re willing to contribute) to get feedback about your current training programs and to find out how they can be expanded or modified. The survey could be anonymous or based on private, face-to-face conversations, depending on employee preferences and your desire to build greater trust.
5. Stick to instructor-led training (ILT) as it’s more popular and effective than DIY online/video courses. Perhaps the most important discovery to emerge from the aforementioned survey was the revelation that software developers prefer ILT programs over self-directed programs, and by a wide margin. Videos, online libraries, and other virtual training resources work fine as a supplement to classroom/workshop-style experiences, but companies that phase out or reduce their use of face-to-face training methods are making a huge mistake. The direct, real-time feedback students get from live instructors is extremely helpful and a vital element in the learning process.
6. Training sessions should be regular, widely available, and focused on new developments in the field. In the DevelopIntelligence survey, more than 7 in 10 developers told interviewers that their companies did not sponsor formal training programs or workshops on an annual basis.
Given the rapid and ever-accelerating changes in the field of software and software development, this is a shocking statistic. How can developers be expected to keep up with the technology if their employers aren’t proactive enough to facilitate the process?
Software developers tend to spend a lot of time reading about changes in the industry on their own, but placing too much of the burden on their shoulders will lead to dissatisfied employees whose ability to perform is compromised by their inability to track the changes in their profession.
Kelby Zorgdrager is the CEO of DevelopIntelligence and an expert in software development and technical training. DevelopIntelligence has been in the technical/software development learning and training industry for nearly 20 years. It has provided learning solutions to more than 48,000 engineers, across 220 organizations worldwide.