I’m not going to put my full CV here, but will limit the page to a summary of what I am working on at the moment.

My current contract is with a government agency (not allowed to say precisely which one) where I am writing automated tests in Ruby for apps and services in a micro-service environment.

The tools of choice are:

  • RubyMine for scripted tests in Cucumber
  • Capybara for GUI testing in Ruby
  • Ruby with HTTParty for service-level testing in Ruby
  • Soap UI for ad hoc and interactive service tests
  • Burp Suite for security testing of web apps
  • Gatling

The key architecture features which I have had to understand and work with are:

  • CQRS model
  • Event Sourcing (using Event Store)
  • ELK stack
  • Amazon AWS for RESTful web micro-services
  • Mongo for document-oriented NoSQL databases
  • Kibana over Elasticsearch for service level log inspection

Some of this technology is quite new, and all of it is interesting. ¬†For example, here’s Martin Fowler on CQRS:

CQRS stands for Command Query Responsibility Segregation. It’s a pattern that I first heard described by Greg Young. At its heart is the notion that you can use a different model to update information than the model you use to read information