Simon LawrenceLead Software Engineer
Skills

Depth that helps teams deliver.

I work across engineering, architecture, product thinking and people. The value is in connecting them well.

Where I make an impact

Software engineering

Building reliable applications with clear boundaries, thoughtful tradeoffs and room to evolve.

Technical leadership

Giving teams clarity, trust and the foundations to do their best work.

Product thinking

Connecting engineering decisions to useful outcomes for people and businesses.

Clean architecture

Reducing complexity so systems stay understandable and maintainable.

System design

Designing scalable services and application foundations around real needs.

Full-stack delivery

Taking ideas from interface and APIs through data, deployment and iteration.

Developer experience

Creating tools and patterns that help other engineers move confidently.

AI-assisted engineering

Using AI with strong conventions and human judgement to improve delivery.

Tools & foundations

Engineering practice

AI-first engineering

Pioneering ways to make AI a first-class part of software delivery. Focused on giving coding agents the right architecture, conventions and constraints so they can produce useful, maintainable software with less manual intervention.

AI-assisted developmentCoding agentsAgent orchestrationContext engineeringAI-oriented framework design
Engineering practice

Architecture & technical direction

Designing systems and reusable foundations that reduce unnecessary complexity, establish sensible defaults and allow developers to concentrate on business behaviour.

Application architectureTechnical decision-makingCQRSApplication foundationsEngineering standards
Engineering practice

Developer enablement

Building tools, patterns and practices that make other developers more effective. Responsible for technical direction across a 12-developer team and for helping engineers adopt new approaches, particularly around AI-assisted development.

Framework designMentoringTechnical trainingDeveloper experienceTeam standards
Engineering practice

Software engineering background

More than 16 years of software development experience across the full application stack, providing the technical grounding needed to design, evaluate and guide modern application development.

C# / .NETASP.NETReactTypeScriptJavaScriptSQLState managementAuthentication & authorisation
Engineering practice

Delivery & infrastructure

Long-standing advocate for repeatable environments, containerisation, automated delivery and removing unnecessary friction between development and production.

DockerCI/CDGitHubAzure DevOpsLogging & observability
Let's build something

Get in touch

Open to new opportunities, interesting projects, or just a great conversation.