Folks, this is your lucky day — Ian Nelson is back on the market.
After an unprecedented five years working the same gig, I will be available for shiny new contract roles from February 2023.
What I've Been Doing Recently
Since March 2018 I've been a Technical Lead for the NHS App, an England-wide way to access a range of NHS services via smartphone, tablet, and desktop web browser. It has been an amazing project to be a part of, and I've loved working in an open, collaborative, and agile delivery environment alongside a bunch of clever people from NHS Digital, Kainos, and BJSS.
I've led an ever-changing, multi-disciplinary team through over 120 fortnightly sprints — a period that saw the App's user base grow from nothing to over thirty million users, and become the most downloaded app in the App Store during the COVID-19 pandemic years.
I've led the design and development of the App's notification and messaging capability, which allows the secure and sub second delivery of health-related communications from NHS organisations to patient's mobile devices, replacing more costly communication methods such as SMS or mail.
In case it's not obvious, I'm pretty proud of what we've achieved on the NHS App over the past five years, and could write much more. But I'll save that for a future blog post and return to the sales pitch...
What I Do Generally
I am a hands-on Technical Architect / Technical Lead. I draw boxes and arrows on (real and virtual) whiteboards, and talk about those designs with teams, allowing us to collaboratively bring maintainable, performant and scalable solutions into existence.
I am detail-oriented and still a developer at heart. I like to stay close to the codebase. I am not an Architecture Astronaut. I prefer developing backend code to frontend. I am comfortable taking ownership of systems and communicating with people at all levels of an organisation.
The Technology I Use
Recruiters, start your pattern-matching algorithm now!
I have over 20 years' experience of C# and .NET development, from the betas through to C#10 and .NET Core 6.0 (but I still have to occasionally Google how to properly implement the IDisposable pattern).
I have been working with Azure products for, gosh, it must be over a decade now. I have spent significant time wrangling with App Services, Function Apps, Cosmos DB (Mongo and (No)SQL), Event Hubs, SQL Database, Kubernetes Service and Service Bus. I have found and reported a bug to the Notification Hub product team, and been mailed a t-shirt by the Cognitive Search team in response to my feedback.
I favour distributed architectures that are loosely-connected by messaging patterns and RESTful APIs. I am vaguely suspicious of the rush towards Microservices. I am a bit disappointed that the end of the relational database hegemony means that I no longer get to use my SQL skills on a daily basis, but have replaced this with a new-found admiration for Splunk queries.
How I Work
I prefer to code in the open and work in the open. I favour public Slack channels over DMs. I appreciate the DevOps culture where all members of the team are empowered to make changes to a collective codebase. I think infrastructure as code is one of the game-changing trends of the last decade.
I still quite like Test-Driven Development, but am learning to be more pragmatic about when it is applied, and when to use chunkier integration tests.
I am a Microsoft Registered Partner, but do all my work on a MacBook.
I care very much about the quality of the solutions that I help to create, but I try to inject levity and humour into the working day, and do not take myself too seriously.
I like to break up lengthy blog posts with photos of my dog.
My favourite GoF design patterns are Visitor and Chain of Responsibility.
Some people that I've worked with have written nice things about me, and I didn't even have to pay them. You can read a collection of these endorsements on my testimonials page.
I hope you've enjoyed reading these insights into my psyche and skills. If you'd like to know more, or think that I might be able to help you, then let's talk. You can download my CV here, and email me at email@example.com.