liam reilly


personal statement

Seasoned software engineering professional with an entrepreneurial spirit.

Spent 20+ years building software across many industries and business sizes, gaining experience with everything from platform and language changes to complete software development paradigm shifts.

Analytical, recognising new opportunities, spotting problems and recommending/building software solutions to help streamline business processes to meet business requirements.

This led to founding Alchemist Labs, building new software products and sharing experience to help other companies improve their competitive edge in this new cloud first, mobile first world.


technical skills

  • Cloud Providers

    Amazon Web Services, Google Cloud Platform, Microsoft Azure

  • Backend Languages

    C#

  • Web

    React, NextJS, Gatsby, GraphQL, ASP.NET MVC

  • Data

    DynamoDB, Elasticsearch, MSSQL/MySQL, PostgreSQL

  • Serverless

    Lambda, Fargate

  • Container Orchestration

    Kubernetes, ECS, Docker

  • Messaging

    SQS, SNS

  • Testing

    React Testing Library, NUnit, Jest

  • Dev/Git Ops

    Terraform, CircleCI, GitLab, GoCD, ArgoCD, Jenkins

** This list is limited to more recently used technologies and is by no means exhaustive. **


business skills

  • Software Development

    Creative and technical expertise in software development, leading projects from conception to completion through the full development life cycle, with adherence to SOLID development principles.

  • Project Planning

    Thorough working knowledge of software development life cycle methodologies (Agile Kanban/Scrum/Lean). Regularly ran Kanban and Agile Scrum sprints. Delivering all sprint ceremonies.

  • Team Working

    Positively work with others, using pair/mob programming approaches. Experience of managing expectations and deliverables across teams in multiple departments.

  • Remote Working

    Seasoned remote worker. Have worked as Principal Software Engineer as part of a remote team and also completed many personal/side contract jobs 100% remote.

  • Customer Focus

    Ability to work positively with internal and external clients and partners. Interacting with the business, clients, suppliers and developers to ensure the needs of all parties are met.

  • People Management

    A supportive, mentor to other team members, developing skills, training and providing code reviews.


projects

Alchemist Labs

  • Infrastructure

    Designed and built a new multi account AWS infrastructure using the latest version of Terraform. The code is fully modularised and builds out multiple complete VPCs. IAM Users & Roles are centrally managed through a separate security account and all credentials are secured by encryption at the point of creation via Keybase.

  • Apps/Services

    Defined coding standards and coding style for Alchemist Labs own .NET Core 3.1 microservices. Built various Nuget packages to allow all projects to be built in a consistent style. All services are containerised and running in Elastic Container Service (ECS). All projects are automatically built and tested, with the code deployed and Terraform applied by CircleCI.

  • Websites

    Completed multiple website projects. All built using the latest versions of React with the latest features such as Hooks and Context API. Websites have used various frameworks including NextJS and Gatsby.

  • Digital Transformation

    Consulted on Digital Transformation for a large Manchester based e-commerce enterprise. Successfully migrated their mission critical Hybris system and supporting Oracle RAC databases, from IBM SoftLayer to AWS. Introduced new CI/CD pipelines (Jenkins) to ensure the Java micro services could be tested and deployed automatically. All AWS infrastructure was created and managed using Terraform.

Ditto Music

  • AWS Infrastructure

    Built an entirely new AWS Infrastructure using Terraform. This included 4x different AWS accounts. Infrastructure, Dev, QA & Prod. Was responsible for all aspects of the infrastructure and securing all resources, including configurations for both site to site and point to site VPN.

  • Sales Import

    The first major project was to completely overhaul the internal sales import process. As principal engineer I analysed the existing system, and built a new system on top of the AWS Infrastructure we put in place. The new system (WebAPI hosted in ECS) validated, staged and processed data using AWS Lambda functions in minutes and published sales data to SQS which then pushed data into Elasticsearch. The original system would take hours to process the same data, and was massively prone to errors and impacted performance of all other Ditto systems.

  • Sales Area

    React based web application which displayed customer dashboards with interactive graphs. Data for the graphs was obtained via various API's which talked to a number of different data sources including GraphQL, Elasticsearch and MySQL. The system was massively performant and easily handled accounts of all sizes with data sets of all sizes, replacing an old system which failed to even load for the larger accounts.

  • Network Logging and Service Alerting

    Built a logging api and supporting package used in all our applications/services to push all log data to Elasticsearch. Then used Cloudwatch Alarms to monitor various metrics which would raise alarms, publish to SNS and then trigger a series of Lambda functions to push alerts out to various people/places based on severity, including Slack channels/SMS/email.

  • Ditto Vault

    My 10% time project which allows users to store/retrieve passwords/documents. The system stored documents in DynamoDb so was queryable in the ReactJS based web front end, and all user documents were stored in S3. Both DynamoDb and S3 documents/objects were encrypted by KMS.

