Software Developer/ Engineer/ Architect

Software Developer - Distributed Systems

About the Role

We have a collaborative team structure where anyone can drive a feature, contribute a design or propose new ideas: you bring your experience, insights, anticipation and skills to this culture.

We aim to provide an environment where you can develop your skills, learn lots and work with wonderful people on interesting projects.

As a member of our team, you will be part of

  • Designing & developing high quality, secure and scalable solutions
  • Actively engaging in code reviews, demos and design discussions.
  • Following agile methodologies to drive continuous delivery.
  • Actively identifying areas of improvement and proposing solutions.
  • Proficient at collaborating with teammates to design, maintain and improve sophisticated object-oriented and/or functional software
  • A solid understanding of distributed system design and operation
  • Very strong technical knowledge with typically 5+ years working with a JVM-based programming language (e.g. Java, Groovy, Scala etc.)
  • A testing/quality-based approach - e.g. unit, system/integration and end-to-end testing, TDD, BDD
  • Experience of Agile development and of build, test and release automation
  • Great anticipation, attention to detail