As the topics of 'women in leadership' and 'gender equality in the tech industry' remain firmly in the limelight, I have spent some time reflecting on my own personal journey, particularly stepping into leadership roles. Here’s my story, with some tips to advance your career in technical leadership and things to consider for personal growth.
Before I joined Thoughtworks five years ago, I had been working as an Agile developer and coach across different industries - as a permanent employee, a consultant and a contractor. I became disillusioned with delivering software for companies where I had no real influence; so Thoughtworks seemed like a sensible next step. They didn’t just deliver software, they solved clients’ problems.
During my time at Thoughtworks, I have worked with a variety of teams: from a few cross-functional people working collaboratively on analysis, coding, testing and UX, to highly complex programs of work with 50–60 people. I’ve been involved with Agile transformation and coaching engagements in various industries, right from the public sector to high fashion, and have led teams on projects dealing with complex workflows, breaking down monolithic architectures, team organization, introducing and refining TDD and other engineering practices. Working across a variety of industries (with new technologies, unique business problems, and new people) teaches you a lot, and over time I've come to a few realizations, which I’d like to share with you.
As you build up experience, you will get a sense of what feels right and wrong. Earlier in my career, I used to quash this (to some extent!), especially to defer to someone with more experience, or who spoke with authority. Women are especially good at this! I remember starting on a new project, which had been in play for a few weeks. The team on-boarded me, and gave me a lot of context on how they got there, and what they were trying to do. But try as I might, I couldn’t work out what the key project goals were. I assumed it was just me 'not getting it', and hoped that I would 'get it' in time. After a couple of weeks, I had to respond to stakeholder questions about the aim of the project, and how we were progressing towards it. At this point, I realized that we actually hadn’t ever pinned the goals down. If I had spoken up earlier, we would have been saved from an embarrassing conversation. Now when I get a feeling that something isn’t as it should be, or that we should do something different, I explore that. And if it turns out I’m wrong, that’s fine - at least I know! So, trust your instincts, and follow them, whilst watching out to make sure they are valid.
If you say you are going to do something, make sure you do it. This builds trust, which is essential if you want to be considered for different opportunities. Years ago, I was approached by someone who wanted to support me to do more public speaking. I was asked to provide various bits of info, and kept receiving offers for submitting talks. I was keen to do it and so agreed, but was also nervous and kept missing the deadlines due to procrastination. Eventually, he stopped asking, and I missed out on all the benefits that getting onto the conference circuit could have brought.
Aside from my project work, I’ve also been able to inspire and educate future technologists by rolling out an Intro to Programming course for 12-13 year old girls and by becoming a trainer at Thoughtworks University in India - an intensive five week training course for all our graduates. This has helped develop my coaching skills, while bettering my understanding of software delivery across the globe.
If something comes up that is different from your long term plan, try it out! You never know - you just might like it. I've always regretted missing out on the public speaking opportunities that I mentioned above, so years later, when Thoughtworks asked me to speak on a panel about encouraging girls into schools, I jumped at the chance. Even though it was terrifying - speaking at an Apple store in front of a big audience, including the press - and it was being filmed! But I survived… and better, even enjoyed it. On the back of that panel, I was asked to speak at two other events, and to participate in the Little Miss Geek in-School initiative: teaching 13 year old girls how to code, and demonstrating that the stereotype of the geek is not a true representation of our industry. So, one ‘yes’ opened a whole new avenue to explore. It was challenging, and expanded my view of the world. And, it gave me the opportunity to make a difference for a cause I care passionately about - diversity and inclusivity in technology.
I haven’t quite mastered this one - but I keep trying! If you take on too much, you will dilute your effectiveness, and may burn out. If I start to feel like I’m getting swamped, I use the Eisenhower quadrant to prioritise my workload. Participating in the Thoughtworks’ Leadership Skill Development Programme has also really helped me, especially with training on coaching, influencing and conflict negotiation. It’s given me access to invaluable support from my peers, locally and globally, and has helped me become more confident, especially when it comes to trying new things, failing fast, learning and moving on. This is where my last piece of advice comes from.
This has manifested itself in a couple of different ways for me. I was working on a presentation for senior management recently, and spent days revising it, trying to make sure my message was perfect. In the end, some of my points were accepted, and others challenged - just as they would have been if I’d given the version I completed on day one. It would have been better to make some assumptions, get early feedback on them and to adapt as I went along, rather than spending so long polishing what I had. So, this is about making a decision, and trusting that you can handle the consequences.
This is the other way I’ve found to embrace the potential to be wrong, which is especially important when you are developing in a role. You will need to try things for the first time, and sometimes, they won’t work. When I was in one of my first Tech Lead positions, I was concerned about the mounting tech debt in the code base. So I made the decision to work late repeatedly, fixing the code. Now, as any seasoned Tech Lead will tell you, this is a bad idea - code quality cannot be owned by one person. It would have been better for me to coach the team on how to write the type of code I wanted to see. What eventually happened was that the quality started to decline faster, as people felt distant from the accountability of writing clean code. They stopped knowing their way around the code as I kept changing everything! This all came out in a retrospective, at which point I adapted my behaviour. The point is not to consider this a failure, but to ensure that you have a way to identify issues, fail fast and more importantly, to accept when things aren’t working and take steps to improve, even if that means throwing away sunk effort. You will sometimes be wrong, you will sometimes fail. If you don’t, you aren’t taking enough risks!
I’m currently working as the Office Principal for the Thoughtworks London office and use my professional services experience to support other Thoughtworkers over a dozen client sites. This is a key leadership role within the UK and I’m excited to keep learning and growing in this role and whatever other opportunities there will be in the future.
Disclaimer: The statements and opinions expressed in this article are those of the author(s) and do not necessarily reflect the positions of Thoughtworks.