Upskilling a Junior Team
10 September, 2021
More than once during my career, I was in a situation to inherit a team of juniors. In all honesty, the situation wouldn’t be much different with a more senior setup if they were not investing in brushing up their skills. Understanding how to upskill a junior team and further develop their competencies was the key challenge I faced as their manager.
First and foremost, I would assess the existing skills of every individual on the team. I would also use the occasion to ask them about their needs, and based on their response, tailor my approach. Some people would need more micromanagement and hand-holding; others would prefer more autonomy and opportunity to deal with problems they would encounter single-handedly.
Then, I would start defining the skills we would need as a team. For example, I once joined a team of four data engineers. They were exceptionally good at doing batch pipelines, but they needed to work with real-time pipelines since box pipelines were not scaling anymore. No one in that team didn’t know how to deal with those, so I had to help them discover the real-time domain.
Another example that I encountered was to inherit a team that was with a company for three years. Over that period, they were working with the same tools. The thing with data engineering is that tools are evolving fast, and those that were good three years ago are not of much worth now. The team would need to migrate to some more recent tools, and frequently engineers either wouldn’t know about these new tools and how to use them or wouldn’t want to use them.
As a manager, I would have to create a detailed upskilling roadmap. The roadmap should include milestones such as, within the three months, everyone on the team needs to learn A, B, and C. For example, in the case of a team I mentioned above, everyone needed to learn how to migrate from batch to real-time pipeline within three months. Following that, I would create a learning path for my engineers. I would use various resources, including MOOC courses, articles, videos, blog posts, etc. Also, in the pre-Covid times, I was keen on sending people to meetups and conferences and had them become more engaged with the community.
Also, you need to create a rendezvous, or a meeting time, to distribute knowledge across the team. My favorite learning format is kata sessions, where the team comes together for half a day to learn about a topic of their liking. For example, I can run a kata for real-time pipelines, structured as a series of lessons: Kafka setup, Kafka cookie data, etc. I would have them practice it on a simple pipeline, copying one topic inside one table and demonstrating how things work on a super simple concept. If everyone understands the concept, I will move on, but if not, I will do the same kata next week. I would keep repeating the same kata until everyone in the team is comfortable working or familiar enough with a specific concept. Kata as a format originates from martial arts and encourages a sense of camaraderie -- we all chat, learn, help each other through focused repetition.
In the end, I should also mention that hiring someone full-time with the skills needed is always an option. But finding a person with competencies the team needs may take months in our highly competitive industry. On the other hand, a freelancer would be available at all times, but there is a risk that their skills would not be embedded within the team.
- For upskilling to take place, you need to create an environment where learning and growing will be celebrated. The best approach is to have allies on the team who are proactive and who can influence other team members.
- It’s never easy to motivate people to acquire new skills, especially if they got stuck in the old ways. If people are not curious, that should be the first quality to be instilled in people. Show them your curiosity and motivation, and have the team be inspired by it. If you can’t inspire the team, you can’t expect them to follow you.
- You need to be there for your team. You need to show the team that you are supportive, and if they need help, they can reach out. You can do it through weekly one-on-ones or daily standups. Regardless of the format or the channel of communication, be there to help them in their upskilling efforts.
Scale your coaching effort for your engineering and product teams
Develop yourself to become a stronger engineering / product leader
Sachin Shah, CTO, discusses how he dealt with and supported a team member with mental health challenges while handling project deadlines.
CTO at Self Employeed
Michael Scotto, Director of Quality Assurance at Niche, tells how he helped one of his reports become a manager, preparing them meticulously for the role over a period of six months.
Director of Quality Assurance at Niche.com
Rohit Karanam, Director, Product Management at Teradata, uncovers why building relationships is key to his leadership style that focuses on helping his reports grow in their careers.
Director, Product Management at Teradata
Gaurav Sharma, Engineering Manager at GlobalLogic, shares how he identified the personality profile of each person before working with them.
Engineering Manager at GlobalLogic
Bertrand Dubaut, Director of Engineering at Zivver, explains how it was tough to grow an open dialogue culture and describes how to mitigate it.
Director of Engineering at Zivver
You're a great engineer.
Become a great engineering leader.
Plato (platohq.com) is the world's biggest mentorship platform for engineering managers & product managers. We've curated a community of mentors who are the tech industry's best engineering & product leaders from companies like Facebook, Lyft, Slack, Airbnb, Gusto, and more.