PowerShellPowerShell
details: {
  name: “Paul Johnson”, 
  linkedIn: “linkedin.com/in/pgj99”,
  webCv: “cv.e-path.co.uk”,
  insta: “instagram.com/pgj99”,
  address: “Altrincham”
}

Key Skills

Distributed Systems

Distributed Systems: Proficient in building cloud-native systems on Azure using microservices, Azure Functions, and Service Bus. Extensive experience with WebSockets for real-time communication, alongside technologies like SignalR and MQTT for messaging. Skilled in Terraform for IaC, YAML, and CI/CD.

AI Agentic Development

AI & Agentic Development: Pioneering "Agentic" workflows using Copilot CLI, Gemini CLI, and Ollama. Engineered custom AI skills, specialised MCP servers, automated PR/Code Review agents, and self-learning "memory" patterns to accelerate the full SDLC.

Collaboration & Mentoring

Collaboration & Mentoring: Great communication, mentoring and collaboration skills. Empathetic and good at bringing people together.

Database & Cloud Storage

Database & Storage: SQL Server throughout my career, and for the last 4 years also Cosmos DB and Azure/Google Blob Storage.

C# and .NET

C# & .NET Ecosystem: Over 10 years of experience in C# and using .NET Core/10. Worked with Blazor, MVC, Web API and WPF applications.

UX Design

UX & Interface Design: Passionate about creating premium user experiences. Have been responsible for UX and UI design in many of my project roles.

Embedded Systems

Embedded Systems: Experienced in programming microprocessors like the ESP32 using C++. Familiar with basic electronics principles and circuit design.

Above all, I am good at solving problems using the aforementioned tools to find practical solutions.

PS C:\Profile\Skills> Get-UserInsight --More

Leading

Good at communicating with team members and stakeholders. Able to find solutions and foresee potential problems. Good at gauging the ability of team members and help where needed. Very good at empathising with others and seeing things from their perspectives. Passionate about producing quality work. Able to communicate my point and also to listen to others.

Analyst

Will liaise with the users to find better solutions to their problems or observe how the system is being used to see if tools can be developed to increase efficiency and to make working with the product a more pleasant experience. Able to work with UX/UI designs and provide opinions and give feedback based on technical practicalities.

Team Working

Able to work well within a team with co-operation and compromise. I have experience helping others who have newly adopted technologies and able to learn from them in areas they have more experience.

Other Skills

Angular Material, Azure Cognitive Services, Linux, Cosmos, YAML, Azure, LINQ, LINQ to Entities, SignalR, Code First, TypeScript, SASS, REST, Visual Studio, Rider, Razor, HTML, CSS, Google APIs, GIT, TDD, DI, Unit Testing, xUnit, NUnit, Moq, IIS, Azure, Photoshop, Illustrator, InDesign, Docker and React.

TIME Management

Able to prepare, plan and prioritise work to meet tight deadlines.

PS C:\Profile\Qualifications> Get-Qualification | Format-Table -AutoSize

EDUCATION
Level
-----
Qualification
------------
Date
-----
Location
--------
MScMSc in Management and E-commerceSept 01 - Dec 02University of Wales, Aberystwyth
BScBSc with Honours in Computer ScienceSept 99 - June 01University of Wales, Aberystwyth
PS C:\Profile\Hobbies> Get-Hobbies -Mode "Nerd" | Format-Wide -Column 2

Hobbies & Interests

I am very keen on photography and love using Photoshop/Lightroom and AI to enhance photos.

Home Automation (IoT). I have quite a complicate setup of Zigbee, Z-Wave and WIFI smart home devices (sensors, lights and sirens) in my home. Leveraging MQTT for events, Home Assistant is at the heart with Matter Bridge for the voice assistants. I use Node Red for some very powerful flows. I even get the soldering iron out sometimes.

Using the Creative Cloud suite has become something of a hobby for me. Occasionally, I’ve created graphics for various events.

I learnt to play the guitar at the start of lock down. Electric and acoustic.

I like crafting things and DIY. I’m currently renovating the bathroom.

I am passionate about cooking and have some pretty fancy pans and Damascus steel Japanese knives.

I learnt some mandarin. Nǐ hǎo

I learnt some Spanish. Hola

Reading. Currently working though “The Great Gatsby” I love the use of language in this book.

Films. I tend to watch films after reading the book, only to be disheartened by how poorly they compare.

PS C:\Profile\Previouse-Employment> Get-Experience | Format-Rtf

Previous Employment

Senior Software & Cloud Engineer @ Xanalys

February 2025 - Present

