I did a 12-week internship at Softwire after my third year of Mathematics and Computer Science at Oxford. Most of my previous programming experience had been course work at university, so this was my first proper encounter with commercial software development. I’d always known that software development was what I wanted to do as a career, but the internship definitely confirmed that!
The project I worked on involved extending Umbraco, a content management system used for creating websites in a simple, easy to understand way. We wanted to allow users to create custom ‘challenges’ where people could upload scores for various events and be compared against other people on leader boards, in the process, winning awards and trophies for their teams. We integrated it with other sites such as Twitter, Instagram and Flickr. I started by working on designing a database and implementing an API (interface) for it. I really enjoyed doing this from scratch and working out how everything tied together, and I also learned a lot about writing clear, easy-to-understand code.
Later in the project, I became the team’s expert in Amazon’s cloud storage platform, Amazon Web Services. I spent a lot of my time understanding how cloud services work so I could deploy our sites with an automated process. This was very new to me, as I had done nothing like this before, but it was really rewarding when things started to click into place, and I always had somebody to ask for advice if I needed it.
Softwire really helps you improve as you work here, too. We had two weeks of training before we started the main project and, over the internship, our tech lead gave us talks on many parts of software development, including topics such as source control and design patterns, which really helped us improve the quality of our code.
Outside of work, it was enjoyable too. There were loads of social events, some of the highlights being trampolining and the company picnic, which were all great fun.
I really enjoyed my time at Softwire. Everyone is very nice, and people are keen to help with any problems you may have. It was also a great learning opportunity, and the things I learned will definitely have a positive impact on any programming job I have in the future.