=======================================
Curriculum Vitae - Adam Robert Thompson
=======================================

Introduction
------------
I am a software engineer currently working for Forcepoint with previous
experience working at Plymouth Marine Laboratory (PML) and Cisco.  I am
primarily familiar with unix-like systems (mainly Linux and Mac OSX) and, due
to being blind, have extensive experience of using screen access technologies.

I have experience working on, and designing, complex systems in the areas of
both satellite data processing and cyber security.  As part of this work I have
gained experience and knowledge of multiple languages (primarily Python, C and
C++) as well as networking and scalable systems.  In addition I am experienced
using agile development approaches to quickly meet both customer and business
needs.

Work Experience
---------------

Forcepoint (Jul 2014 to present)
---------------------------

Following my graduation from the University of Reading in 2014 I started working
for Forcepoint (an industry leading cyber security company) and currently work
as part of a team of engineers responsible for the Cloud Web product.  This is
a complex system primarily written in Python using Twisted (an async networking
framework) and running on Linux (CentOS) servers.  The role also involves
working closely with Cloud Operations to both deploy software and analyse the
behaviour of hundreds of production servers world-wide.  This deployment and
analysis must also be conducted with minimal customer impact.

During my time at Forcepoint I have been involved in the successful delivery of
several projects.  One of these was upgrading the version of Twisted used by
the service.  This required both a good understanding of the existing code as
well as effective collaboration with team members.  This project aimed to both
fix existing issues by updating the underlying framework and also increase the
maintainability of the system by modernising the codebase.  The project
resulted in a multitude of improvements and is being deployed in production.

In addition I am responsible for re-engineering the TLS man-in-the-middle
component of the service which is written in C++.  This involved the
redesign, re-implementation and testing of various aspects of the component.
This included the design and implementation of new mechanisms (and
corresponding tests) to modernise and enhance the previous functionality.
This project was driven by the need to improve customer experience by
providing a more robust and feature complete man-in-the-middle solution.
This is also in production use.

I also delivered the proxy server side of a mechanism to distribute database
files used by the analytics engines.  This software is in production and being
taken up by other teams in the business.

In addition I designed and implemented a proof of concept to use a Postgres
database for storing the policies applied to customer transactions.  The goal
of this project was to improve customer experience by providing more consistent
per-transaction latencies.  The proof of concept was successful, although it
highlighted a number of architectural issues which I have subsequently fixed.

I was also involved in various other projects including enhancing the
product's authentication logic to support a new method of connectivity and
enhancing the service's DLP (data leak prevention) functionality.  These have
all included both design and implementation work as well as designing and
implementing suitable tests.

Plymouth Marine Laboratory (PML) Jul 2011 to Sept 2012
--------------------------------

During my university placement year at PML I developed a range of software
using C, Python, PHP and shell scripting.  These included a system to allow
custom processing of satellite data, an experimental piece of software to
process LIDAR data from aircraft and software to composite satellite data.
These systems were designed to work with PML's Sun Grid Engine based Linux
computing grid.  I also worked as part of the OC-CCI (Ocean-Colour Climate
Change Initiative) which is a large international project to provide
Ocean-Colour Time Series for use in climate studies.  Specifically I worked on
data processing software (written in C) to provide uncertainty data.  A paper
detailing this project has recently been published in the journal Sensors.

Cisco Systems Ltd July 2010 to July 2011
---------------------------

In 2010 I completed a 10 week full-time summer internship with Cisco.  During
this I delivered a system to automate the configuration of devices used in the
CPOC (customer proof of concept) labs.  The system had a front-end written in
PHP with a back-end written in TCL.  I was then employed on a part-time
contract to maintain and enhance this system.

Education and Qualifications
----------------------------

University of Reading (Sept 2009 - Jul 2014):
Applied Computer Science and Cybernetics MEng - 1st (hons)