The ABC’s of Enabling Your Developers for Peak Performance
By Lee Humeniuk, Bits In Glass
If you’re familiar with the Agile development methodology, you’ll know that the development lifecycle consists of these 6 important stages: meet, plan, design, develop, test, and evaluate. The Agile methodology an iterative cycle where you establish a plan, implement the plan, evaluate the results, and repeat the process. Let’s discuss how we can apply this method to enhance the professional growth of the developers on your team.
A. Know their interests
A common software developer archetype is that we aren’t always the most social creatures, spending most of our time staring at screens in dark rooms whilst drinking soda and eating pizza. This is a fairly Hollywood way of looking at things – it’s easier to wrap the responsibilities of a computer scientist in mythos than to explain the intricacies of the job. In fact, out of the hundred developers I know, none of them live this way. Many of them exercise regularly, make sure to spend a balanced amount of time looking at screens, eat their vegetables, and go to social events.
All that said, it’s important to know what their professional interests are so that you can find a way to communicate expectations clearly. We do this by meeting and creating a plan. A meeting could identify gaps such as a lack of security knowledge, or strengths such as the ability to create scripts to map complex data models. A subsequent plan could be a learning roadmap to increase proficiency in a range of security best practices, which is especially important in today’s vulnerable internet.
B. Provide opportunity
When we talk about providing opportunity, we focus on two different kinds of opportunity.
- The first is providing an opportunity for mentorship. A good percentage of developers are self-taught. They like to seek out information and don’t mind tumbling down the rabbit hole from time to time, but Stack Overflow and other online learning tools can only get you so far. When it comes to concepts like industry best practice, or even more granular concepts connected to platform-specific best practice, the ideal source of information is a more experienced developer. Software developers with real-world experience hold the keys to bringing the new person, or even the whole team, to the next level.
- The second kind of opportunity is the opportunity for ownership. Ask your developers to take ownership of a given task in order for them to see that they are trusted and that they are seen as an important piece in the larger picture. The idea is that when they are responsible for outcomes they will be encouraged and motivated to learn and grow in order to be successful.
This is probably the most difficult task. Depending on their personality, they might take feedback in a negative light. Either way, it’s important in their growth to be able to orient their goals from what can already done and what needs improvement. Being able to understand and articulate their outline strengths and weaknesses is a strength in itself, and mentoring them so that they can understand their weaknesses will only help in their future growth and practice.
By consolidating the six stages of Agile development into the three ABC’s of developer enablement, we are able to give our team a lot more structure and focus in terms of the direction we’d like to take them.
About the author
Raised in Beaumont, Alberta, Lee grew up playing hockey and struggling with math. Often sarcastic and always a dreamer, you’ll find Lee at the local pub enjoying a Guinness whilst laughing at his own jokes and pitching the next big software project.