|A keen technologist, a skilled self-starter with 20+ years of experience in a variety of environments and roles. An avid learner, always keen to collaborate and share lessons learnt. Able to combine strategic thinking with tactical pragmatism.|
Medivet [Contract Developer]
2020-Feb - present / Freedom2 project
Develop a new web based application to support the running and management of vetinary practices. The current system has reached its scaling limit and a new system is required to support business growth.
Written from the ground up in C# with dotnet Core 3.1 in the backend and Angular in the browser. Using SignalR (websockets) as the primary “api” transport to provide and realtime feel to the app.
tech: dotnet Core, csharp, Docker, Kubernetes, RabbitMQ, MassTransit, Azure devops
Game [Contract Developer]
2019-Mar - 2019-Nov / Digital Transformation project
Integrating legacy systems (JDA, WebSphere) with new Product Information Management system (Akeneo, Algolia). CSharp in dotnetcore, with docker, Kafka.
Created build system with Bitbucket/Bamboo. Ensured consistency, testing, versioning across all libraries and services.
Created app framework to simplify creation of services (logging, metrics, config etc) and producing/consuming events on Kafka and IBM MQ.
tech: dotnet Core, csharp, Docker, Kafka, messaging, SOAP
GfK [Contract Deveoper]
2018-Jul - 2019-Feb / Sales Effectiveness - Price Promotion Tracker
Scans sources for pricing information. Data is normalised, translated, aggregated into data stores with api’s and a web ui. Clients can then track actual selling prices of their products or competitor pricing policies.
Processing via a messaging platform. Migration to dotnet Core, Linux containers, Kubernetes, Kafka. I worked across the system. Also created frameworks to ease creation of services and api’s, applying standards and cross cutting concerns. AWS, net46+, dotnetCore, RabbitMQ, Kafka, ElasticSearch, Api’s, caching, messaging, vsts, git, docker, kubernetes, helm
tech: dotnet Core, csharp, docker, kubernetes, RabbitMQ, messaging
Codit/SwissRe [Contract Developer]
2018-Feb - 2018-Jul / Parametric Natural Catastrophe insurance
Uses authoritative sources to monitor events such as earthquakes and cyclones to automatically payout when the event matches the policy criteria. no human in the loop.
As a team member I worked on many parts of the system: api’s; message handlers; catastrophe impact calculation; policy processing; automated testing; deployment pipelines …
Azure, net46+, dotnetCore, ServiceBus, AppServices, LogicApps, Api’s, caching, messaging, vsts, git
tech: Azure, dotnet, dotnet Core, ServiceBus, AppServices, LogicApps, caching, messaging, vsts, git
Blackbox [Contract Developer]
2017-Feb - 2018-Feb / Information systems for UK train network
Tracking trains on UK network. Processing messages from external systems. Maintaining internal data stores. Api’s to drive customer facing displays and control room. Driving automated announcements with speech synthesis through a custom service to on site devices. Tested via emulation in software. Azure, ServiceFabric, redis, cosmosdb, service bus, sql, c#, aspnetcore, akka
tech: dotnet, csharp, aspnetcore, Azure, ServiceFabric, redis, cosmosdb, ServiceBus, sql, akka
Global Radio [Contract Developer]
2016-Sep - 2016-Dec / Ad scheduling systems
Asp.net WebApi, Angular2, TypeScript, Kendo, dapper, SqlServer, CQS, RabbitMQ. Resolved several performance issues (mainly threading and async). Reworked backend framework, services and build system to improve DRYness and reduce developer friction.
Connections Education [Contract Developer]
2016-Apr - 2016-Jul / Updating online educational system
Member of a remote virtual team. Working within clients agile processes and closely with several project teams. Involved in several aspects of updating CEs online education systems. Gitflow based development within VSTS. HttpClient based proxy for internal and external services. Custom formatters and serializers. Protection from async deadlocks. Integrated 3rd party api via Azure ServiceBus to internal systems. Created testing and mocking frameworks for testing services.
tech: dotnet, csharp, dapper
Artesian Solutions [Chief Architect]
2007-Aug - 2015-Feb / A SaaS product providing internet content to sales and marketing
Uses a taxonomy to tag and categorise content. Users are supplied with relevant stories that allow them to engage with their prospects and customers. Also provides access to company information, both to individual companies and via segmentation/faceting to isolate a prospect list.
Joined at inception. Created or collaborated on core services. Raw content retrieved by custom spider and via 3rd parties. Taxonomy and content processing. Custom syntax and parsing. Distributed processing mechanism. Service Discovery. Centralised logging and metrics collection. Configuration systems. Multi-tenancy. Identity service. Early years infrastructure support. Developer systems (Jira, Confluence, TeamCity, Subversion, git). Worked with growing team to ensure common approaches and coach on how the core could be developed and exploited. Remaining time spent on research into product futures, implementation options and optimising performance bottlenecks.
tech: dotnet, csharp, Lucene, SQL, dapper, TeamCity
Whitelight [Support, Trainer, Consultant]
2004-Jul - 2007-Aug / Business Intelligence
Trainer, pre/post sales support and consultant on Whitelight ROLAP server product. Primarily aimed at data specialists, mostly in the financial sector. I created several custom desktop and html frontends to package the features for less technical users.
tech: delphi, BI, ActiveX, Notes, networks
Then Ltd [Senior Engineer]
2004-Jul - 2007-Aug / Digital Asset Management
Introduced dotnet, C#, Asp.net. Developed customer facing web UI for storing, editing and scaling PDFs. Responsible for internal machines, servers and network including exposing the app to the internet.
tech: dotnet, csharp, Lucene, SQL, networks
Aprimo [Principal Engineer]
2004-Jul - 2007-Aug / Digital Asset Management Software and MRM System
Then ltd purchased by Aprimo. I moved to Indianapolis to incorporate Then’s Asset Management system into their marketing product. Concerns about LGPL licensed libraries required the writing of a PDF parsing and manipulation library direct from the specs. Introduced Subversion. Also involved in building and supporting new features.
tech: dotnet, csharp, Lucene, SQL
Cognos [Support, Trainer, Consultant]
1992-Sep - 1998-Apr / Business Intelligence provider
Trainer, support and consultant on Cognos products, both Powerhouse and their desktop reporting and OLAP analysis suite. Many projects at large multi-nationals. While in the Business Development Group I created a “game” which embedded the products into a desktop app written in Delphi. This was played by by prospects to show the value of analytics in a business context.
tech: Delphi, BI, PowerHouse 4GL
Haynes Publishing [Programmer]
1987-Aug - 1992-Sep / Book Retailing
Order processing, stock control, accounting. Cognos Powerhouse 4GL on Data General, migrated to unix. Created several systems level integrations between proprietary DG equipment and unix systems.
tech: DataGeneral, unix, PowerHouse 4GL