CV
I’m Anna, a Senior Software Developer with Tech Lead and line management experience. I like working in collaborative, cross-functional teams, implementing processes to enable the team to deliver and solving complex problems. I’m particularly interested in serverless and event driven architecture, preferably in TypeScript and running on AWS. I’m passionate about tech for good and in particular coding in the open.
Experience
Driver Vehicle Standards Agency (DVSA)
2020 - present day
Recently re-joined the DVSA’s central payments platform, which is relied upon by high-traffic services, such as the MOT and theory test, processing various payment types, and provides detailed financial reporting to the business.
- Decomposing from a monolith legacy PHP application to a TypeScript serverless event driven application.
- Writing reliable, well tested code in TypeScript
- Maintaining PHP legacy codebase
- Understanding of database schema and using Object Relational Mapping (ORM)
- Using Jenkins and GitHub Actions to automate build, test and deploy of the code for a continuous integration workflow
- Extensive use of Amazon Web Services, writing Lambdas, using SQS and experience designing and implementing serverless solutions
- Writing infrastructure as code with Terraform
- Communicating technical solutions and project updates to technical and non-technical stakeholders
Tech Lead on a team tasked with a short-term modernisation project for a serverless Javascript application that enables the management and payment of roadside fines. The application consists of a public facing website, an internal website and a backend API which is consumed by other applications in the business, including the mobile application for road side enforcement officers.
- Was tasked with “sorting out the project” and I worked out with very little guidance how the application worked and what needed to be done. As the app had been built by an external supplier, it was important to understand the project and build knowledge internally
- Updated from end-of-life versions of NodeJS and the associated AWS Lambda runtime, including updating and replacing/removing dependencies
- Became the domain expert on the app by working through NodeJS upgrades, fixing long-standing business-critical bugs, enabling a representative local test environment and supporting the enablement of end-to-end testing from GitHub Actions to our private environment
- Implemented a continuous integration and release process using GitHub Actions and AWS to automate testing, linting, security scanning, packaging and deploying with automated release notes
- Produced more comprehensive documentation around lesser understood aspects of the system, including defining some long-term strategy around areas of focus as part of handing over the service to the long-term owners
- As Tech Lead, coordinated the production release processes with stakeholders
- Set up a lightweight Scrum process to allow stakeholders be kept in the loop the teams progress within a familiar agile framework. Working within a small team of three with short deadlines and quick releases it worked best for the team to be able to move quickly with changing priorities - we were able to prioritise the backlog quickly and in short notice and introduce new work on the fly
- Mentored a new graduate developer on the team, helping them understand the project and adding value by contributing to the codebase
- Built out the backlog and technical strategy for the future, alongside input from the Product Owner on long-standing known issues from users and requirements from other parts of the business
- Updated existing Terraform backed infrastructure to align with the agency’s standards and follow security best practices, including hardening the AWS Cloudfront distribution
- Worked with product owner to identify technical risks, prioritise the backlog and provide estimates on feature implementation and bug fixes
Senior Developer on the MOT test application backend service in PHP and Java.
- Writing code to meet government policy that ensures car safety standards are met
- Worked on writing and testing code that deprecated old physical authentication cards and replaced with a modern two factor authentication solution
- Updated legacy code and improving test coverage
Line manager for a new graduate since November 2022. Responsible for onboarding, goal setting, career development and day to day contact. I hold regular one to ones and help with technical and non technical aspects of becoming a well rounded developer.
Previous Experience
2017 - 2020 Imosphere
Software Engineer (joined as junior and promoted)
- Worked on a patient healthcare management web application used in hospitals and long term sick facilities - written in DotNet
- Bug fixing and feature development, with some client interactions
- Database and data migrations, working on moving large, sensitive, datasets into the application with high redundancy
- Built and led an internal project for team building using GraphQL (server and client) and React
- Visited client in America to integrate the software with their existing healthcare data platform
- Updated developer team working to use GitFlow and continuous integration
2016 - 2017 Linney Digital Agency
Junior Developer
- Frontend CSS and SCSS for client websites like Post Office and KFC following strict brand guidelines
- Frontend JavaScript to enhance user experience like form filling
- Backend PHP and DotNet, introduced to Wordpress Plugin development and DotNets Umbraco framework for web development
Technical Skills
Regular Use
- TypeScript
- Git
- Mentoring
- Jenkins
- Terraform
- AWS
- MySQL and DynamoDB
- Unit Testing in Jest (some Mocha)
- GitHub Actions
- Code review and Agile practices
Irregular Use or have used in the past
- Snyk for dependency security management
- Concurrency programming
- DotNet
- GraphQL
- Bash
- Linux
Education
2015 - 2016 • University of Nottingham, MSc Computer Science
2001 - 2006 • University of Derby, Light, Sounds & Live Event Technology
After my undergraduate degree, I worked at a licensed clothing supplier doing license approvals and project management before deciding to career change and study computer science. In my spare time I like to walk my dog, read, keep fit and stay up to date with the latest tech news by listening to podcasts, reading blogs and attending tech meetups.