A professional and proficient Senior Software Engineer possessing considerable experience in application development. Well organised, objective and diplomatic, displaying a positive attitude working collaboratively with a broad range of colleagues, stakeholders and customers.
Senior Software Engineer - Nationwide Building Society, Mortgages
October 2020 - present
Working within a specialist mortgage team on a mixture of both mature and newer microservice Web Apis, stability and maintainability is enhanced alongside new functionality, whilst adapting to changing requirements. Stories are refined and planned using scrum, typically releasing following a fortnightly beat.
- Delivering features using TDD following GitHubFlow with C#, Jenkins and BitBucket\GitHub
- Daily coding and shaping of the latest mortgage offering to allow potential customers to self-serve their mortgage journey end-to-end
- Investigated using GraphQL (GraphQL.Net & Hot Chocolate) for new MI reporting
- Used ELK stack for logging and monitoring via Kibana and watcher alerts
- Services hosted and managed in AWS running on Kubernetes with Docker
- Assisted a learner on a technical development program towards becoming a full-time junior C# developer offering continuous advice, mentorship and guidance on best practices
- Contributed to ongoing experiments to improve the teams’ way of working
Senior Software Engineer - Capita Travel & Events
Dec 2017 - October 2020
Daily coding in C# with VS, Git/Branches and ReSharper within an agile environment with NUnit, MOQ and Specflow. Stories are developed alongside the product owner and testing team and managed through Azure DevOps; delivering robust solutions with high confidence.
- Transitioned various applications and components into Azure Build/Release pipelines for Continuous Integration and Deployment, including Checkmarx Static Code Analysis phase
- Introduced the async task pattern from top to bottom within core components of our API to improve throughput and responsiveness, reducing processing time of requests
- Continuous Integration/Deployment using TeamCity CI and Octopus Deploy, together with Azure DevOps build and release pipelines
- Daily development using C# with Git and feature branches using SOLID/OOD and TDD principles
- Integrated Application Insights to all components in our Api to better analyse usage/timing metrics
- Responsible for re-engineering a legacy system into a RESTful Web API
House Renovation / Career break
May 2017 - Nov 2017
Remote Senior Software Engineer - Biomni Ltd.
Sep 2015 - May 2017
Developing in an agile environment of 10 developers with both Scrum and Kanban, bug fixes, features and enhancements were delivered through full remote pair programming, employing C# TDD with NUnit, Selenium web testing and continuous integration.
- Full stack development with C# and MVC 5, jQuery, TypeScript, .Net and EF 6
- Collaborated closely with other team members to plan, design and develop robust solutions
- Daily development to company standards of clean, maintainable and reliable C# code based on complex business logic through the use of both SOLID principles and unit/integration testing
- Involved in the design of the UI to ensure it’s easy to use, clear, functional and responds quickly to user interactions
- Contributed to the development of a Rest API using Web API 2 controllers, together with OData 4 endpoints. Swagger UI was used for both documentation and the API visualisation / interaction tool
- Reduced duplication of view content and increased reusability of UI elements by splitting views into smaller components using Partial Views. This made the parent view simpler to understand and allowed larger UI elements to be viewed in isolation
Freelance C# Developer - Herald Chase Ltd.
Mar 2015 - Jul 2015
Designed and developed a multi-threaded C# WinForms application for cleansing, manipulating and de-duplicating name and address data. This was used internally by the client and as a commercial offering to their customers.
- Reduced frequent processing of data files from days to minutes
- Created a full user guide for the application and provided training to users
Senior C# Developer - Concorde
Feb 2014 - Feb 2015
- Developed solutions to complex programming scenarios using C# with OOD/SOLID principles and MS Unity for dependency injection
- Learnt Angular JS and implemented a Single Page Application to consolidate multiple data intensive aspx pages. This minimised data transfer thereby drastically improving response times and allowed a more interactive UI to be designed without affecting performance
- Utilised Web API 2.2 OData endpoints preventing the need to write custom code for common querying/filtering scenarios
SC Cleared Lead C# Developer,
Commercial Medicines Unit, Dept. Of Health
Apr 2008 - Jan 2014
Technical lead and senior C# developer for the design, support and delivery of complex business applications within the department, including hands on configuration of components such as IIS and TFS. Mitigated risks and issues for responsible systems and performed code reviews of the specialist IT contractors. Liaised with a broad range of stakeholders, colleagues and customers.
- Delivered on time and to budget a C# Windows Application utilising ClickOnce deployment. This allowed pharmaceutical suppliers to tender against NHS contracts for secondary care medicines
- Re-engineered several large C# ASP.Net web applications to adhere to best practices of OOD and SOLID principles
- Migrated four Classic ASP web applications to C# ASP.Net delivering a better development environment, improved performance and fully integrated debugging support
- Consolidated C# code into shareable assemblies to reduce cost cutting concerns and provide consistency across solutions
- Reviewed both high and low level technical documentation and liaised with external stakeholders during the department’s transition to a new IT infrastructure and estate
- Successfully delivered numerous developments by quickly building rapport with, listening to, discussing and motivating others critical to the project’s success
C# Developer - Goodman International
Nov 2006 - Apr 2008
Responsible for developing and supporting in house applications for both the web and desktop. Involved in all aspects of the development lifecycle including engagement with stakeholders.
- Streamlined and improved the management of hospitality arrangements for the 2007 Rugby World Cup by developing a web application to capture attendees’ details, requirements and print invites and guest lists.
- Delivered ahead of schedule contact data for a new CRM solution by designing an innovative Windows application allowing the fast merging, cleansing and reformatting of duplicate records.
- Increased efficiency of daily tasks by developing various lightweight Windows applications.
- Contributed to the improvement and quality of a web based service desk by fixing bugs and developing new functionality.
Developer / IT Manager - Herald Chase Ltd.
Nov 2000 - Nov 2006
Provided consultancy and development on IT solutions that helped the IT department grow and perform more efficiently, working directly with the directors and customers to ensure projects were completed on time and to budget. Responsible for providing web based services to customers for the first time and for computerising many paper based systems.
- Increased customer satisfaction and retention by creating a highly personalised and dynamic online ordering system for Zurich International using C#, ASP.Net and SQL Server.
- Delivered real-time stock reports, stock management and resource planning by developing a stock control system for Henley Management College, utilising C#, ASP.Net and SQL Server.
- Fully computerised the companies Invoicing System to dramatically speed up the recording, management and invoicing of all contracts undertaken using Access, VBA and Reports.
- Transformed the goods-in process by fully computerising the logging, checking and notification of all stock deliveries to the company. SQL Server, Access Forms, Active X controls and Outlook automation were used.
- Increased productivity by an estimated 25% in daily tasks by reducing the time required to cleanse, manipulate and improve client data by creating a range of applications using SQL Server, Access Forms and VBA.
VBA Developer - Talisman Direct Marketing Ltd.
Sep 1999 - Sep 2000
Responsible for the data cleansing and manipulation of client data, deleting mistakes, fixing errors and reformatting to client expectations.
- Produced a range of tools that were used daily for the importing, manipulation and exporting of client data into numerous formats. Extensive VBA coding in Access and Excel was used to perform these tasks.
- Helped define, develop and manage a fantasy football league for Mortgage Express using VBA to import weekly football results from players, generate league tables and email the tables to all the players.
- Used VBA to automate a variety of daily tasks between Access, Excel and Word.
University of East Anglia: BSc (Hons) Business Information Systems
Denefield School: 3 A Levels and 9 GSCE’s