Making a difference
We have excellent relationships with our clients and are able to really make a difference to the success of their projects. That’s what I enjoy most about working at Scott Logic. There are really good opportunities to work on enterprise-scale systems in interesting business areas. I like the simplicity of Scrum and our focus on delivering business value.
Our team is distributed so we always have a couple of meetings each day to catch up on progress and plan future iterations.
I’ve been working on a proof-of-concept search platform where I’ve been able to drive technology choices and architecture design. We’re breaking new ground for the client and solving problems as we go, which has been a great challenge. You get to learn a lot in a short time, and also see new opportunities emerging for delivering valuable new business features.
Run towards a challenge
Since joining Scott Logic I’ve learnt a valuable lesson – don’t ignore the anomaly! It can be an interesting challenge to find the explanation of an unexpected log pattern during development, and so improve the design. In production, it’s usually a lot less fun. Working with lots of smart people can be intimidating as well as stimulating – remember they don’t know everything and neither do you!
My role is varied depending on the client or project. It usually involves defining the key elements of a system, making technology choices and setting the technical direction for the project. There are usually constraints on the technologies that can be used in a project, or the system has to integrate with pre-existing services and infrastructure, so one of my responsibilities is to get to grips with those and chart a path through.
It’s common for TAs to be involved for short periods while a project gets established, or to be part-time across two or three projects. For my current project we’ve had to work out how to integrate an open source product with the client’s security infrastructure, and design a distributed platform that will both be resilient and performant.
My days usually begin planning what Sprint tasks I need to focus on, though the system I work on is a large customer-facing application so I’ll also check that no significant production incidents have been raised overnight. My role on a project is to understand the high level requirements of the client and its technical landscape so I can create the technical vision for the solution so key decisions can be made.
I juggle between development tasks, helping members of the team to debug issues, carrying out code reviews and helping design new features. Along the way I also read up on interesting technologies and take part in lunchtime study groups.
Certainly not second choice
I got into software development slightly by accident. My degree was in Physiological Sciences but after deciding not to pursue a career in research I was looking for an interesting alternative. I enjoyed maths and problem solving so joined a graduate scheme for grads of non-computer science courses, and was fortunate to learn C rather than Cobol!
Inevitably, you have to pick up a lot of new things in a short time, which is one of the things that makes the job both challenging and fun!
Read more software stories here, or visit our careers blog here.