I am an experienced Technical Architect and Senior Software Engineer with a proven track record for delivering high-quality software solutions using an Agile mindset and values. These could encompass rapid tactical prototypes or robust, strategic, enterprise-wide solutions using my frontend, backend or full stack software engineering skills and expertise. I also have experience in replatforming systems to the AWS cloud, as well as modernising them to use AWS cloud native services utilising event-driven and API-first principles.
Languages | Fluent: C#, C, C++98, HTML, JavaScript, TypeScript, CSS, SQL, T-SQL Familiar: Java, Python, PHP |
APIs/Frameworks | Fluent: .NET 7/8/9, .NET Framework, ASP.NET Core MVC, WPF, WinForms, gRPC, REST, AWS SDK for .NET, WCF, MSMQ, MediatR, Dapper, Entity Framework, Autofac, DevExpress, Infragistics, NUnit, NSubsitute, AutoFixture, Fluent Assertions, Win32 Familiar: Web API, Angular, Terraform |
Databases | Fluent: SQL Server Familiar: MySQL, PostgreSQL, Oracle, DynamoDB, MongoDB |
Patterns, Methodologies and Architectures | Object oriented design and programming, SOLID principles and design patterns, domain driven design, CQRS, clean architecture, CI/CD, infrastructure as code, MVC, MVVM, unit testing, service-based architecture, microservices, event-driven architecture, distributed computing, Agile (scrum and kanban), AWS cloud |
Tools | Visual Studio, Visual Studio Code, Git, GitHub, GitHub Actions, Terraform, Docker, OpenAPI, AsyncAPI, Swagger, NuGet, Artifactory, TeamCity, Jenkins, Octopus Deploy, Jira, Confluence, NetBeans |
I am the Technical Architect in the Revenue Management System (RMS) team, responsible for designing, implementing (in conjunction with the RMS development team), delivering and maintaining technical solutions that support easyJet’s revenue strategy (generating £9bn annually). Other duties I perform, include, creating and maintaining architecture documentation, producing and maintaining technology roadmaps, reviewing solution architecture blueprints and high-level designs, providing technical guidance, direction and strategy, technical risk analysis, project management, change management, software development and leading and mentoring the development team ensuring quality is of the highest standard.
My role at easyJet holidays involved working as a full stack web developer, in an Agile scrum team, creating functionality for the Yield Management system. This system enables the trading team to optimise margins and maximise revenue on package holidays.
My role in the Revenue Management System (RMS) team involved working in an Agile scrum team, across the full technology stack, developing and supporting a large feature rich desktop application, to implementing microservices and to developing SQL Server databases. The team utilises continuous integration and delivery via GitHub and TeamCity with code reviews and a unit testing ethos.
I worked in two teams consecutively. The first was in an Advanced Analytics team that undertook research, blue skies thinking, developed prototypes and performed experiments on behalf of data analysts with the aim of discovering new capability, techniques and technologies that would empower them to search, extract and find patterns in huge volumes of data across many datasets and data sources.
After five years’, I transferred to an Operational Department and delivered tactical technical solutions that solved operational business requirements or filled gaps in operational capability. This encompassed owning fast paced end-to-end delivery of solutions, from requirements elicitation, system analysis and design, build and test, through integration, deployment and support.
I was on secondment from the Ministry of Defence (MOD) and worked in a mobile telecommunications team.
I designed, developed and maintained, numerous bespoke desktop and web applications using C#, ASP.NET, IIS, SQL Server, C++, XML, XPath, XSLT, Crystal Reports, classic ASP, HTML, JavaScript and AJAX.
I developed bespoke, planning, merchandising and customer relationship management systems using Visual Basic, RDO, COM and SQL Server 7.
I worked as a C++ programmer in a large multidisciplinary team on the AAA game, Dungeon Keeper 2, which sold over 750,000 copies and is still available to play on Xbox Game Pass and purchase on Steam and GOG.
I contributed to the development of a bespoke subscriber management system using Visual Basic and SQL Server 6.5.
BSc (Joint Honours) Computer Science and Management Studies - Upper Second Class