Daniel Midwood, Developer in London, United Kingdom
Daniel is available for hire
Hire Daniel

Daniel Midwood

Verified Expert  in Engineering

Software Developer

Location
London, United Kingdom
Toptal Member Since
December 3, 2014

Dan is a Clojure, Scala, and JavaScript developer with over eight years of experience developing on the JVM. He has an extensive background in building scalable systems and in architecting, designing, and building APIs for top startups in the UK.

Availability

Part-time

Preferred Environment

Emacs

The most amazing...

...thing I've done is to mentor and teach other developers.

Work Experience

Java/JVM Mentor

2014 - 2014
Independent Contract
  • Collaborated with a .NET developer who was porting a C# program to Java.
  • Introduced current technologies, build systems, and testing strategies.
  • Provided guidance on writing idiomatic modern Java.
Technologies: GitHub, Gradle, Java

Scala/Java 8 Software Engineer

2014 - 2014
Independent Contract
  • Developed a proof-of-concept high availability game server for National Geographic's Animal Jam.
  • Worked with a large distributed remote team using GitHub and other tools for remote collaboration.
Technologies: Java, Scala

Developer, Diffbot API Clojure Library

2014 - 2014
Independent Contract
  • Wrote an open source Clojure library for the Diffbot API (see https://github.com/diffbot/diffbot-clojure-client).
Technologies: Diffbot, Clojure

Javascript Developer, Argot.js IoT library

2014 - 2014
Independent Contract
  • Ported a Java IoT communications library from Java into idiomatic JavaScript for deployment in Node.js and on the web (see https://github.com/argotsdk/argot.js.).
Technologies: Internet of Things (IoT), Node.js, JavaScript

Software Engineer

2013 - 2014
Mind Candy
  • Developed for Moshi Monsters, a highly scaled and immensely popular online game for children.
  • Led back-end development for the Moshling Rescue mobile and Facebook game.
  • Gave talks about various technologies to other technical members of staff, and gave talks and demos to the entire company.
  • Built a load test generator that used logs of web requests to generate tests closely mimicking real user behaviour.
  • Involved in the hiring process to filter, interview, and hire good clients for the company.
  • Mentored and educated other members of staff on Scala and functional programming.
Technologies: Amazon Web Services (AWS), PostgreSQL, JavaScript, Java, Scala

Software Engineer

2010 - 2012
CPP
  • Led development teams across front- and back-end development.
  • Introduced a culture of learning, helping to set up regular educational lunches where we would watch tech videos and talks as well as talk about interesting technology ourselves.
  • Became part of the "Developer 2.0" track into software architecture, where I worked across the entire technology department to remove existing problems.
  • Improved relations between Dev and Ops to streamline application deployments and provide greater visibility through the development process.
  • Acted as mentor to new recruits and junior members of staff.
Technologies: REST, JavaScript, Groovy, Java

Software Engineer: Integrations Specialist

2010 - 2010
Liquid Logic
  • Worked closely with clients, capturing requirements through discussions and more formal processes.
  • Introduced version control, automated tests and greater rigour to the development process.
  • Built a common framework that our applications could use to integrate with third party services, and then merged two distinct ad-hoc solutions into it.
  • Led the development of software projects.
  • Promoted the use of open source software, introduced battle-tested components, and saved time by not having to re-implement technology that was already available.
Technologies: REST, Java

Software Engineer

2007 - 2010
Result Group
  • Worked directly with clients, handling the whole SDLC.
  • Became part of an internal task force that investigated, implemented, and taught about additional technologies and techniques.
  • Led teams of developers through projects.
  • Collaborated with other developers to introduce automated tests and set up a continuous integration server.
  • Was recognized as a "high performing" member of staff and fast-tracked through the company.
Technologies: Enterprise Service Bus (ESB), Python, Java

Moshi Monsters

An online game for children. I was a back-end developer, working on services that could handle many concurrent users at scale.

Moshling Rescue

A mobile and Facebook game for children. I led back-end development.

Languages

Java, Clojure, SQL, Scala, Python, JavaScript, Groovy

Paradigms

Continuous Integration (CI), Test-driven Development (TDD), Functional Programming, REST, Agile Software Development, DevOps

Other

RESTful Web Services, Task Automation, SOAP, Memory Profiling, Enterprise Service Bus (ESB), Internet of Things (IoT), Data Analysis, API Design, Protocol Buffers, APIs

Frameworks

Spring, Play Framework, Apache Thrift

Tools

Apache Maven, Gradle, Emacs, IntelliJ IDEA, GitHub, AWS ELB, Chef, Vagrant, SBT, Jira

Storage

PostgreSQL, Amazon S3 (AWS S3), Redshift, MySQL, Redis, Amazon DynamoDB

Libraries/APIs

Node.js, Diffbot, React, Twitter API

Platforms

Amazon Web Services (AWS), MacOS, Linux, Amazon EC2

2001 - 2005

Bachelor of Science Degree in Computer Science

The University of Huddersfield - Huddersfield, UK

Collaboration That Works

How to Work with Toptal

Toptal matches you directly with global industry experts from our network in hours—not weeks or months.

1

Share your needs

Discuss your requirements and refine your scope in a call with a Toptal domain expert.
2

Choose your talent

Get a short list of expertly matched talent within 24 hours to review, interview, and choose from.
3

Start your risk-free talent trial

Work with your chosen talent on a trial basis for up to two weeks. Pay only if you decide to hire them.

Top talent is in high demand.

Start hiring