Often at ThoughtWorks we will be asked to help train and up-skill the client’s team members whilst we co-deliver projects. We call this enablement. These are some lessons that I learnt whilst being an agile coach and from having 1:1 coaching sessions with clients, that are worth thinking about if find yourself on the “consulting” or “coaching” side of a relationship.
Tip #1: Understand the expectations from the start
What kind of engagement is it?
Think about what kind of situation you are in. Are you there to “just deliver x”? Are you working closely with a client team? Are you there in more of a coaching or consulting capability? It could be something anywhere along that spectrum. Wherever you land on that spectrum there will always be some degree of influencing, education and support of the client needed. You will need to bring people along with you, whether it’s a single stakeholder or a team of developers, this to me, is enablement.
Pick technologies and techniques that the client can support
More often than not, we will be leaving behind some software or hardware that we are expecting the client to be able to maintain or support to some degree. Really think about this when picking technologies, designing your software, and evolving your process. How different is this to what the client has done before? What are their core skills in, and what’s reasonable progress from that? Often the newest, coolest techniques are not going to be easily learnable in the time that we have with them. Think about your choices and don’t leave them with something they won’t be able to look after. Do the right thing by the client.
Talk about it often
At an account level, make sure you talk about what degree of enablement you are expecting, ensure that it’s planned in from the start, and check that you are progressing, revisit decisions and assumptions regularly.
Tip #2: Put yourself in their shoes
Work on courage and confidence
People’s confidence can often take a huge hit when they are transitioning to a new skill set. For example between waterfall and agile or from one technology to another. Until the person can work out how to adapt their current skills to meet the needed skills, they can often feel like they have no skills at all, they might feel they no longer have anything to bring the table and that they are the only ones feeling like this. Multiply this phenomenon by the fact that it’s not just one new thing thing they are experiencing, it could be their whole working environment, how they collaborate, how they contribute, the people round them and it can spiral quickly. It is really hard to stay confident and courageous with all this going on. At the beginning focus on doing everything you can to help people grow in confidence and courage, so that they can throw themselves into learning.
Consider learning agility
Learning Agility, the ability to learn, adapt, and apply ourselves in constantly morphing conditions, is something that as consultants, is a required skill. In some larger, more traditional environments, this is not something that employees have a chance to practice and develop often, so their learning agility levels might be quite low. This doesn’t mean they can’t learn, but that the process might be a lot slower that someone who is more practiced. It’s quite a different mindset, so think about how reasonable it is that we expect someone with lower learning agility to “just pick up” tens of new tools and practices at a fast pace. Really think about how patient you are being, slow down, cover basics and practice fundamentals often. It takes time to develop the skills of learning, but helping people build these skills can make such a radical difference in the future.
Show your vulnerability
It can be very intimidating to learn from an “expert”, someone might feel like this “expert” can do no wrong, that they never make mistakes, that they are always confident, that you don’t have anything to add. Try sharing stories of times that you have struggled to pick things up, or situations you have felt scared in. We all feel unconfident at times, admit that to them, you’ll see a massive difference. Make sure to ASK for their input don’t just expect them to speak up without encouragement.
Make sure you cover the basics
Don’t forget to cover the basics, explain the dynamics and responsibilities when pairing, cover basic TDD and red, green, refactor, go into the finer details of how to write stories and plan work. Always remember to explain WHY. Keep repeating this basics, when you are new to anything it takes a lot of mileage and repetition until you start to understand the nuances.
Tip #3: Get to know the people you are working with
Rapport is one of the most important things when coaching. There needs to be trust and respect between both parties. You might want to ask how they got into what they do, what their experience is at the company, find out what they do for fun, look for common ground.
Talk about goals and aspirations
Take time to ask and listen about what their goals and aspirations are, you are more likely to find you have a motivated pair if you can help find them opportunities that they would enjoy. One idea that someone had which I thought was great, at the start of pairing or at the start of the day the pair should talk about what learning or knowledge they want to gain out of the activity. This will help you work out when to take more time over particular concepts, and when it’s ok to go at a higher level of understanding.
Value them and their skills
It doesn’t matter what experience or background people have, everyone has skills to offer, everyone will bring different perspectives. Your clients will have the best domain knowledge, and they know their own systems better than anyone. They are software professionals, probably with a lot of experience. Value and embrace this diversity in thinking.
Open the feedback conversation
It’s important to create an environment where feedback is encouraged and accepted. This might not be something that currently exists, it is our job to create that space. Make it a place where they are comfortable enough to be able to feedback to you about how they learn and what helps them.
I hope that you have been able to take away some tips that you can apply in your next enablement situation. Please reach out to those around you and ask for help, and make sure the team is talking about enablement and how it is progressing. Developing the empathetic skills I’ve talked about above will make a huge difference in creating a successful enablement situation.