Spearheaded the architectural transformation of the XIM product suite, migrating a legacy on-premises application into a cloud-native Azure solution. Established a sophisticated Internal Developer Platform using Terraform and YAML, while pioneering "Agentic" development workflows to accelerate the entire SDLC.

  • Cloud Native Migration: Led the end-to-end migration of legacy systems to Azure. Adapted core codebases to leverage cloud-native patterns including Azure Key Vault for secret-less security, Application Insights for advanced observability, and Azure App Configuration for dynamic feature management.
  • Platform Engineering (IaC & YAML): Engineered a comprehensive, modular Terraform library to provision global environments (QA, DEMO, PERF, PROD). Architected complex Azure DevOps YAML pipelines, including a custom PowerShell CD Orchestration Engine that automates multi-stage deployments via REST APIs.
  • AI Agent Pioneer: Advanced the use of Generative AI Agents (Copilot CLI, VS Code Copilot, Gemini CLI, Ollama) as a "force multiplier." Engineered custom AI Skills and sophisticated Prompt Libraries to automate repetitive tasks and complex refactoring.
  • AI-Driven DevOps Tooling: Developed specialised AI-powered tools, including an Automated PR Creator that analyzes `git diff` output to generate intelligent descriptions and programmatically create PRs in Azure DevOps. Built an AI Code Reviewer that provides automated, contextual feedback on pull requests, significantly improving code quality and review velocity.
  • Self-Learning Workflows: Developed "Agentic Memory" patterns where AI agents maintain persistent contextual documentation to "learn" from architectural decisions and past iterations, significantly reducing technical debt and onboarding time.
  • Architectural Innovation: Migrated legacy build chains to Vite and delivered a high-performance, accessible Blazor UI framework that eliminated expensive third-party dependencies across the product suite.
  • End-to-End Delivery: Independently architected and shipped a Full-Stack Environment Monitoring & Management Dashboard, a comprehensive system providing real-time infrastructure health, deployment status, and cost management across 7+ distributed environments.

Core Technologies: C#, .NET 10, Blazor, Angular 19, Azure (App Services, Functions, Key Vault, Insights), Terraform, Azure DevOps YAML, PowerShell (pwsh), AI Agents (Copilot, Gemini, Claude, Ollama, Antigravity), Custom MCP Server Development, Pester.

PS C:\Profile\Previouse-Employment> List --More

Principal Developer @ Yappy / Inlights

September 2021 - January 2025

Note: Yappy ceased operations in early 2025, leading to a brief transition before joining Xanalys.

Inlights

Over the past year at Inlights, I played a key role in developing an image personalisation platform for client email campaigns. Working as part of a small, agile team of two, I was responsible for the full stack development of the platform, including the visual design and user experience. My responsibilities spanned:

  • Front-End: I designed and built an Angular 18-based admin interface for managing image creation. This included crafting the visual design and user experience, utilizing technologies such as SCSS, Auth0, and HTML Canvas to deliver a user-friendly and aesthetically pleasing interface.
  • Back-End: Back-End: Developed all C# Azure Functions powering the admin portal, along with supporting infrastructure including Cosmos DB, Blob Storage, Service Bus, and SignalR.
  • DevOps: Leveraged Terraform templates to manage infrastructure and implemented CI/CD pipelines.
  • Additional Responsibilities: Additional Responsibilities: Developed shared NuGet packages, code-generating Visual Studio extensions, APIM, Windows Services, and cron jobs to support the platform.

This experience demonstrates my ability to take ownership of a project and deliver a complete solution from front-end to back-end, including visual design, UX, DevOps and supporting infrastructure.

Yappy

During my time at Yappy, I served as a Senior Developer in a dynamic, fast-paced environment. Yappy specialises in creating customised product images, empowering customers to personalise products that are then distributed across multiple channels, including our own UK and US websites as well as Bark.co, a leading US-based pet product company.

In my role, I was deeply involved in developing microservices using Azure Functions, with a focus on leveraging Cosmos DB and Blob Storage for efficient data management. I also utilised Service Bus for seamless communication between microservices, enabling reliable message exchange through queues and topics. This robust architecture extended across in-house PCs, virtual machines (VMs), and Azure Functions, supporting a highly resilient and scalable system.

My Responsibilities Have Included:

  • Developed microservices using Azure Functions, focusing on efficient data management with Cosmos and Blob Storage.
  • Created integrations for external e-commerce websites, with the current integration on Shopify and adaptability for other platforms.
  • Integrated with Emarsys CRM for custom email campaigns and data synchronisation from various sources.
  • Contributed to the complex Order Management System, ensuring smooth product production and delivery.
  • Optimised rendering PCs with an automated update system, streamlining application deployment.
  • Worked with Angular for an internal admin site and provided mentoring to a junior developer.
  • Explored Windows Presentation Foundation (WPF) and developed Visual Studio Extensions.
  • Employed Azure YAML builds for resource deployment, demonstrating a commitment to continuous improvement.
  • Used Terraform (IaC) for creating and managing infrastructure.
