Senior Scala Engineer
Remote
Job Summary
Design and build high-throughput, low-latency services in Scala 3 using a modern functional stack, including cats-effect, http4s, and fs2. Define type-safe, schema-driven APIs and manage AWS infrastructure as code across ECS, Lambda, and event-driven components. Lead architectural discussions, conduct code reviews focused on functional-programming idioms, and instrument services for observability and production reliability. Build automated test suites, produce technical proposals and root cause analyses, and mentor engineers on effect-oriented system design. Translate complex technical trade-offs to stakeholders and support technical evaluations of other consultants.
Required Qualifications
- 5+ years of professional software development experience
- solid hands-on experience in Scala and functional programming
- Production experience with a Typelevel-style effect system and functional HTTP stack (e.g., cats-effect, http4s, fs2, or equivalents)
- Experience designing type-safe, schema-driven APIs in enterprise settings
- Experience supporting high-throughput, production-grade JVM systems, including asynchronous/concurrent programming models
- Experience with observability and distributed tracing tooling
- Proficiency in AWS, with hands-on experience across compute, serverless, database, caching, and event-driven/streaming services (e.g. ECS, Lambda, Aurora, DynamoDB, Redis, Kinesis)
- Experience defining and managing infrastructure as code (e.g., AWS CDK)
- Skilled in functional and property-based testing approaches, plus integration testing against external dependencies
- Comfortable working with modern CI/CD and source control practices
- Strong pragmatic instincts for balancing engineering rigor against business and delivery constraints
- Persistent curiosity and ownership, proactive about identifying and fixing root causes, not just symptoms
- Excellent verbal and written communication skills
- Hands-on experience leveraging AI tools in software development workflows, actively using AI-assisted coding, automation, or productivity solutions to improve delivery speed, code quality, and overall project outcomes
Hiring someone like this?
Get your role in front of qualified candidates on Sorce.