Life as a Software Developer

Q: What did you study (and where), and what attracted you to work at Calnex?

I studied at Glasgow University. At first I studied Electronic Engineering, but that didn’t work out too well. I transferred over to Computing Science and enjoyed that far better, eventually getting a BSc After that I worked with a few employers over the years, including DEC and Agilent before joining Calnex in February 2014. I knew a few of the people working here and knew that they were good people, good to work with and good at producing quality products, so it seemed like a great fit. Also, it was under five miles from where I lived!

Q: How long have you worked at Calnex and how has your career developed?

That’s about – what – five years now. Wow… Since coming here I have picked up some larger areas of responsibility. I started off working as part of the team helping to design the software side of our new platform; since then I have worked through the implementation of that design and am now Tech Lead for the software component that implements the calculations in our instruments – the code that converts raw data into measurement results that make sense to our customers.

Q: What is it that motivates you in the morning and gets you energized about your role?

I just love making computers do a thing that they couldn’t do yesterday – it’s pretty much that simple.

Q: Talk us through a typical day for you at Calnex?

Tricky… days tend to vary. But there are sometimes a few fixed points that the day wraps itself around. I normally start by checking the overnight build status, to see whether everything is running smoothly. Then around 10am I often have a “stand-up” meeting, were the development team gets together to check in with each other, to talk through anything that’s causing problems and to make sure we’re not doing work that clashes with each other. We have a great restaurant here, so lunch is sacrosanct – unless I’m going for a run round Linlithgow Loch, which can be a pretty place for a run.



Q: What tools or skills do you use in your typical work day?

Day to day, I use Spirent iTest to develop the automated tests for my product line. It primarily uses TCL but we also use Python scripts to improve our testing coverage. We use an SVN repository to store all of our automated tests, so may need to use it when we are committing changes or needing to merge in new test code. I use Microsoft Excel for the Test Plans created for the projects, and Word for any Test Summaries that are required at the end of testing. I regularly use lab equipment, such as Oscillators, Frequency Generators and Ceasium references during the testing of the products.

Q: What do you enjoy most about your job?

I think it’s the same as the answer above – making things work. It’s like a jigsaw puzzle, with a great sense of achievement at the end of it. But also, it’s a good place to work. I enjoy our weekly Pilates class, and various other staff events throughout the year.

Q: Most challenging aspects of your job?

The area of code that I am responsible for provides services to several different Calnex products. I have to try to track the differing requirements of these projects and their various timescales to try to provide each project with the features it needs at the time it needs it. That can prove quite challenging!

Q: What skills do you need to succeed in the job?

The starting point is a decent knowledge of how computers work and the usual software engineering skills of design, coding and debug. But that’s only part of the job. As my role moves more towards a leadership one I am having to learn much more about planning work across various team members, and working closely with a variety of product teams. I am also having to learn something of the maths that underpins the calculations we perform, and all the while still trying to keep up-to-date with what is happening in the world of computing. In many ways my hardest task now is learning that I can’t be working on the code most of my time – that’s not coming easy to me!

Q: What has been your biggest success at Calnex?

Tricky question – I think I would say that it was the Jitter Tolerance measurement. In that I worked “full stack”. I wrote JavaScript / AngularJS / HTML / CSS for the GUI, wrote C# RESTful services on the server side, SQL to interact with the database, and after a complex state machine (that I even documented!) was at the level of using Protobuf to communicate with the hardware interfaces. That was undoubtedly one of those occasions where I was glad to have done the design work ahead of time!

Q: What piece of advice would you give to anyone who wants to work in Engineering?

Study, and do well in your degree, but don’t stop there. Be interested in computing. Ask “what happens if…?” and then try it. Play with computers, experiment, try things. If you use an app that does something funky, learn how it does it.

Q: What do you do for downtime?

I run a bit, and take some photographs. I also take part in amateur musicals – that consumes all the free time I have and more!

HOW CAN CALNEX HELP YOU FURTHER?

Click your area of interest below for more tutorials and real-world case studies.