I’ve been working as a software developer since 2007, in companies and teams big and small. I’ve worked across diverse industries, including retail, palletised freight distribution, residential care homes, fancy dress wholesale, water utilities, and financial services. Mainly focused on the C#/.NET technologies, both on back end and front end development.
Back end
I have worked widely on back end systems based on event driven microservice architectures, mostly in C#. This has included writing and orchestrating REST APIs, gateways, service buses, etc. and leveraging a mix of cloud based and on premise resources.
I have worked with Microsoft Azure, making use of Functions, CosmosDB and a variety of event driven architectures. I have also worked with AWS and their equivalent offerings such as Lambdas, SNS, SQS, S3 buckets and DocumentDB.
I am also experienced in database technologies, including relational databases like SQL, and have worked widely with stored procedures, functions, triggers, etc. I have a good understanding of best practices for database design. I have also worked with NoSQL technologies such as MongoDB and their Azure and AWS equivalents.
Front end
I have developed many websites, the majority written using ASP.NET MVC or WebApi for the backend. The front end views I have worked most on a based on Razor pages and plain JQuery.
More recently I have worked on Angular (version 5 onwards) to produce websites and also mobile applications, wrapped in Cordova.
Processes
I’ve worked in small and solo projects, as well as larger teams spread across multiple time zones. I have worked on several agile projects, usually working in variations of SCRUM.
I have worked lead developer on a few projects, in charge of planning development work, as well as assigning and reviewing the work of others. This has included working with business stakeholders, UX, and UR resources, to create and refine project backlogs.
I have experience setting up continuous build and deployment pipelines in TeamCity and also Azure DevOps, deploying into Azure using ARM templates.