Developer - Scala
Indexed description
*** Please note: This is a hybrid role requiring 3 days per week in our Newcastle office ***
Key Responsibilities
In this role you'll:
- Design, develop, and maintain robust backend services using Scala 2.13 and Play Framework in a Pekko-based environment.
- Build clean, testable, and maintainable code using functional programming principles, immutability, pattern matching, and asynchronous programming with Futures.
- Work with MySQL to design efficient data access patterns, optimize queries, tune indexes, and profile database performance.
- Develop, deploy, and support services in AWS, working closely with DevOps and platform teams to ensure reliable delivery.
- Contribute to CI/CD pipelines, Git-based pull request workflows, code reviews, and engineering best practices.
- Collaborate with frontend engineers, QA, product owners, solution designers, and other backend developers to deliver high-quality product increments.
- Support production stability by investigating issues, improving observability, and continuously reducing technical debt.
- Professional backend development experience, ideally in enterprise, SaaS, or cloud-based product environments.
- Strong hands-on experience with Scala, including collections, Futures, immutability, pattern matching, error handling, and clean functional design.
- Commercial experience with Play Framework or comparable JVM backend frameworks; Pekko or Akka experience is highly relevant.
- Strong understanding of relational databases, especially MySQL, with practical knowledge of SQL optimization, indexes, query profiling, and transaction behaviour.
- Experience using Redis or similar technologies for caching, session handling, or performance-sensitive workloads.
- Deep understanding of OOP principles, functional programming, concurrency, the Scala type system, and advanced architectural patterns (e.g., Tagless Final, type classes, effect systems).
- Ability to design and evolve complex distributed systems while promoting engineering best practices across the team
- Hands-on experience with AWS services and cloud-native delivery practices.
- Good understanding of CI/CD, Git, branching strategies, pull request flows, automated testing, and release practices.
- Ability to work effectively in distributed Agile teams, communicate clearly, and take ownership of complex technical problems.
- Experience with Squeryl, Doobie, or similar Scala data access libraries.
- Familiarity with Grafana or Kibana dashboards, alerting, logging, and production observability practices.
- Experience with large distributed systems, horizontal scaling, resilient service design, or high-throughput Play / Pekko applications.
- Previous experience in Payroll, HR, HCM, ERP, compliance-heavy, or localisation-focused product domains.
- Russian, Ukrainian, or Polish language skills would be beneficial, but are not essential.
- Pragmatic, delivery-focused, and able to balance new feature development with maintenance, bug fixing, and technical improvement work.
- Proactive in code reviews, design discussions, troubleshooting, and knowledge sharing across the engineering team.
- Strong problem-solving mindset, attention to detail, and willingness to work with an established codebase while helping modernise it over time.
Benefits? We have plenty...
Video: https://www.youtube.com/watch?v=TCMtTYUUiuU
- Generous bonuses and pension scheme: Up to 8% matched pension contribution plus 2% top-up by Sage.
- 25 days of paid annual leave with the option to buy up to another 5 days.
- 8 bank holiday days.
- Paid 5 days yearly to volunteer through our Sage Foundation.
- 50% income protection.
- Holiday buy + sell.
- Comprehensive health, dental, and vision coverage.
- Work away scheme for up to 10 weeks a year.
- Ongoing training and professional development.
- Hybrid working.
- Healthy Mind app membership
- Access to various helpful memberships for finances, health and wellbeing.
Create a free Caio profile to unlock more results and save your role and location preferences.
Unlock free search