PS C:\Profile\Previouse-Employment> List --More

Senior Developer @ Push Dr

September 2020 - September 2021

At Push Dr, I have mostly been working with Angular 10 and C#. I initially worked with a dedicated group of front-end developers where I learnt many new things about Angular and I have introduced many new ideas myself. In Angular, I have made extensive use of RXJS. My role took off as mostly front end but then moved to more of a mix of C#, WPF, Web.API and Angular 10. I have been working more recently on a team integrating NHS services with the Push Dr framework. Most of this work has been around digitally signing prescriptions which required I build a windows application for reading the NHS smartcards. The smartcards enable Drs to log in and sign prescriptions which are currently required by the NHS. The lack of documentation on these systems even required I decompile c++ code in order to find out what COM components were available to use.

  • Developing Angular applications for use by doctors.
  • Developing Windows (WPF) applications and working with NHS smartcards.
  • Developing developer tools to aid the team quickly test and switch environments.
  • Working with X.509 certificates to sign digital content.
  • Developing .NET Core Web.API services.
  • Supervising and code reviewing of more junior consultant developers.
  • Creating unit tests for Angular applications.
  • Collaborating with designers and other team members and contributing ideas.
  • Collaborating with API developers working on the endpoints used by the front end systems.

Senior Developer @ UD Group

July 2019 – September 2020

UD Group, when I started, were still using ASP.NET Web Forms. They were working on about 20 different branches of this application with various customisations for different clients. I was hired to bring more up-to-date knowledge into the business to help build either an Angular or React frontend with a .NET Core backend and SQL Server DB. Working with a designer, I initially created a proof of concept site using Angular 8 and ASP.NET Web.API. I also used Balsamiq to design a more extensive version of the system that would be produced later. After finishing the proof of concept, I was put in a team where I mentored other members, mostly in Angular development and some good practices in C#. The system was updated to Angular 10 and .NET Core 3.1. The site is hosted on Azure and set up as a continuous delivery project. We use Jira, and the project is Agile.

  • Building prototype systems.
  • Designing systems and UX using Balsamiq.
  • Building test-driven, lazy-loading, modular Angular 10 sites.
  • Building API backend using .NET Core 3 ASP.NET Web.API.
  • C# TDD using XUnit, NUnit, Moq, and FakeItEasy.
  • Angular TDD using Jasmine and Karma.
  • Building microservices.
PS C:\Profile\Previouse-Employment> List --More

Technical Lead @ Protocol

May 2014 – July 2019

Protocol originally brought me in on a one-year fixed-term employment contract to help get a HR/recruitment site up to speed. I joined an existing team of 5 other senior developers who were new to web applications. Due to their inexperience in front-end technologies, they had been using a toolset called DevExpress. This caused them many problems due to speed and extensibility. I guided the team to use more elegant solutions using jQuery and AngularJS, and later Angular 5-7.

A lot of my time at Protocol was spent mentoring other developers and passing on previously learned knowledge as well as researching new and better ways to solve problems. I learnt a lot about people here, as some were very receptive while others were more resistant to learning new things. I spent a lot of time at other people’s desks helping out, but they picked up web skills quickly, and the team got a lot of work done incredibly fast. Sometimes I had to be the instigator of change, as some things could not just be done differently by a few people. Convincing the team to switch from Team Studio to GIT was one such change. This required getting everyone on board by demonstrating the advantages of superior GIT source control.

During my time at Protocol, most of my work was spent on their web application called Ozola. Ozola is a CRM and assignment system to place teachers in colleges and schools. It spans assignment management, candidate searches, and assignment filling; DBS checks, timesheets, and candidate pay. The system also manages some of our own internal HR in a system I built in Angular 7 using Web.API for services. This currently comprises a holiday/absence system that lets users drag over days on a year view and add them as holiday or sickness, along with user profiles containing employee details, salary history, and benefits. One of my bigger tasks was moving existing functionality from clunky old systems over to Web.API and Angular and dealing with security in the system.

After the designer left, I also took on the responsibility for UI and UX design with the application. This involved using Illustrator and Photoshop, as well as sourcing graphics we could use externally.

For Ozola, we used dependency injection, MVC, C#, SQL Server, and Code First Entity Framework. We used test-driven development with MSTest and MOQ. For JavaScript libraries, Ozola already had some jQuery code, but soon after I joined, I introduced the team to AngularJS and Angular 5-7. Originally, Ozola was stored in Microsoft Team Foundation Server, but I persuaded the team to switch to GIT about a year in. This proved very popular with most of the team. In addition to working on Ozola, I also created and managed CMS websites for some of our products.

  • Mentoring the team in transitioning from Windows application development to web application development.
  • Implementing improved processes for development and deployment across the team.
  • Upgrading the toolset by replacing the problematic system with Angular and more elegant solutions.
  • Developing and managing a content-managed website for the company on the server.
  • Designing user interfaces for Ozola to enhance the system’s functionality and user experience.
  • Collaborating with users to gather feedback and design solutions that meet their needs.
  • Generating reports and exporting data from the database to support business needs.
  • Integrating reporting tools into the system using Google Charts for data visualization.

