We caught up with one of our graduates to find out about their next steps after CodeClan.
Peter works as a Support Engineer with one of our employer partners, FreeAgent, an Edinburgh-based company helping freelancers and small businesses to manage their finances through their app.
What were you doing before you started at CodeClan?
I did History, Politics and Economics at A level, then I went off and did a History and Economics degree in Manchester. I graduated there and came back home, had a couple of odd jobs, but a History degree doesn’t really set you up to go anywhere.
What’s does your role as a Support Engineer involve?
I look after the Ruby on Rails application that helps small companies and sole traders run their businesses.
There’s a support team of around 25 accountants and trainee accountants who are the first line of support for customers on the accounting side, so they take calls just for the basic technical questions. For anything more complicated, they pass it through to us support engineers.
There’s a team of three of us. We’ll answer almost any query, ranging from a simple question about someone’s account that we can answer quite quickly, to something that’s a bug or an issue that we need to link up with the engineering or compliance teams to work through.
My job isn’t building anything, it’s reading the code and seeing where it’s gone wrong, then collaborating with other members of the team to get it fixed.
What’s a typical day like for you?
We have a stand up each morning, but because there’s three of us we really sit down. We’ll all have things on the boil that are ongoing, but generally we’ll get together and dive straight into tickets, which means an enquiry that’s been passed over from support to us, and then we’ll start investigating that.
Around 90% of the time the tickets are routine, from telling someone to clear their cache and cookies, to applying a script that’s already been written and that we can find in our internal wiki.
Sometimes you’ll find a problem that hasn’t been seen before, so there’s no reference to go back to. We assess how big the problem is and occasionally we need to get an engineering team involved. We might find out who wrote the code or who’s most suitable to fix it.
Also, if we can, we’ll develop some further tooling to add to our internal wiki, which gives us an opportunity to solve problems for customers a little quicker the next time, and gives us a chance to develop our skills.
It sounds like you work quite collaboratively?
I think support is one of the most collaborative areas, because between our support and engineering teams we’ll talk to each other and say “Have you seen this recently?” or “You saw that last week, how did you deal with it?”
Sometimes it’s a case of nobody’s seen it and you’re going to have to put on some headphones and dive into it, but very rarely do we go front to back and fix something. We’ll get other support engineers involved. We’ll narrow down to the general area where it is and we’ll hopefully generally find the line which has gone wrong, and between us we’ll work towards getting it fixed.
Assuming that takes up most of your morning, what happens later on in the day?
We play pool from one till two and then I’ll squeeze in a sandwich!
We’re really flexible. If there’s a real show stopper we’ll make sure that gets triaged and the motions go towards that if it affects everyone. If it affects one person that’s really bad but we might try to fix it over a longer stretch, it’s all about priorities for us.
Do you ever work late?
If there’s anything really bad we’ll make sure we’re there to fix it, or it’ll get passed on to a dedicated operations team that deal with the infrastructure. During the working day we’ll try to collaborate with support so they don’t get lots of tickets to say it’s broken.
Generally we’re not working late or on call, but if there’s something that’s a showstopper we’ll hang about.
Do you find you’re always learning new things?
In my role I’m learning on the job a lot. I won’t go too deep on an area of the app unless there’s an issue. A lot of the time I’m learning around a bit of code which is causing us issues.
In terms of skills development, we have an engineering forum once a week, where all the engineers get together and we’ll do a retrospective of any instances and people involved can explain what happened. People talk about new engineering topics like if something gets introduced to the language.
How well do you feel the CodeClan course prepared you for the job?
I didn’t know Ruby existed before I started at CodeClan, now here I am working in the language, and the exposure to it, along with all sorts of other technologies, was one of the great things about CodeClan.
When I started and the app’s codebase was put down in front of me it was a case of “Find the problem” – I didn’t feel totally overwhelmed and I was able to go and look at it. I didn’t feel out of my depth on day one.
I genuinely found the course enjoyable and that made it not like learning. When you’re at school and in a classroom environment, everyone is a bit reluctant to go, but going back to do something you really wanted to do was really eye opening and I wanted to learn everything.
Because you enjoy it and because people around you are enjoying it, you take so much more out of it. You’re surrounded by people who had made the same choice, they made the investment to go and everyone is in the same boat.