Renfrew, Scotland
[email protected]
- Main Languages
- C#, TypeScript, Kotlin, Java, Go, JavaScript, Python, C/C++, and more
- Frameworks & Technologies
- ASP.NET, React, Kubernetes, Docker, Git, Node.js, OAuth, SQL, Redis, GitLab, and more
- I have been a professional software developer for approximately 30 years, with an appetite for solving problems and making things work well, with a particular focus on streamlining and automating working practices, and creating re-usable components and projects.
- I tend to pick up new technologies fairly quickly. I've seen enough over the years to flatten most learning curves. I may not be au-fait with the exact set of technologies that you use, but I’m pretty confident I can be up to speed within days.
- I have been interested in software development since I was a kid, wondering "how does this work?" while playing games on my Atari 2600.
- 2022-now: Corporate Modelling Services
- Design and implementation of new software and deployment infrastructure (Kubernetes, Kong, Istio, Keycloak, Prometheus, Grafana, Open Policy Agent, Redis, Lua)
- Built-from-scratch CI system for .NET/JS/JVM projects (GitLab, Docker, Gradle, Maven, Bash)
- Standard webservice and library templates for company-wide use (.NET Templating, OpenTelemetry, OpenAPI 3, Fastify, JSON Schema, Python, WSGI)
- A service to execute a user-defined series of "chained" webservice requests (Go, SQL Server)
- Webservices and webapps for business logic definition and evaluation (.NET 6/7/8, Microsoft Rules Engine, TypeScript, Jest, React, Redux-Saga)
- Creation & deployment of SourceLink proxy and symbol server proxy for internal GitLab system (SourceLink, Git Credential Manager)
- Implementation of web dashboards (Razor, DevExpress)
- Integration between CMS systems and NICE backoffice software (C#, Redis, TPL Dataflow, SQL Server)
- Dynamic metrics expression evaluator and alert system (C#, Roslyn, Redis TimeSeries, Grafana, Microsoft Teams)
- Injectable authentication/authorization sidecar framework for Kubernetes (Kubernetes, Keycloak, Kotlin, Auth0, OpenID Connect, Open Policy Agent)
- 1999-2022: Idox Software
- Development of Enterprise-level document management software, built on OpenText Documentum and IBM FileNet (C#, Java, Ant, Maven)
- Integrations with desktop applications such as AutoCAD, MicroStation, and Microsoft Office. (C#, C, WiX)
- Development of prototype in-house document management system & web UI (Spring, Kotlin, TypeScript, Node.js, React, MinIO, PostgreSQL, GraphQL, Elasticsearch, Docker, Kafka, JOOQ)
- Maintenance of education & healthcare web portal (PHP, JavaScript)
- Development and maintenance of iOS, Android & UWP apps for local authority planning (C#, Xamarin, GitLab CI)
- Automation of packaging, curation and management of third-party components (Bash, curl, nuget)
- 1997-1999: Sirius Seven
- Development of desktop GIS (Geographic Information Systems) software (C++, MFC)
- BeatPrompter for Android
- One-time contributor to MAME
- BSc Software Engineering (Distinction, awarded Court Medal) from University Of Paisley (now UWS)
- HND Computing
- 4 Higher grades, 7 Standard grades (including A/1 in mathematics)
- Amateur musician
- Keen karaoke singer and host (using my own KaraokeManager software and display and audio plugins)
- WFMU listener