Mark Watkinson

Summary

Senior full stack software developer with over 10 years experience, open to opportunities on a fully remote basis.

Skills

  • C#, ASP.NET, MVC, including Entity Framework and NHibernate
  • MS SQL, MySQL, ElasticSearch
  • JavaScript, TypeScript, Node.js, AngularJS & Angular
  • HTML, CSS (including SASS + Less)

Employment History

2019 — Present

Folding Space

Senior Software Developer

C#, MySQL and Elasticsearch full stack development of a complex document management application, handling large repositories (e.g. Terabytes) of unstructured text from documents, emails, images etc, with a focus on managing and understanding the existence of personally identifiable data within the repository.

  • Developed various processes and features for analysing data, such as:
    • Linking and searching documents by the people referenced within,
    • Customisable dashboards visualising the makeup of the document repositories.
  • Wide ranging front and back end development, across .NET (MVC, Core and Windows services) and single page applications, including:
    • Improved system reliability and performance by, for example, minimising various SQL deadlocking scenarios and switching slow ORM queries to hand written queries.
    • Implemented front end accessibility to WCAG2.1 standards.
    • Integrating with external systems through their APIs, e.g. using OneDrive's REST API to retrieve externally hosted documents
2012 — 2019

Blueberry Consultants

Software Developer

Being the sole permanent developer at Blueberry Consultants, I took a lead role on many of the projects I was involved with.

Lead developer on a cross platform mobile app (using Ionic Framework and AngularJS), API and web-based order management system for ordering prescriptions, integrated with various NHS APIs. Launched in 2016 with no existing users and grew to ~100 orders per day within two years. Alongside development, I handled web deployments to various development, test and live environments using continuous integration (Jenkins) and planned and executed necessary migrations.

Lead developer on a browser based multi-user PDF annotator. Developed a rich touch interface for placing and editing annotations (text, shapes, lines and images), and bi-directional live sync via web-sockets, with tolerance for short network outages. Supported by a Node.js based HTTP server with a Java based process to manipulate PDFs.

Rescued several failing projects that had been given to off-shore development teams; one was a native iOS app and the other a cross platform app developed using NativeScript and Angular. Both involved diagnosing and fixing severe stability and performance issues, which allowed the successful delivery of these projects.

Several web-based CRUD applications using C#, SQL Server, ASP.NET, WebAPI, TypeScript, AngularJS and Angular and KendoUI.

As well as development, I also spent part of my time guiding and teaching junior developers

2011 — 2012

Jones and Palmer

Software Developer

Developed Umbraco (a .NET CMS) based sites displaying investor relations materials (annual reports, etc).

  • Front and back end development (HTML, CSS, JavaScript, C#.NET and XSLT)
  • Created a graphing library allowing CMS users to input data and dynamically create graphs

Other

  • SolverCS, a crossword solver for Android with ~150 daily users.
  • Several contributions to open source software:
    • Implemented album artwork functionality in Clementine (a music player written in C++/Qt4)
    • Developed my own project, Luminous (a syntax highlighting engine written in PHP)

In my spare time, I enjoy running, playing guitar, and growing carnivorous plants.

Education

MSc Computer Science Distinction, Best Overall StudentCoventry University

For my thesis, I developed a C++ real-time ragdoll-physics character animation library capable of blending key-frame animation sources with physics simulation, and an OpenGL based demo application.

BSc Mathematics and Computing Upper second classCoventry University