Table of Contents

Juan M. Uys

A few things about me:

  • full-stack web developer for 15 years
  • good at prototyping and scaling systems
  • takes machine learning for granted
  • based in London
  • fully equipped for remote working

Contact

juan+cv@uys.io
+44 7702 783 956

Education

  • How to be a dad (Home, 2013 - current)
  • Certificate in Computational Investing (Georgia Institute of Technology, 2013)
  • Data Analysis (Coursera, 2013)
  • Web Intelligence and Big Data (Coursera, 2013)
  • Functional Programming Principles in Scala (Coursera, 2012)
  • Introduction to Artificial Intelligence (Udacity, 2011)
  • Certificate Sun Certified Java Programmer (Sun Microsystems, 2007)
  • Diploma in Artificial Intelligence & Neural Networks (International School for Scientific Computing, 2001)
  • Qualified advanced scuba diver (NAUI, 1995)

Roles

Tesco PLC

Feb 2017 to current, as consultant

Part of team at Tesco to build the new price service. Technologies used:

  • Java 8, Rx, Vert.x
  • Couchbase with S3-backed long-term storage
  • Kafka messaging, with initial prototype using MQTT
  • Splunk, AppDynamics, Runscope
  • CI/CD with Jenkins
  • infrastructure on AWS using CloudFormation

The Capital Markets Company (CAPCO)

May 2016 to Feb 2017, as consultant

Part of team at CAPCO to build an information platform for global retail banks.

  • data visualisation using D3.js
  • turning Microsoft Project data into information
  • technologies include D3, Angular1/2, and the MEAN stack
  • Express framework for data upload, authentication and authorisation
  • CI/CD using CircleCI, Docker Hub/Cloud, and AWS

Re-skill and game development

April 2016

Style.com and Condé Nast Commerce

July 2015 to March 2016, as consultant

Part of Platform Team at Condé Nast Commerce to help launch style.com.

  • team lead for Conde Nast’s Platform Team of six
  • development with Clojure, Javascript, Ruby, and PHP
  • ops with Kubernetes, Docker, and AWS
  • integration with SAP Hybris and Mirakl
  • interviews, and devised a remote interview system
  • web proxy using Mashape’s Kong, with a subsequent FOSS contribution
  • instilled the “measure measure measure” approach adopted at GOV.UK
  • HapiJS framework used as initial proxy to Hybris, with stubs generated from Swagger descriptions
  • Style.com API developer portal made with HapiJS and React as part of Aqua

Government Digital Service (GDS)

March 2014 to June 2015, as consultant

Part of various teams at GDS transforming government services.

  • Land Registry beta using Python, PostgreSQL, and Docker
  • early adopter of fig (later known as docker compose)
  • Home Office policy management using Scala
  • fostering code re-use across ministries, agencies, and departments
  • Cross government services alpha or a “Facebook for Civil Servants” using Express and Python
  • lots of prototypes made with Express via the GOV.UK prototype kit

Credit Monster

August 2013 to March 2014, as freelancer

Part of distributed remote team at Credit Monster (part of New Concepts Development) to help launch a identity theft protection system.

  • PDF parsing
  • credit scoring and lead generation
  • historical finance data parsing, reliably extracting tabular data from government PDFs
  • technologies include Scala, AngularJS, and AWS
  • helping them reach the number 4 spot for credit rating services in the USA
  • reference available
  • fully remote, with co-developers in Belgium, US East Coast and California

Qudini

August 2013 to March 2014, as freelancer

Sitting alongside the CTO of Qudini to help optimise the core web app and automate deployment using configuration management.

  • solving the age-old British problem of the queue
  • technologies include Java, Playframework, MySQL, and AWS
  • reference available

Dohub

August 2013 to March 2014, as freelancer

Sitting alongside the CEO of Dohub to deliver the technical component of the business.

pollarize.me

March 2012 to March 2013, evenings and weekends

Part of a founding team of 4 at pollarize.me.

Net-A-Porter.com Group

January 2007 to August 2013, as developer

Initially, the second Java developer, and later on part of a 50+ development team at Net-A-Porter (pre-YOOX) to help deliver and grow the 3 websites.

  • PCI-compliant payment system and credit card database
  • introduced Scala to the company in 2009
  • hackday champion 2011, showcasing a mobile app for the budding fashion scout
  • CMS and workflow using Alfresco and Activiti
  • translation service integrating with 3rd party translators and CMS system
  • search and sitemap automation using Spring Batch, Apache Nutch and Solr, later ElasticSearch
  • gluing together parts of our CI system using Lift (Scala)

BeatThatQuote.com

2005 to 2006, as developer and employee #5

Part of 2 person development team initially, growing to tens of employees, helping deliver a lead generation platform for BeatThatQuote.com.

  • acquired by Google
  • UK’s fastest growing startup in 2005 and HSBC award for best start-up in London
  • aggregating and selling finance leads using custom backend system
  • implemented direct-2-broker system using Ruby on Rails, cutting out underwriters

Etc

Developer in London and Johannesburg, 2002 to 2005

My CV for this period is available separately.

  • IT consultation for TAIB securities (private bank)
  • developer for ManBytesDog supporting and building systems for healthcare and services firms
  • consultant at Business Edge Systems (now IMX Software) building CMS and document management for Investec and lease management software
  • full-stack dev for an Internet advertising company called iCatcher

Projects

pdfcrun.ch

pdfcrun.ch was borne of the recurring patterns I noticed of data being locked up inside PDFs in the wild. It’s currently in private beta testing.

Flask-Pushrod

Flask-Pushrod is a simple content-negotiation helper for Flask.

Flask-Sandboy

Flask-Sandboy automatically generates REST APIs from existing Flask-SQLAlchemy models. (Awaiting core contributor status, or transfer of ownership)

Create a demo app with the Flask-Sandboy cookiecutter and quickly spin up an example on Heroku.

+1 News

code here, here, here

  • natural language parsing, and news generation by way of Markov chains
  • aggregation and downstream publishing

Taxi meter built to TFL spec

code here

  • accurate rate calculation over discontinuous time
  • successfully used in traffic simulations