Curriculum Vitae

Work

2022 - present Architect, Cirium

Architect accountable for the design of machine-to-machine interfaces (e.g. HTTP APIs, AMQP).

Areas focused on:

  • Engage with stakeholders within the business and the wider organisation to gather requirements
    • These stakeholders include Sales, Product, Project, Data, SREs, and Security
    • Analyse requirements from the above to design solutions that meet the business needs
  • Work with teams to understand where shared infrastructure/solutions may benefit the business
  • Coordinate multiple teams to allow effective delivery
  • Establish coding practices and drive technical direction amongst development teams
  • Lead teams in the decomposition of issues to aid problem-resolution
  • Effective documentation of design (e.g. HLDs)
  • Evaluate new technologies and tools for upcoming projects and train teams in their usage
  • Determine technical feasibility of upcoming projects

2020 - 2022 Principal Software Engineer, Cirium

Integrate the software and systems from the recently acquired Snowflake Software into the broader processes and systems of Cirium.

Areas focused on:

  • Work across multiple teams within the department to design solutions to and solve complex technical problems
  • Build out platform solutions which remove day-to-day complexity from engineers when writing software
  • Work with architecture to gather requirements to future platform solutions
  • Serve as an SME for streaming solutions, Java, and Spring within the department
  • Lead the development of technical standards and review code to ensure they are followed
  • Work with Security to ensure solutions met the requirements of the wider organisation
  • Investigate new technologies and tools which might improve products in the future

2016 - 2020 Senior Software Developer, Snowflake Software Ltd.

Building cloud-based data processing and analysis pipelines for the Aviation industry.

Areas focused on:

  • Infrastructure as code (AWS CloudFormation/Terraform)
  • Cloud monitoring technologies (e.g. Datadog)
  • Operation of out-of-hours support team
  • Container orchestration and management (e.g. Kubernetes/Rancher/EC2 Container Service).
  • Java micro-service application framework creation and operation
  • Messaging technologies (e.g. Kafka)
  • System architecture
  • Event/Message driven systems

2012 - 2016 Software Developer, Snowflake Software Ltd.

Developing Java desktop applications and Java-based web services in an Agile environment.

Areas focused on:

  • Agile software development
  • Java desktop application development
  • Spring Framework
  • Enterprise Relational databases
  • Team leadership
  • Enterprise data processing systems
  • Application servers (e.g. JBoss/Wildfly and Oracle Weblogic)

2011 Technical Intern, Netcraft

Internet services developer tasked with improving and extending the services offered by Netcraft.

Areas focused on:

  • Perl development within large projects
  • Internet security analysis (including threat detection and removal)

Education

2008 - 2012 Computer Science (1st class with Hons), Southampton University (School of Electronics and Computer Science)

Modules included:

  • System Admin Tools & Techniques
  • Data Structures & Algorithms
  • Software Engineering Group Project
  • Operating Systems
  • Communications & Networks
  • Software Analysis & Design
  • Distributed Computing
  • Database Systems
  • Scripting languages
  • Security & Information Technology

Skills

Behavioural

  • Problem solving
  • Coordination
  • Attention to detail
  • Leadership
  • Communication
  • Creativity

Cloud

Experience of a wide range of services across 3 major cloud providers

  • AWS - 9 years (EC2, RDS, Redshift, S3, Lambda, Kinesis, IAM, SQS, Athena, WAF, Cloudformation, and others)
  • Azure - 2 years
  • GCP - 2 years

Programming Languages

  • Java - 16 years experience (10 years professionally). Within that time I have written web applications, frameworks and desktop GUIs.
  • Python - used frequently over the last 10 years

Web Development

Working knowledge of:

  • PHP
  • HTML
  • CSS
  • Javascript
  • React

Databases

Schema design, operation and maintenance of:

  • PostgreSQL
  • Snowflake
  • Oracle
  • SQLServer
  • MongoDB
  • Elasticsearch

Infrastructure As Code

Frequent usage of the following:

  • Terraform
  • Docker
  • Kubernetes (EKS, GKE and AKS)
  • ECS
  • Helm
  • Kustomize

Security

Usage of various security tooling:

  • Trivy
  • Dependabot
  • Renovate
  • Vault

Data Tooling

Passing understanding of:

  • Databricks
  • Iceberg
  • Avro
  • LLMs

Revision Control Tooling

  • Git - Github, Gitlab, and Bitbucket
  • SVN

Server Administration

Apache, Samba, OpenSSH, and general Unix configuration.