Zuto

  • AWS Migration

    Migrated ~30 mission critical legacy services running on a single server. To be independent services, hosted on various parts of Amazon Web Services. This included risky refactoring/rewriting parts of the services, replacing unsupported technologies such as MSMQ with SNS/SQS. The services now utilise many different parts of the AWS offerings, such as Lambda, Elastic Beanstalk, Code Deploy, DynamoDB, Route53, CloudWatch, S3, EC2 to name a few. All services/infrastructure is expressed as Terraform meaning, repeatable deployments with opportunity for human error greatly reduced.

  • Communication Service

    Led the design of a communication service, that enabled the business to have 2 way SMS communication between customers and sales partners for the first time. I used the opportunity to explore AWS Lambda, which was a huge success for the business. Lambda greatly reduced the complexity of the solution. It was faster to build, easier to maintain and financially very efficient. Senior I.T. management have said it’s the most scalable, resilient service we have, and is almost completely free to operate. This was the first Lambda function at Zuto and I presented a brown bag to the rest of the company to explain the implementation and reasoning for using the technology.

  • Secure Document Upload

    I built an entirely new document upload component for our website, that enabled customers to safely upload sensitive documents such as passports, photo id's, finance agreements and other documents in line with new GDPR requirements. I opted to build this using React/Redux which others on our team were not experienced with, but was used elsewhere on the website by other teams. First I built a proof of concept and presented to the team. I then paired with other team members, teaching them React/Redux. Before long, the team was working independently and extending the component until it supported all the various document types.

SoNQ

  • CQRS

    Re-architected and correctly implemented the in-house CQRS system which I inherited.

  • Routing Slip Saga

    Analysed confusing legacy code which had become a myriad of commands calling commands and replaced with a fully distributed Saga utilising the Routing Slip Pattern. Supporting both RabbitMQ and Azure Service Bus message brokers based on environment using dependency injection.

  • OpenID Connect / OAuth2 Authentication / Authorisation / SSO

    Implemented a centralised OpenID Connect/OAuth2 authentication/authorisation system using IdentityServer. This replaced the existing bespoke login system used in all web applications. Enabling single sign-on for users using Azure AD/Google/Facebook/Twitter etc.

Mediacom

  • Distributed Scheduler

    Lead development from inception to delivery of a system, capable of running tasks/applications across multiple servers. Workers were configurable to use parallelisation where necessary. The system provided up to date performance data so that the business could perform valuable data analysis.

  • Data Collection

    Redesigned a legacy data collection system written in Python with an up to date C# equivalent. This drastically improved the speed and reliability when gathering conversion and performance data from 3rd party APIs, and inserting it into client databases. The performance and conversion data was then matched across sources to allow for easier querying and path to conversion analysis. The data was fed into a dashboard to ensure accuracy before presentation to clients.

  • Automated Trafficking

    Designed and wrote a tool to automate the process of trafficking display campaigns into Atlas and DCM ad serving platforms. The tool greatly reduced the time needed to launch business critical advertising campaigns.


experience

  • Alchemist Labs
  • Founder & Managing Director
2019 - Present
  • Ditto Music
  • Principal Software Engineer
2018 - 2019
  • Zuto
  • Senior Software Engineer
2016 - 2018
  • SoNQ
  • Senior Software Developer (Team Leader)
2015 - 2016
  • MediaCom North
  • Senior Systems Developer
2012 - 2015
  • 3-Si Limited
  • Software Developer
2010 - 2012
  • Shire Dental/Consulsoft
  • Software Developer
2006 - 2010
  • Huntleigh Renray
  • Software Developer
2004 - 2005
  • Tissue Science Laboratories
  • Software Developer
2001 - 2004