Conversation with Zoe Cunningham, MD of Softwire
Recruiting for front-end developers, discussing the best way to hire software engineers is often at the fore-front of my mind. I got the pleasure of seeing Zoe as part of a panel at Insurtech Conference 2017 giving her ideas on how to hire great talent onto her team. I was lucky enough to catch up with Zoe over a coffee to pick her brains on some of these issues.
Hi Zoe, thanks for meeting me today!
First of all it would be great to get a bit about yourself! So you started at Softwire as a developer, is that right?
Nearly 20 years ago, if you don’t mind me saying!
A really scarily long time ago. I joined Softwire straight out of university as one of the first graduate software developers. Softwire was started by three ex-software developers from another technology company who essentially saw a few things about the culture there and they thought ‘we could do this better, we’ve got a good idea of how a company should be run’.
I love that.
They set out to build a company on those grounds, so I joined as the ninth employee.
Wow, and how many is it now?
Now we’re 150. So it’s been great being part of that journey and seeing everything change. My role now is I’m the managing director, and I’ve had the opportunity to develop my career as the company’s grown as well and that’s worked really well for me.
Especially at somewhere that focusses so heavily on culture. Must be so nice to grow up through that ladder rather than just, I mean, some of the people I recruit for, people have told me ‘I’ve sold my soul for money for this role’, or ‘I just wanted to work with this one piece of tech but I didn’t love the company’, but I think company culture is sometimes underplayed in tech.
Yeah, I really think so.
So much of it is binary, yes or no, can you do this skill – but I think sometimes the things that are ignored are culture and, I suppose, general attitude? Regarding, it doesn’t matter whether you can do the job or not, it’s about how are you going to do the job with other people. I think they’re a couple of things that are ignored quite heavily sometimes – what are your thoughts on that?
So I was just thinking about this recently and quite a good way to put it is I believe in doing business, so all business including tech, as a human being and I think we forget about that sometimes. We try to abstract people out into roles – we’d say ‘we have four developers and two project managers and a product owner’ and we try and think of people in that way. Whereas actually the closer you get back to dealing with people as human beings, the better results that you get. That’s what culture is all about really – thinking about people as human beings and what do they need from them in the business in that regard rather than just ‘how do we get the job done?’
I suppose when you think about the way a team is made up, as you say ‘four front-end, four back-end, two product managers’, you often forget that a front-end developer might have a keen eye for some of the back-end work – often it’s too easy to compartmentalise people into that space.
The other thing on that, that we really focus on at Softwire is training and development, and the fact that people aren’t static. Personally I find it quite frustrating this idea that you have a developer and you know they can do it and they’ve been doing it for five years, the best people don’t want to be doing what they’ve been doing for five years, they want to move onto something new. Coming along and saying I’ll pay you a bit more to be doing what you’re doing already, is not as an attractive an option actually as I can stretch you and train you and I can give you the opportunity to develop new skills, even if you haven’t done them before. You clearly have the basic aptitude because if you can code in one area, you can code in another area.
Yeah, I completely agree, and the thing is having this attitude, yes it’s frustrating for people who want to get jobs and to move on, but the people who it hurts most is all these companies that recruit software developers and can’t get enough applications or find enough high quality people because they’re rigid in their requirements and sometimes, they’re simply not paying enough!
Yeah of course.
When you have a market with such scarcity as there is at the moment for high quality software developers, you know, I meet people going ‘well, I want to pay 30k’, well I’m sorry, it’s not going to happen! You can go out to market but you’re not going to find anyone.
I think when there is a scarcity for finding developers, it’s this notion of ‘do we want someone who’s doing the same thing’ or ‘do we want someone we can help grow’. This is where I wanted to roll into a couple of the things you’re doing at Softwire – the first thing I actually wanted to bring up, although it’s not something I often talk about, but your Glassdoor rating is high – it’s 4.5/5 which you must be very proud of.
It’s very exciting – and it was, last time I checked, 100% approval of CEO!
I was having a look over this yesterday, but only 8% of your interview processes have negative reviews. And going into that – some of them were a bit like ‘I liked the interview, but I didn’t like the interview questions’ – so not quite ‘I hated it, it was awful and they treated me terribly’. How do you think you’ve managed to get such good approval of an interview process even when most of those people didn’t even get offers?
You’re right, that’s great, and I’m very proud of that – especially because when you’ve been rejected you naturally don’t feel very happy about it. For one we care about it! So lots of people simply don’t care and that comes across in an interview process. If they don’t want you, they stop caring about you. Or they will pretend to care about you once they might be interested and as soon as they don’t want you they stop caring. This goes back to treating people as people, y’know, in a human way, we want everyone who’s interviewed with us to have a positive experience. So we get back to people very quickly – we have guidelines that we will get back to people within a couple of days at each stage and then try and schedule an interview within a week. Really to try and move the process along so people aren’t left hanging around. The other thing that we do which is quite unusual – I don’t know many companies that do this – we reply to every application to let them know yes or no.
Not many companies do that in the slightest.
And it is more work for us – it’s a business cost that we have to factor in, but it’s just so inefficient to have people waiting around not knowing what’s going on, sometimes sending in another email saying ‘I haven’t heard anything, just wanted to check nothing’s gone wrong, something’s been lost or the process has been delayed’, and at the end of the day it’s disrespectful to not get back to people. So that’s something we really focus on, we try and show people a good time when they come round the office, but it’s mostly just running the whole interview process in a respectful, professional manner.
Yeah, and I mean, getting back to people in only a couple days is absolute music to my ears.
It is true that everyone is too busy nowadays, right? We’re all trying to do more, great technological advances so we can do more, we can fit much more into the day, then expectations go up more. I think sometimes it’s very tempting to make that work by letting go of what I consider basic professional standards. I think that culture has to come from the top. I think it’s needs someone saying ‘this is what’s important, this is how we should be doing business as a company’.
I suppose the other thing from an almost selfish, but not quite selfish, point of view is that treating people well throughout the interview process whether you want to hire them or not reflects so well on you and Softwire as a whole. In regard to that – what do you think are the major things companies are doing wrong? Other than that major principle of treating people as a human being, which should go without saying but unfortunately it feels like we do have to say it.
At the end of the day it’s empathy. Put yourself in someone else’s shoes and not just think ‘what do I need and how is it going to work for me’ but actually treating everything – and there’s a great phrase from a book called The Seven Habits of Highly Affective People which is written by Stephen Covey and he talks a lot about ‘Win/Win’. How can you have a relationship that’s win/win, it works for me, it works for you. I think if you can start thinking in those kinds of ways, you find creative and better solutions and you essentially get more out if it was zero sum.
The more you give, the more you get.
Exactly, and I think that sometimes I think technical skills are so in demand and they are kind of ‘elite’ skills, so I think it’s very easy to get into the mindset of ‘well I have all of these elite technical skills so I know what I’m doing and I don’t need to listen to anyone else’. I think in core business, important to be very broad in your learning and your standing and to interact with a lot of different types of people with a lot of different skillsets, just as important as strong technical skillsets.
I think the best companies are the ones where it’s far more integrated like that. When a skill is in so high demand, it’s easy to say ‘this is why I’m important’, again it’s that binary, yes I can do this and you can’t do this. In that regard, what do you think are the biggest challenges in finding new talent?
I think the challenges are very easy – there isn’t enough talent, it’s that simple. Until we find better ways of creating talent, that problem’s only going to get worse. It’s been getting worse and it’s going to continue to get the worse and the results are businesses aren’t able to get employees and salaries get really, really high and it feels a bit like the whole market isn’t quite working. The reason for that is that there’s not enough supply coming in. Now, some people like to solve this with the education system, they say ‘the education system should be better, we should teach coding when kids are younger’ – that’s all great, I’m all for that – but I think actually, you need to tackle diversity earlier and find ways of getting different people into the industry, and people from different backgrounds. So rather than saying ‘well the education system should be churning out everyone able to do this’ well actually, if it’s not, what are the other options. There’s a fantastic organisation called Makers Academy, I don’t know if you’ve come across it?
Yes, of course.
Makers Academy are doing a great job of saying ‘great, you started off in a career and maybe it’s not working out for you, or maybe you’ve hit a ceiling and you’re looking around for something else’, you can actually re-train and become a software developer, at any age in life regardless of your background – and I think that’s fantastic.
If you can imagine someone who’s been in a wrong career – say myself, if I decided to retrain and in four years I’m working at a top company, then that’s an incredible turnover. There’s a few like that, General Assembly being another one. I’ve done talks at the General Assembly for them to understand how to get that first step into the industry is so important – that’s why I’m so big on helping juniors out is because y’know, once you get that talent pool into the industry, it really helps things churn along. Developers then grow into seniors, and seniors then help juniors learn and grow. If I’m being really selfish, then that gives me even more talent to speak to I suppose.
It’s more talent for everyone! Everyone who’s having this struggle to find enough talent.
And as I say, if it wasn’t a challenge I wouldn’t have a job – but it would probably make the industry a lot easier to work in.
The thing is the gap is so big I feel like there’s almost there’s no initiatives that mean we could have too much talent, it’s just about closing this gap.
I’ve had this conversation with a few people before – and I hate to use these words, but I will use them as they came from a developer’s mouths and not mine – there’s not enough ‘good talent’. There’s plenty of people that have experience and have developed but they’re not focussed on self-learning enough, learning new technologies – and I’d say the big thing is learning why things are done. You could be working for a big company working on fantastic projects, but it’s a question of ‘why are we using this method?’, ‘why are we working in this way?’…
…why are we even building this at all?!
It’s a really big question, and that’s something we really focus on at Softwire is that customers will come to us with specifications saying ‘this is what we need’, but we won’t work on it until we understand what business problem it will be solving. That will shape the best way to deliver the technology.
Yeah, and I suppose a major thing – it comes down to best practices doesn’t it – you want to keep everything as simple as possible. Don’t build another product if it doesn’t need to be built, don’t build things for no reason just to say ‘look what we’ve done!’. That’s what side-projects and self-learning is really for isn’t it? It’s a really big challenge the industry’s going to have to face isn’t it.
I think that – going back to school – this idea that you can sit there in school, and you can do one year, do the next year and then you do the next year and you progress automatically just by turning up. I think that’s a really dangerous assumption and paradigm to be living by in the world of work. I totally agree with what you’re saying that you have to go out and be driving your own learning, that’s very important.
I think it’s that general attitude no matter what you do day-to-day for work. Recruitment’s obviously a big one for me because recruitment is such a hire and fire way of working. People turn up for six months, found out it’s not for them and then they’re gone – they just jump around at different agencies six months, six months, six months etc Here you go, here’s a list of people you need to call until someone says yes. A, for a start, that’s boring. And B, I benefit so much more by speaking to people like yourself, going to meet-ups, going to the GA and speaking to thirty juniors and be asked questions that I won’t get from senior developers who have interviewed at lots of different places. Those questions make me think! In terms of development, looking outside the box will benefit people so much more, and then in terms of education – I think one for that is, are they actually teaching people skills they’re going to use in a day to day environment. Again, across education, people say that a lot – ‘you’re taught how to pass a test, not what you’re doing on a day-to-day’. I think with CompSci, most of the roles around aren’t going to be reflective of what you were doing at university.
Yeah, exactly and university has always been years behind anyway.
I can’t imagine university courses teaching React and Redux, that would be crazy.
Well they probably will in five years time, when everyone’s developing with something else. It’s just a different environment. Something else I believe is that the best way to learn is to do the job and use it, not to set aside learning time where you’re just learning…
…pure kinaesthetic learning, learn as you’re doing.
So you hire lots of interns and graduates – how do you find it? I’m assuming most of them come from a CompSci background.
Well funnily enough they don’t!
Do they not?!
We do generally recruit from a STEM background, but actually the degree we hire most from is mathematics, and then we do hire from physics and CompSci, but then we have biologists and chemist and philosophers and people who do all sorts of different things, because we’re looking for people who think in the right ways… and are interested in solving problems and see them as a challenge and that’s quite fitting for mathematics. We don’t find computer scientists have an advantage.
Commercial programming, everyone has to learn it all over again.
Really? Wow. It’s interesting if CompSci doesn’t have an advantage generally.
It’s just learning, you have to be working. I personally really like the new scheme of apprenticeships. I think people will learn more quickly writing code. That’s not to say you can’t be writing code in your spare time at university but that’s not to do with the course you’re on.
It makes it real doesn’t it?
It’s like playing poker with matchsticks isn’t it?
That’s a good analogy!
So software engineering is a broad term, when they (interns and graduates) go in, do they just do a bit of everything and then find something they really like and branch up that way? Or do they already go in with the idea of wanting to do more front-end stuff or back-end stuff?
No we’re completely different from that. We hire everyone as a generalist – so we look at people who can learn new programming languages quickly. So for us, people come in and we expect them all to be full-stack developers first off, but we also expect them to work across multiple technologies. So our standard model is ‘everyone is a generalist’. We find the kind of people that we hire tend to enjoy that environment, they enjoy learning new things – and a little bit going back to what we were talking about earlier – if someone wants to specialise, we had one guy that wanted to do only Java so we said ‘sure, we’ll try and put you on all our Java projects’.
And I’m sure that builds a very strong developer as well?
Yes, and it delivers a really good service to our clients. If we were just a Java house and a client asks what technology we should use, then we would say Java. Because we’re all multi-skilled, they ask us what technology to use and we say what’s the problem, what resources do you have – and then we can advise on that.
The way people developer their careers at Softwire is they follow two paths: either they become a project manager and specialise in understanding the whole project, understanding the clients requirements and enabling the team, that’s one path – and you can obviously do a lot of learning down that path; or you can go down the technical lead path. So you can develop as a solo developer for a certain amount of time, but we find that to really stretch people and do more you need to really take on a leadership role working with others. So people at Softwire either become a project manager or a tech lead that means they’re responsible for deciding what platform they’re going to use, deciding/helping people train (because people are always training at Softwire) so that comes into it as well. If you’re senior, you help people who are junior.
I suppose something I wanted to bring up is that the reason I wanted to have this conversation in the first place is that when I saw you speak at Insurtech Conference 2017 and you said ‘engineers hate being told to do something when there’s no reason for it’
I think a) that’s 100% true, and b) it’s about companies getting the mind-set of who they’re hiring and why. I could speak to 100 developers in a day and sell a company and say ‘it has bean bag chairs, a ball pit pool’ whereas most engineers I know say ‘is there flexible working, is it going to pay me enough and is it interesting technology?’
I think that the challenge is, with everything, is that it all depends on your perspective. I have spent my whole career working at Softwire, which is a small company, and it’s a small company set up with a culture of learning and a culture of caring about employees and thinking about what makes people happy – obviously with an engineering focus because that’s what we were all doing. I came up through that background and then taking up positions of responsibility where it’s suddenly my job – sometimes I say my job is half MD, half Chief Happiness Officer. It’s so important to the business that people are enjoying their work and want to stay with us. I would salute any company that would go out and buy a ping-pong table because they care about retention of staff and people are happy. That’s a great start right? It’s better than nothing!
It’s the notion isn’t it?
Yes, but human beings are sophisticated and complex creatures – and you need to think hard, study things and look for feedback, and then iterate on that feedback. Again, so for me it’s so obvious that I wouldn’t implement something without asking, particularly to make people happy, to see whether it’s something people wanted or not. Even if it’s something people say they want – we have a gym, and the people that say they want a gym versus the number of people that use the gym is different…
I think that’s a normal thing with the gym isn’t it?
Yeah, so what I’m saying is that you should ask people what they want, but you should also monitor and see whether people use it and are happy with it. It might be that people thought that they wanted it but it wasn’t the right solution. You just need to have that level of engagement, but I do feel that everyone will work that out for themselves if they work about it and care about it. There’s loads of books on culture, various ideas – it’s just important to listen to the feedback.
You’re right, if you do put something in – even if it’s not perfect – it’s the idea of trying to do good things. You would want to work for a company that’s trying to do good things for you, even if it’s not always perfect.
Yes, exactly, and I think what people are most concerned about is if there are cynical attempts to say, fob people off with a ping-pong table. That’s just because people do actually read intentions really well. Not all ping-pong tables are equal. It just goes back to treating people as human beings.
Do you have a ping-pong table at Softwire?
We do have a ping-pong table.
Does it get used?
Not as much as our much as our pool table, table-football table or our electronic games room – actually we have several because people like to play different games.
Wow… are you hiring recruiters?
Haha! I mean, this is all done through what employees want. We have a delegated budget and a morale officer – who’s elected, and not senior management. They get to choose, what are quite substantial budgets, what to improve on – and they have to do that with reference to the employees.
I love that, I think that’s amazing. The notion of finding exactly what it is that makes people happy is huge. It rolls back to what we were saying before – it reflects on Softwire as a company so well. Somewhere like Softwire that prioritises people being happy, as well as always learning, as well as picking up new technologies and skills is massive. You must have great staff retention because of that?
Yeah we do.
Well you’re a good example.
I’m like, the best example. Also, everyone who’s senior in the company has been there a long time.
But despite all of that, what could Softwire do better?
Oh gosh. Well back to continuous learning and improvement, we are always, always thinking about this. If there were ideas that I knew about that we were just missing, there’s not a lot I can do because I don’t know about them and if I did know about them I would obviously do something. So a lot of it is finding interesting ideas, finding how other companies do things, finding if there are better ways to do things. Then also, continuously adjusting what we do and working out what works better, what works less better. Communicating more and communicating better – the bigger you get the harder it is to communicate. People all in the same room is really easy to be on the same page, almost by osmosis. Once you get to the 150 people, you need to put more effort into communicating why decisions are being made, what the thinking is going on behind decisions, what’s coming up, where we’re heading in the long term. For us, that’s what we’re really focussing on.
Is there any specific that’s catching your eye? Things you feel that companies are ignoring a bit?
Well for me, the thing I think we’re missing most is purpose. I think that if you look at what you need to make a workplace fulfilling you start off with the start of perks that we talked about like a ping-pong table, then we have general democracy and how you treat people, then you have interesting work, career development and learning new skills, then finally you have purpose. You can do all of those things, but why? Why are you doing those things, why are you bothering to come to work to learn skills to get better at work, what’s it for? That’s something we really struggle with because we kind of just do it because we can.
There’s not really an obvious solution to that is it?
We’ve been talking to a really great agency lately called Kin&Co about looking into what we do to try and uncover – because we all do it so there must be some reason – and looking further into that and understanding it from the inside. Also thinking about that we have this group of amazing engineers what do we want to achieve. Could we be doing more than we are doing right now?
That is a difficult one. Would you ever consider not-for-profit?
We’ve started doing quite a bit of pro-bono work and that’s fantastic. We’ve really ramped up that work over the last few years. We’ve worked on a few really cool projects recently – we made a site for the NHS that allows doctors to go and volunteer over-seas. Charities can say I need a doctor to work in Ghana or Somalia for example and doctors can go and say I’ll take a sabbatical and go and do this job. It gives us a chance to give back to people.
That’s fantastic. When you’re in that position you’re in, giving back is maybe the purpose – or at least a small part. Does there have to be a purpose?
If you’re looking at making work fulfilling, then I think it’s important for people to know what they’re contributing to by being part of this organisation. A good analogy is a solo writer, or solo poet or solo artist, your contribution is clear because it’s your artistic drive. If you’re a writer as part of a team, say, a sitcom and you don’t know what the group purpose is, it’s not going to be very fulfilling. I think that’s when it changes – people write code on their own, great, they can do it for the love of writing code, or for their own purpose. If it’s a large group of people, I think they need a group purpose.
I mean, sometimes a big sell for a role is working in a role where you can see the direct impact your work has on a customer or client. It’s that purpose – ‘I managed to convert this technology to this’ or ‘my work meant a million more people used this product’. Maybe that’s part of the purpose, being able to see a direct reflection on what you’re doing – what are your thoughts on that?
I mean, in the general sense I completely agree with you, in a specific sense this is getting quite deep into conversations we have at Softwire. There is purpose if you are working on a particular project that is then creating a site that’s going to do something, for example, the NHS site for foreign volunteers. You can see the results that’s going to have on the world, but if you are in a role where you are building a company, there’s no unified purpose across all the projects.
Yeah, I understand. Maybe – in a slightly pessimistic way – that’s just the nature of a software building company. It might just be an inevitable con, I suppose.
That totally makes sense. Although going back to the original question of ‘what could be better’ – we don’t give up. So if something could be better, we’ll keep thinking about it until you find a way.
I suppose as a team of engineers, finding a solution to a problem is what you’re best at!
I think I’ve asked everything I wanted to in regards to engineering and hiring, but I did do a little Google of yourself and there’s a couple things I wanted to ask there. First of all – I heard you’re an exceptional Backgammon player?!
Yeah, I am the ladies world champion 2010.
How did you get into Backgammon?
Well, it started because my husband really likes playing Backgammon. We knew how to play when we were younger but there was an open source Backgammon computer that came out called GNU and so my husband would play against that and I would watch and think ‘ah that’s quite interesting’ and when you play against high-level players you start to see those patterns and it feels a bit like magic. You can see they’re doing something, but it kind of sneaks up on you. So we started going to a Backgammon club in Stoke Newington and they had really strong players so we learnt a lot. Then we started going to international tournaments including the world championships.
And you’ve also written for The Guardian, Huffington Post?
Yeah, so I did quite a lot of blogging maybe four of five years ago. I quite like writing, I’ve also written three books.
I wrote about the kind of stuff we’re talking about now called Galvanizing the Geeksabout managing software teams and then I wrote a book about networking because it was totally alien to my experience at Softwire and then I discovered it and I thought ‘wow this is amazing!’. Then other than that I’ve been working as an actor for three years, so I wrote a book about my experiences on learning to act – that was quite hard.
I can imagine! How did you find it?
So it’s difficult because I came with the principles I got from software development of ‘it’s best to learn on the job’ but whereas with software development where there is such a demand for developers that you can get a job, with acting there are no jobs, there is no money, even if you’re super-skilled and super-experienced. So actually, even finding opportunities to find to work and train is really difficult – but I used a lot of my skills in my day-job. Project management is a lot like producing, I started producing my own shows and films – taking every opportunity.
That’s amazing – you’ve worn so many different hats. Weren’t you also part of David Cameron’s delegate?
Yes, in 2013, I think it was? That was through networking. That was through a lady who I’d been introduced to by someone else that spoke at an event I ran.
You’ve had such an illustrious career! When I write this up I’ll certainly let you proof read it first as I imagine you’re a much better writer than I am! Thanks so much for your time Zoe.
Facebook: RedCat Digital
Google+: RedCat Digital