Are you a talented developer looking for a remote job that lets you show your skills and get decent
compensation? Join Upstaff.com, a platform
that connects you with hand-picked startups and scale-ups in the US and Europe.
Job Description
Company Context: The role is within a British multinational enterprise software company focused on building high-performance, scalable backend systems.
Role Overview
The Scala Engineer will be responsible for designing, developing, and maintaining robust backend services using Scala and a Pekko-based Play Framework. The position requires a strong emphasis on functional programming principles, immutability, and writing clean, testable code. The engineer will work on optimizing distributed architectures and solving complex data challenges within a modern functional technology stack.
Core Responsibilities
- Backend Service Development: Designing and maintaining scalable backend services using Scala and the Pekko-based Play Framework, focusing on functional programming principles.
- Database Optimization: Profiling SQL queries, implementing indexing strategies, and refining queries to enhance database performance on MySQL and Redis.
- Cloud-Native Application Management: Deploying and managing applications within the AWS ecosystem, utilizing services such as EC2, RDS, S3, and Lambda.
- Monitoring and Observability: Building and configuring dashboards and alerts using Grafana and Kibana to ensure system reliability and performance.
- Collaboration and Deployment: Working within a structured CI/CD pipeline and Git-based pull request workflow to ensure smooth and automated deployments.
Technical Environment
- Programming Language: Scala 2.13
- Framework: Play Framework (Pekko-based)
- Databases: MySQL, Redis
- Infrastructure: AWS Services (including EC2, RDS, S3, Lambda)
- Monitoring Tools: Grafana, Kibana
- Version Control and Deployment: Git, CI/CD pipelines
Technical Requirements
- Mastery of Scala standard library, including collections, Futures for concurrency, and pattern matching.
- Strong proficiency in SQL with the ability to explain execution plans and optimize slow queries.
- Hands-on experience with core AWS services.
- Solid understanding of version control (Git) and automated deployment flows.
Additional Preferred Skills
- Experience with functional persistence libraries such as Doobie or Squeryl.
- Familiarity with observability tools, specifically building Grafana and Kibana dashboards and configuring alerts.
- Direct experience with horizontal scaling and managing state in large-scale distributed Pekko systems.