Lotte Cutts: A career in Computer Science, "mistakes can often be your biggest asset..."
1 June 2015
Photo: Lotte (centre) supporting Sky’s stand at The Big Bang Fair (photo credit - Big Bang Fair)
The first time I found myself confronted with a command line terminal was a daunting moment. Like the computing equivalent of a surgeon's first live patient open on the operating table, with access to the guts of the system it can feel like there's so much more that could go wrong than could possibly go right. What if I accidentally wipe the hard drive? What if I mess up the settings and end up locked out of my own computer? What if I delete the entire production database?
Learning not to be afraid of mistakes is often easier said than done. But once you realise that mistakes can often be your biggest asset, you have to learn to embrace them. This has been a tough, but immensely important, lesson to learn since leaving school, and for me has become something of a theme over the last couple of years.
In Software Engineering, a lot of emphasis is placed on this idea of adapting and learning from imperfection. Spend any time hanging around a modern software company and it won’t be long before you hear terms like “fail fast”, “retrospective”, and “Agile” entering conversation. It is recognised that change and failure are almost inevitable during a project, so we design our processes so that this volatility is an expected part of what we do, and make ourselves as adaptable to it as possible. But the really important bit comes when we go beyond simply getting back on track, and instead recognise and exploit any bumps in the road as the most valuable and relevant learning tool we have, allowing us to get stronger every time by more clearly understanding which track we should actually be on.
As well as putting these ideas into practice in the way we build software, people are also starting to think about how we can make the software itself more adaptable. How can we build software that learns from the things that go wrong? That can make itself stronger the more you use it and the more stress you put on it? This was the subject of my MSc dissertation, and something I’ve therefore had to think quite a bit about, but whatever the technicalities of building such software, the basic idea is the same: things rarely go according to plan. So make that part of the plan!
I had quite a different plan for my career when I was at University, as much as I had any plan at all. I studied Physics, specialising in Astrophysics in my final year, and while I loved (and still love) the subject and immensely enjoyed my time studying it, it became clear by the end of my degree that I wasn't going to be continuing in academia and inhabiting the picture book role of "scientist" that I'd imagined for myself since I was small. Having whizzed through school, I found myself for the first time with much lower grades than I'd been hoping for, and having to rethink my next steps.
So, having enjoyed a short computing module in my final year at University, I decided to give coding try. In the last 3 years I’ve gone from complete beginner to completing an MSc in Computer Science, and into a job as a Graduate Software Developer at Sky via their Software Engineering Academy. It's all been happening fast, so I have to learn fast, and inevitably I am constantly getting things wrong. And so I am constantly progressing.
Whatever your project, from a piece of software to your career itself, keep this in mind: try stuff out, make the mistakes sooner rather than later and get feedback as early as possible so that as much of your time and effort as possible goes into creating value. A perfect, detailed plan is loaded with assumptions and guesses, and when something unexpected inevitably happens human nature will see us looking for somewhere to place the blame, rather than for which of our guesses might have been off the mark. So start with fewer guesses, and leave yourself open to change. Assume that you won’t get it right the first time, and a fear of failure can’t hold you back. In the end, no one ever figured out what to type in a command line terminal by never typing anything at all.
Lotte Cutts joined Sky as a Graduate through Sky's Software Engineering Academy, one of the many initiatives which make up Sky Academy, a set of initiatives that use the power of TV, creativity and sport to help young people unlock their potential. Find out more at sky.com/academy
Photo: Lotte (left) supporting the WISE stand at the Big Bang Fair 2015