Want to know what it’s like making the transition from a software engineer to a manager? Wesley Gorman at Zendesk filled us in.
Whether you’re considering a career in software engineering, or you’re already in one and wondering what it’s like at the next level, hearing from someone who’s already climbed the ladder can help.
Wesley Gorman is a senior engineering manager at Zendesk. He has worked in software engineering for almost 15 years. Now, as a manager, his job involves less day-to-day coding and more managing his team.
But what is it really like working as an engineering manager? And what has his experience been like working as a manager at Zendesk? Gorman filled us in.
What first stirred your interest in a career in software engineering?
I was pretty lucky to have a teacher in primary school who was really interested in technology and programming before it was common in the classroom.
We had a BBC Microcomputer in our class full-time and did programming in Logo, among other things. From the start, I loved it and couldn’t get enough of it.
My interest grew over the years, fuelled by editions of PC Live! magazine and episodes of Tech TV on RTÉ.
What education and other jobs led you to the role you now have?
I studied computer applications (specialising in software engineering) at DCU and then joined BearingPoint as a consultant after graduating.
That was a great opportunity to gain experience and work on large projects like the Irish passport system and building the platform for the new pension/entitlements system in the Department of Social Protection.
After four years of that, I moved into a semi-state company as their first in-house engineer. There, we were doing some really innovative stuff but, when the financial crisis hit, all the funding for new work dried up.
While working, I also did a couple of evening courses in Dublin Business School. One of them on coaching for performance has probably been one of the best things I could have done to prepare me for working at Zendesk and building up to the role I have now.
It helped me focus on the reality of situations better rather than getting distracted by worries about what might happen, focus on taking positive action rather waiting, and also greatly helped me improve my communication skills around actively listening and then making sure my messages landed when I spoke.
Those coaching and related skills were critical in helping me be successful as an engineer and as a people manager. Coaching and empowering teams is valued highly in Zendesk, so I think having done that course and putting it into practice over the years set me up very well to join and then be successful here.
What were the biggest surprises you encountered on your career path?
I’d say the first big surprise I got when I went into the workplace was that great technical skills alone aren’t sufficient to make you a successful software engineer. In the early part of my career, we followed the waterfall model: document ‘all’ requirements upfront, build everything and then hand it over to the customer for testing, then squeeze in a few hundred change requests to pass user acceptance testing, call it done and go home.
Customers were always left frustrated by the process and underwhelmed by the product. Moving to a more modern, iterative approach demanded a lot more from engineers, both technically and in terms of vocational skills; listening and really understanding the customers’ needs, analysing how to deliver an MVP that will solve the customer’s problem and deliver value, managing expectations, dealing with blockers, being creative in your approach to problem-solving.
It took me years to understand the need for an engineer to be good at these things and many more years to build up that skillset.
Another challenge was reporting to a non-technical manager in one job. Software engineering is a very uncertain, counterintuitive pursuit (a lot of what was written in The Mythical Man-Month 40 years ago remains true) and one that people who’ve never been involved in product development will struggle to appreciate the unique challenges of.
This situation forced me to learn about clarifying assumptions, over-communicating and also helped me see the power of doing something really basic, getting it into the hands of users and building their confidence in the process.
Doing that was great experience but also exhausting. I consider myself really lucky at Zendesk. We’re a very engineering-led company; people understand how product development works, and that allows us to focus on higher value and more impactful discussions.
Was there any one person who was particularly influential as your career developed?
There’s been way too many people who’ve helped me, taught me and supported me over the years to pick one.
I’m still in contact with some of the senior engineers I worked with at my first job out of college. And, while I haven’t always followed their advice and guidance – I needed to make my own mistakes at times to learn the really hard lessons – it’s always been good to have people to bounce ideas and problems around with.
If forced to mention one person, it’d probably have to be my current manager Colum Twomey (VP of engineering). I’ve been at Zendesk for nearly five years now, Colum has been my manager throughout – that’s a third of my career.
Before this, the longest I’d reported to a manager was probably two-and-a-half years. So, if nothing else, he deserves credit for putting up with me that long.
More seriously, he’s given me the responsibility to do things over the years, the room to make mistakes and learn from them, challenged me to fix things when they’re broken – all great things that have helped me grow.
He has a deep understanding of engineering, vast experience and really sets the tone for the Dublin office, as well as making an impact across the company. For all those reasons, Colum has probably been the single biggest influence.
What do you enjoy about your job?
As a full-time people manager, I don’t get the daily rush of writing code and pushing it out to customers any more. Managers get to see the results of what they do occur over a longer timeframe.
I do get a rush from having a great one-to-one with one of my team, though. When I help someone make a breakthrough and help them line up their next steps to pursue their goals, that gives me a lot of pleasure. And, while it’s always difficult giving someone feedback on where they need to improve, I try to give people the feedback directly, give them time to digest it and ask questions, help them understand why this is important to improve on, what’s the impact of getting it right, and help them figure out how to start tackling it.
When someone turns a weakness around and starts seeing the positive impact, that also gives me a sense of satisfaction.
I’ve been working in software engineering for almost 15 years. I’ve made nearly every mistake in the book and some of them a few times. So, I like to think I can bring that experience to bear in my work with teams. I’m not here to stop teams making mistakes (except for very big ones) – mistakes are necessary for learning, so eliminating them all would be counterproductive and would disempower teams.
That said, I do enjoy working through plans with teams and helping them identify potential issues themselves, then come up with alternative approaches or mitigate the risk. Seeing someone solve their own potential problem or avoid issues, then grow in confidence as a result – that’s definitely rewarding.
What aspects of your personality do you feel make you suited to this job?
I’m not sure my personality makes me particularly suited to this job. Definitely my younger, less-experienced self would have been a disaster in this role. And moving from engineer to manager is a funny transition; you go from being an expert in one area to a complete beginner in another, and have to learn the behaviours and traits needed to be a good manager.
And that’s OK – management is a skillset you can learn if you put the effort in, like anything else. So, I guess being humble enough to admit I was clueless when I started managing for the first time, and stubborn enough to stick with learning that new skillset, is one personality trait that has helped. The rest has been hard work, lots of reading and a bit of luck.
I’d also say personality-wise, I’m pretty impatient. But I’ve learned over the years to stay disciplined, not skip steps, get people involved, and communicate early and often. That’ll produce the best results and avoid the biggest mistakes.
Nothing slows you down like rushing and making mistakes. There are no real shortcuts in the long run. If shortcuts didn’t come with downsides, they’d just be the accepted way of doing things. There’s a saying I like which reminds me to stay patient: ‘Slow is smooth, smooth is fast.’
How did Zendesk support you on your career path?
The biggest support has probably been the culture at Zendesk. We’re very open and transparent, to the point where we sometimes struggle to keep something secret on the rare occasions when we need to. That comes with a lot of responsibility and gives a lot of opportunity to get involved and grow.
The management training programme here, called Illuminate, is also by far and away the best I’ve seen – and I’ve done a number of them at other companies before coming to Zendesk. It’s very practical and pragmatic, heavily exercise- and discussion-based, tailored to how we work, and regularly updated.
I’m normally very sceptical of management training, but this one does it right and it really helps. I couldn’t be more thankful for Negar Pellegrini, who set up the programme, and Jen Cronin, who now runs it – they’ve both done an immense job with it.
We have a managers’ handbook, too – written collaboratively by Zendesk managers with support from people ops. It’s public, so anybody can have a read of it here. I probably need to re-read and refresh my memory of it, too.
I think it’s also indicative of the support from other managers here. We’re all busy so we don’t do it enough, but there are definitely times when one engineering manager raises a problem they’re facing, or shares a solution they’ve come up with for some issue, a discussion develops around it, and we realise we face the same issues and can learn from and help each other.
There’s a great Slack channel internally, #managing-people (open to everyone), where people share articles and thoughts on management. That kind of sharing and support from peers is great to have.
What advice would you give to those considering a career in software engineering?
Be curious, dig into everything and learn as much as you can – in software engineering, you always have to be learning. Don’t be afraid of anything and, if you have a weak area, rather than avoid it, lean into it.
For example, I’m the world’s worst JavaScript developer, so I’ve definitely made a point at times of picking up work in this area. While I may be slow in the short term, the more of it I do, the better I’ll get, so the faster my team will be in the long term.
The other thing I’d say is, don’t neglect vocational skills in favour of technical skills all the time. I made that mistake early in my career. Software is made by people for people.
Communication, understanding others, coordinating with others, resilience, stress management, disagreeing with others and figuring out a way to resolve disagreements – these are all core software development skills. An average coder with some of these skills will have much more impact than an elite coder without these skills.
Lastly, I’d say be yourself and have fun. Software engineers are in a privileged position; our skills are in demand, there are lots of opportunities out there, so find somewhere you can relax and feel comfortable being yourself, and build something you care about to solve problems for people.
Life is too short for pretence and working on something that doesn’t matter to you if you have other options.