Alexander James King

An enthusiastic, hard working, senior software engineer, passionate about delivering clean, well tested code, that is easy for others to understand.

Adept at working in agile environments, pair programming, and communicating technical implications and processes to non-technical colleagues.

A versatile developer, experienced in both client and server side development, with a natural passion for software engineering.

Expertise

  • Clojure, ClojureScript, EMacs, Leiningen
  • Scala, SBT, Play, Akka-Http
  • Java, Maven, Groovy, Spring, Cucumber JVM, JAX-RS, Apache Camel, JMS
  • Javascript, ES6, React, Redux, Node.js, Mocha, JSON, jQuery, MongoDB
  • PHP, Linux, Apache, MySQL
  • BDD, TDD, Cucumber, Continuous Delivery
  • REST, CQRS, Event Sourcing
  • Travis, Jenkins
  • Amazon Web Services (EC2, SNS, SQS, S3)
  • MarkLogic, XML, XQuery, XSLT
  • Linked Data, SPARQL, RDF
  • Git, Subversion
  • XP, Agile, Kanban, Scrum

Key Achievements

HMRC - Delievered a new system to prepare tax credit renewals for automation vastly reducing the manual work required to process renewals every year.

HMRC - Delivered a new payments system to process business tax payments.

BBC News - Successfully delivered the 2014 Elections results service working to a tight deadline.

BBC Core Engineering - Delivered new CMS features whilst contintually refactoring and improving code.

BBC Sport - Led the design and delivery of a new Java service to aggregate content from multiple APIs and dramatically improved the speed of content delivery to users of the site.

BBC Sport - Mentored software engineers at BBC Sport, encouraging development best practices (BDD, TDD, Clean Code).

BBC Sport - Assisted in designing a new architecture with a consistent data format across sports, improved the speed of delivery and cost of maintenance.

CTI Digital - Bridged the gap between the front end and service layer teams, improved communication and ensured key deadlines were met.

England Agency - Designed and built a new CMS used on over 200 sites, dramatically reduced development time of new sites enabling a smaller team to deliver more.

Professional Experience

Credit Suisse (via JUXT)

Clojure/ClojureScript Developer - 03/2017 to present

Development of a Clojure/Clojurescript UI providing a high level view of trading books at Credit Suisse.

Clojure, ClojureScript, Reagent, Re-Frame, Emacs

Medidata

Full Stack Senior Software Engineer - 06/2016 to 03/2017

Development of a greenfield project. An ES6 React/Redux front end application with backend microservices built with Scala on Akka-Http.

ES6, React, Redux, Scala, Akka-Http, Selenium, MySQL, AWS, Travis CI, Swagger

Sky

Software Developer - 12/2015 to 05/2016

Ongoing development of the NOW TV platform, migration from a Java EE application to microservices written in Scala.

Scala, Play, Spray, Java, Groovy, Spock, REST, MongoDB, Swagger

HMRC

Scala developer - 09/2014 to 11/2015

Development of a new payments system integrating with Worldpay.

Continued development and improvement of business tax homepage.

Development of a new system to automate tax credit renewals.

Scala, Play, REST, Cucumber JVM, Selenium, Microservices, Docker, MongoDB

BBC News

Senior Software Engineer - 03/2014 to 08/2014

Delivered a new system to consume, transform and persist election results.

Development of an aggregation API to improve the delivery of content to the News IOS and Android apps.

Java, REST, AWS, Apache Camel, MySQL

BBC Core Engineering

Senior Software Engineer - 09/2013 to 03/2014

Development of a new in-house CMS. Focused on delivering new features to enable clients to migrate to the new system, dramatically improved the feedback loop and quality of the tests to faciliate BDD.

Provided expertise around the use of MarkLogic, worked on forming a strategy to reduce duplication across the various content management systems within the BBC.

Java, Scala, MarkLogic, XQuery, REST, JMS, Node.js, AWS

BBC Sport

Senior Software Engineer - 05/2011 to 09/2013

BBC Sport Live

Led the design and development of a greenfield project that changes the way data is delivered to users of digital content, initially on the Sport website.

Java, Apache Camel, REST, Node.js

Connected Studio - Death of the Robot

Led the team from concept to delivery of a pilot project, combining the best content from Twitter with editorial content, to enrich and bring more colour to the live event experience on the BBC Sport website.

Java, Twitter Streaming API, OpenNLP, Apache Camel, REST, Node.js, MongoDB, Websockets, AWS

Sports Data

A major refresh of the architecture behind the BBC Sport website. Replaced custom XML format with open standard to enable hot switching of vendors. Improved delivery chain, reduced latency from minutes to seconds.

Java, MarkLogic, XQuery, XSLT, REST, JMS, SportsML

Linked Data Sport API

Led development of a new project to power dynamic indexes on the BBC Sport website.

Java, Linked Data, SPARQL, RDF, REST

Sports Stats

Maintenance and ongoing development of a legacy system that transformed and persisted data from third parties, then generated static server side includes to display sports tables, fixtures and results on the BBC Sport Website pre 2013.

Java, MarkLogic, XQuery, MySQL, Hibernate, JMS, REST

Sports Refresh

Initial refresh of the architecture and design of the BBC Sport website, first launched in February 2012. The first steps in replacing a statically published site with a dynamically driven site.

Java, PHP, Apache Velocity, MarkLogic, SSI

CTI Digital

Senior Developer - 2010 to 2011
  • Java service development using the Spring Framework, REST, Maven, Hudson, Hibernate, MySQL
  • Front end development using PHP, Zend Framework, SOAP, jQuery and ActionScript 3
  • Test Driven Development
  • Version control using Subversion and Git

England Agency

Lead Developer - 2008 to 2010
  • Project estimation and planning
  • Providing creative and technical input on all web projects
  • Developing and maintaining dynamic websites using PHP5, REST, MySQL, JavaScript, ActionScript 3, AJAX, XML and XSLT
  • Development of a new in-house CMS using the Zend Framework
  • Upgrades and ongoing development of the in-house mass mailer system
  • Server installation and maintenance, linux shell scripting
  • Version control using Subversion

Ripe Design

Lead Developer - 2007 to 2008
  • Developing and maintaining dynamic websites using PHP5, MySQL, JavaScript, ActionScript 3, AJAX, XML and XSLT
  • Development of a CRM system built using Adobe Flex and PHP5 for a major property developer
  • Server installation and maintenance, linux shell scripting
  • Integration with web services - Salesforce, COINS, SOAP, Google Maps, PayPal, Google Checkout
  • Scoping and taking responsibility and ownership of large projects to ensure they are delivered on time and to brief
  • Providing creative and technical input on all web projects
  • Ongoing development of the in-house CMS
  • Version control using Subversion

Webanywhere

Web Developer - 2005 to 2007
  • Web development using PHP, MySQL, JavaScript, HTML, CSS
  • Designing and developing websites for schools and businesses
  • Designing and developing new products
  • Development of in-house CRMS
  • Providing training and technical support to customers

Education

Lancaster University - BSc (Hons) Computer Science

2002 - 2005

Moorlands VIth Form Centre, Cheadle, Staffordshire

2000 - 2002

Painsley RC High School, Cheadle, Staffordshire

1995 - 2000