Lead Developer @ Effect Digital

June 2012 – May 2014

As the lead developer at Effect Digital, I played a key role in creating bespoke CMS sites for high-profile brands such as the RAF Association, My Home Move, Panache, and Goodyear. Using ASP.NET MVC with C#, I developed fully modular content management systems, including systems for managing Facebook competitions with features like like gates and statistics. I also managed both in-house and external servers, ensuring backup and maintenance operations ran smoothly. My role also involved direct communication with clients to gather project requirements and provide them with reassurance by working closely with them throughout the development process.

  • Developing bespoke CMS sites using ASP.NET MVC, C#, and SQL Server for high-profile clients.
  • Managing server infrastructure, including in-house and external servers, backups, and maintenance.
  • Collaborating directly with clients to gather requirements and provide development assurance.
  • Creating content management systems for projects such as Facebook competitions with statistics and like gates.
PS C:\Profile\Previouse-Employment> List --More

Self Employed (E-Path), Leicester

April 2006 – June 2012

As a self-employed developer, designer, and business manager, I worked with a variety of clients, including Fuse Digital, Standout, Three Men One Shed, The Late Night Salon, Effect Digital, Perspektiv, and Feed. My work primarily focused on ASP.NET 4, C#, AJAX, WPF, and SQL 2008. While the design and XHTML build were often provided by clients, I focused on the development side. Over time, I gained significant experience working with AJAX and ASP.NET web services, and I started exploring Microsoft Silverlight. I also created several Windows applications using WPF and Windows Forms, often integrating them with web services.

My responsibilities have included:

  • Building content-managed websites using C#, MVC.NET, SQL Server 2008, and AJAX.
  • Developing online shops with SSL, including t-lab, Blue Lawn, Assigns, Carlsberg Draught Master, and Miele Accessory Shop.
  • Creating a time-tracking system to plan and manage projects effectively.

Senior Developer @ Fuse Digital, Leicester

September 2004 – April 2006

Fuse Digital was a small web development agency and a sister company to Big Communications. As the sole Programmer/Developer on the team, I worked alongside web designers and developers on projects for prominent clients such as Carlsberg, WKD, Glen Dimplex Cooking, Quorn, and Sutton Coldfield College. My development work was primarily in C# for both web and Windows applications, with some involvement in Flash web services. I worked independently and later collaborated with another developer on various projects.

  • Building bespoke content-managed websites for major clients like Quorn UK, Glen Dimplex, and Sutton Coldfield College, providing flexible, user-friendly content management systems.
  • Developing Windows services for an image server to automate the resizing and uploading of images for client websites using web services.
  • Creating simpler content-managed sites for clients such as Carlsberg and Golden Wonder, primarily focused on news and updates.
  • Utilising SQL Server 2000 in almost all projects, particularly for content-managed sites that made extensive use of the database server.
  • Building time-saving tools such as a stored procedure and business class generator to increase development speed and ensure consistency in multi-tier web applications.
  • Producing an email broadcasting application that enabled the personalisation of every email sent to mailing lists for clients.
  • Managing Fuse’s internal and external servers used for hosting client websites, testing, and image servers, including setting up websites, host headers, web services, backups, and databases.
PS C:\Profile\Previouse-Employment> List --More

Developer @ DeSL, Cardiff

March 2004 – September 2004

At DeSL (Digital e-Solutions), I contributed to the development of enterprise integration software for industries such as designer clothing, including Calvin Klein. I was part of a team that developed internet enterprise accelerator applications and Windows applications to automate the flow of information throughout supply chains.

My responsibilities have included:

  • Designing and creating multi-tier, object-oriented, data-driven applications in .NET.
  • Ensuring applications are user-friendly and visually appealing.
  • Collaborating as part of a team using Visual Source Safe for source control.
  • Programming in C# and VB.NET using Visual Studio 2003 .NET.
  • Developing both Windows applications and ASP.NET web applications.
  • Optimising applications for improved performance.
  • Creating .NET business objects for various applications.
  • Designing and creating SQL 2000 databases and stored procedures for efficient data access.
  • Using extensive ADO.NET to communicate with SQL Server 2000.
  • Developing custom controls to assist the team in development tasks.
  • Integrating JavaScript with ASP.NET to complement user controls and web applications.
  • Utilising Crystal Reports to visually represent data.
PS C:\Profile> Exit