Hello, I’m David, a software engineer.


I’m Head of Engineering at Octopus Energy, a tech-focussed UK energy supplier. I help run a team of engineers building the software platform that underpins the business.

Previously I’ve worked as:

One of my strengths is building and running teams that write high-quality, maintainable software.


Everything to do with software; but especially:

  • Design, patterns and architecture.
  • Tests, testing and TDD (I’m a keen advocate of London-school TDD and Discovery testing).
  • Unix, Bash and working at the command-line (I originally wrote the site commandlinefu.com).
  • Python, Javascript, Golang.
  • Vim, Git.
  • AWS, the “Hashistack”, infrastructure-as-code.
  • The practices of effective teams: code review, continuous deployment, pairing etc

Conference talks

Plus several talks for local Python/Django user groups. Assorted slidedecks are available on Speakerdeck.


I have a PhD in Applied Mathematics as well as a 1st class MMath Mathematics degree from the University of Nottingham and a few published papers:

  • Sqrt(5):2 mode interactions on a square lattice
    Int. J. Bif. and Chaos 14 11 3883-3897
    D.M. Winterbottom
  • Oscillatory pattern formation with a conservation law
    Nonlinearity 18 1031-1056
    D.M. Winterbottom, P.C. Matthews, S.M. Cox
  • Pattern Formation in a Model of a Vibrated Granular Layer
    SIAM J. Appl. Dyn. Syst. 7(1) 63-78
    D.M. Winterbottom, S.M. Cox, P.C. Matthews