Find a job
← To job search

Senior Scala Engineer

Apply now
Role area:
Contract type:
Full Time
Share on LinkedIn

Is this you?

You are a Scala Developer that has spent years using agile and lean practices to deliver world class software. You are a Kaizen creature who never stops thinking about how to improve yourself and your team.

When hardware fails, your applications keep going because they are fault tolerant. When the company grows, your applications scale right alongside. Customers enjoy using your applications, because they are reactive and always perform well.

You understand that building the ‘right thing’ is as important as building the ‘thing right’, and have leveraged test-driven techniques to achieve both. You believe that software quality is the responsibility of the whole team, regardless of job titles.

You understand and embrace the philosophy of Continuous Delivery. You have no interest in throwing your work ‘over the wall’ to anybody. Instead, you passionately believe in an agile, DevOps-centric team that builds, tests, releases and operates its own applications.

As a Strong Scala developer you have:

  • Successfully developed and deployed at least one greenfield Scala application
  • A strong understanding of Akka in particular, experience with AKKA Persistence & Event Sourcing
  • The ability to use built in Scala collections efficiently
  • The ability to build applications using promises / futures / Scalaz task
  • The ability to write testable code using Scala test
  • An understanding of Test-driven development techniques (e.g. BDD and ATDD)
  • An understanding of Agile and Lean approaches

Advantageous skills include:

  • Type level programming skills using shapeless
  • A knowledge of scalaz-streams or Akka Streaming
  • An understanding of basic type classes from Scalaz/cats (Monoid/Monad/Applicative etc…)
  • Experience of NoSql stores, especially Cassandra
  • Experience of RabbitMq Message Broker and Kafka.