Senior Software Developer
JAN 2018 - PRESENT
Westfield Health, a not-for-profit provider of contributory health schemes and health & wellbeing products, is currently in the process of replacing legacy desktop business software with a modern, properly orchestrated, microservices & cloud based solution. I have been providing technical leadership for a feature squad developing financial, product and customer management modules. I have also been the sole contributor on a major OIDC based single sign on project. I have enjoyed the freedom of selecting the most relevant and modern technology for each project, including ASP.NET Core MVC, Angular, MassTransit, AWS Aurora, MongoDB and of course Docker.
Senior Software Developer
NOV 2015 - JAN 2018
Utilitywise consumes approximately 100 million time series data observations per day, mainly from on-site proprietary equipment and automatic meter readings, attaches analytical insights and predictions to this data and presents it back to customers in bespoke dashboards. I have worked with the Utilitywise data platform extensively, successfully porting the entire architecture from a legacy, relational backed system to a far more modern one based on the trending big data platform: Apache Cassandra, Spark and Kafka. I have focused my efforts on producing quality and decoupled software that maintains maximum reliability, whilst building efficiency that has been used to augment the system with new analytical and machine learning based features. I have also been a web developer, integrating new data platform features across the full MongoDB, ASP.NET Core microservice and Angular based stack. I have ensured support for continuous integration with high unit test coverage and full suites of integration tests. I have been involved with projects from specification through to deployment.
MAR 2014 - NOV 2015
I was a software developer at Alpharooms, an e-commerce travel agent. I worked in the infrastructure of the fully responsive, SEO optimised consumer facing front end and back office systems. I worked full stack and became a leading producer in my team whilst also enjoying a more senior role towards the end of my stay. Whilst much of the technologies I used at Alpharooms are quickly becoming obsolete (monolithic MVC applications on the full-fat .NET Framework and Knockout on the client) the skills I picked up have been extremely valuable. Everything was running on AWS and it was a constant battle to scale out systems whilst balancing cost with user experience. Security was also a top concern and this fed into some really interesting projects for me at Utiltiywise. This time also introduced me to proper cross business agile development, the concepts and expectations of which I have brought with me.
DEC 2012 - MAR 2014
I was a software engineer in a multi-disciplined team at Technolog; an electronics manufacturer in the utilities industry. I worked primarily with the data infrastructure that supports a network of data loggers and automatic meter reading systems. I developed a lot of internal software here – mainly on ASP.NET and Java with Tapestry 5. I basically learnt to program as part of a team at Technolog, picking up concepts such as the importance of design patterns and test driven development.
JUL 2010 - DEC 2012
After my degree, I returned to Experian Decision Analytics in a more analytical role. Due to my previous experience with Experian systems, I was immediately assigned to a large software testing project. I was solely responsible for creating suitable test scripts, reporting bugs and providing in- depth analytical support to developers. Due to my highly technical approach to projects and support, something that differentiated me from my peers, I became a regular and successful technical contact for training and development within my department.
Systems Support Analyist
JUN 2008 - AUG 2009
As part of my degree, I completed a 14 month placement in a technical role at Experian; the UK market leading credit reference bureau. My main responsibilities were to maintain, schedule and develop a system of data manipulation programs on old school IBM mainframes.