Workplace training is essential but can end up being an overwhelming process for both learner and teacher. Here at Property Hive we’ve recently expanded, taking on Martin Lambov as a support engineer. Martin has been immensely useful in enhancing our support services and many of you might have already spoken to him.
Martin’s ambition however is to become a developer and, being all about growth and self development, we’re on board with facilitating this. Ultimately this will allow him to debug issues and offer better support so it’s also in the business’s interest to encourage this as well.
Our Director and Lead Developer Steve has been training Martin and giving masterclasses in coding Wizardry! We asked Steve to shed light on his experiences and give us his top tips.
So here goes… Our top seven training tips for training a Junior Developer:
Start from the ground up
When teaching someone the basics of development it’s easy to forget that even “simple” things (variables, operators, data types etc) might not be familiar to the junior in question. Don’t assume they know anything and start from the ground up with basic explanations and simple examples.
Instill good practices from the beginning
I’m a sucker for best practices. Neat code formatting, tidy file structure, commenting and clear commit messages are a few examples of this. I think it’s important to discuss these right from the outset to avoid any bad habits. These skills are invaluable when working in a team.
Recap and repeat
When learning any new skill it’s important to always go back and recap on what’s already been taught. Instead of ploughing ahead with learning new stuff all the time, take a moment to go back now and again to recap on lessons already taught. The more you reiterate on what’s being taught, the more ingrained it will be.
Design tasks and tests they can go off and do themselves
My favourite thing to do with a junior is to design tasks or tests that they can go off and do themselves. Some people learn best by trial and error, or having to go off and do their own research, instead of having perfect working examples shown to them all the time.
An example of this is a new add on we needed writing to export properties from Property Hive to a new property portal. This was a big ask but I gave Martin a specification, a breakdown of the steps required to reach the end goal, and set him on his way. We checked in regularly to see how he was getting on but the majority of it was done with no hand holding and gave him the freedom to get things wrong with no one looking over his shoulder and to just have a play around.
Give them time to absorb the knowledge
Our training sessions are short, maybe an hour or two at a time, and then we stop there until a few days later. A full day training or trying to cover too much in one sitting is mentally energy sapping for everyone involved. Keep it to short, digestible, sessions and this will prove much better in the long run.
Don’t be scared to throw them in at the deep end
I mentioned the add on above that was a big task for a junior to undertake. However Martin probably learnt more doing that than all of our sessions put together. It gave him exposure to a wide array of functions and practices and how everything ties together as opposed to doing everything in isolation. It covered OOP, Git, PHP and JavaScript, all in one task.
Use real world examples in training
Let’s take PHP FTP functionality as an example. We could do a session on this and discuss all the functions involved and write sample script after sample script, but try to also coincide this with real world examples. We looked at this in the context of the BLM Export and how you might use FTP functionality to send a BLM file to a third party. This makes it a lot clearer and allows the junior to see how this would be used day-to-day.
If you’re training a junior developer or are going through training yourself, hopefully these tips have given you food for thought and will help you to grow your teams skills.