About Me

Hi! I’m Mark Lawrence :wave:,

I love designing and building both front end (websites) and back end (APIs) software. I have over 25 years of experience in software development, working for organisations ranging in size from multinational enterprises to a small start-up. I have a wide range of experience and technical expertise working primarily with C#/.net based software and web applications, as well as both Angular and React websites, and leading teams in implementing solutions on those platforms. I have worked on projects ranging in size and complexity, in a variety of different industries.

Building Web Apps

With over 20 years of experience using tools like HTML5 and CSS3, Javascript libraries like jQuery, Angular. and React, and Microsoft's ASP.Net MVC, Blazor and WebAPI frameworks, I enjoy building stylish and functional, yet performant, web apps and distributed applications for customers.

Architecture

I have software architecture experience at a variety of levels. My experience includes Enterprise Architecture work, as well as work developing software architecture elements, and reviewing architectures designed by others.

Team Leadership

I am a pragmatic technical leader who pairs hands-on experience with an understanding of how to elevate team performance through mentorship and giving team members a voice. I believe in fostering a culture of collaboration and continuous improvement, where team members feel valued and empowered to contribute their best work.


The following is a summary of some of my more recent experience and skills I’ve used in these roles. For a more complete picture, my resume is available to view or download here.

My Skills

As the IT industry is constantly changing, I’m always adding new skills to my repertoire. I’m always ready for fresh challenges with new techniques and technologies. The skills I have used most in the past few years are listed below. I have much more detail and a more complete list of my skills in my resume, which you can view, download, or print here.

Front End Skills

C# and .Net, Blazor Web Assembly, ASP.Net MVC, HTML & CSS, Javascript/Typescript, React, Angular

Architecture Patterns & Styles

Microservices design patterns, CQRS, Event Driven Architectures, SOA, RESTful APIs, Distributed Applications Design

Back End Skills

C#/.Net framework, .Net Core, .Net 5+, ASP.Net/ASP.Net Core, Entity Framework/EF Core, Microsoft Azure, Relational Databases (Azure SQL/SQL Server), No-SQL Databases (Cosmos DB)

Other Skills

Azure DevOps, Git & GitHub, CI/CD, Github Actions, Agile, Scrum, Kanban

Cloud Skills

MS Azure (App Services, Storage, AKS, Service Bus, Azure AI Services, API Management, Event Grid), MS Entra ID (formerly Azure AD), Cloud Native (Azure Functions, Azure Logic Apps), Azure Networking (Azure Front Door, Azure Load Balancing, Azure DNS), Docker, Kubernetes


Professional Experience

I have over 25 years of experience in software development, and have worked for a variety of organisations and projects, from startups to multi-million dollar enterprise work programs. My experience combines deep technical expertise with leadership capabilities to drive innovation and mentor high-performing development teams.

A timeline of my more recent experience is shown below. If you’re interested in the full details of my experience, you can download or print a copy of my resume.

Tobii Dynavox - Pittsburgh, PA

Lead Software Engineer

July 2022 — August 2025

I was the Tech lead on the engineering team responsible for Boardmaker, a special education solution which facilitates learning and communication for students with communication difficulties. Boardmaker is used by over 900,000 users and over 700,000 educational institutions globally. I was responsible for the architecture and technical direction of the suite of Boardmaker applications, and maintaining technical documentation. In this role, I led the team in efforts to modernize the software, updating the installed desktop apps from an Electron based solution to .Net MAUI. I also initiated work to begin modernizing many of the server-side and back office tools from their legacy frameworks to more modern versions, principally from older .Net versions to .Net 8 and 9, and from older React versions to more current versions. I also acted as technical liaison for other teams, attending weekly meetings led by the director of software engineering, where all product engineering teams met to discuss current work, and to coordinate efforts across teams.

Eyede Solutions Limited - Wellington, New Zealand

Team lead, architect and software engineer

Jan 2013 — July 2022

I was a full stack software developer and architect responsible for leading in-house software development team at Eyede, working predominantly with Microsoft technologies on complex web based applications. I oversaw and collaborated with the other senior engineers in developing Eyede's next generation multi tier web application architecture using Angular, TypeScript, JavaScript, HTML 5 and CSS 3, backed with WebAPI components using ASP.Net Core, Entity Framework Core and SQL Server. I have overseen, and provided hands-on assistance in building the developer tooling and CI/CD components for this next generation web architecture with Node.js, Gulp, Bower and Karma, with Visual Studio Online hosted build servers.

Optimation - Wellington, New Zealand

.Net Solutions Architect

July 2007 — Jan 2013

I was a senior member of Optimation's C# development team. I built Optimation’s reusable .net software architecture and reference implementation, using ASP.Net MVC in C#, along with SQL Server Entity Framework for data persistence, utilising Domain Driven Design and Command Query Responsibility Segregation principles, with front end web pages built using ASP.Net MVC, HTML5, Javascript with jQuery and CSS3 with Bootstrap. I served as technical lead and architect on .net projects for Optimation, all built on the archetype "reference architecture" using the technologies listed above. I configured, administered and managed Optimation’s Team Foundation Server environment, including process customization and end user training.


For information on my earlier experience, please see my resume.