- Company Name
- NR Consulting
- Job Title
- Back End Developer
- Job Description
-
Job Title: Scala Backend API Developer
Role Summary: Build, test, and maintain high‑performance Scala‑based backend APIs serving microservices on AWS, leveraging NoSQL databases, container orchestration, and automated pipelines.
Expectations: Deliver reliable, scalable services; adopt test‑driven principles; continuously integrate and deploy code; monitor production health; collaborate with DevOps and product teams to refine architecture.
Key Responsibilities:
- Design and implement RESTful APIs in Scala, using best practices in code structure and documentation.
- Develop data access layers for MongoDB or other NoSQL databases, ensuring efficient querying and data consistency.
- Write unit, integration, and end‑to‑end tests; implement TDD using frameworks such as ScalaTest, Specs2, or similar.
- Build and maintain CI/CD pipelines with Jenkins or GitLab CI, integrating automated tests and deployment stages.
- Containerize services with Docker, orchestrate via Kubernetes, Helm, and apply service mesh tooling (Istio, Argo) as needed.
- Implement caching strategies using Memcached and evaluate cache layer performance.
- Deploy applications to AWS managed services (e.g., Elastic Beanstalk, ECS/EKS, RDS) and manage resources via IaC.
- Configure and tune monitoring, logging, and alerting using Datadog, Prometheus, Splunk, or Instana.
- Document APIs using Swagger/OpenAPI, ensuring alignment with frontend and client teams.
Required Skills:
- Strong proficiency in Scala (2.12+/3.x) and functional programming principles.
- Experience with REST API design and implementation.
- Hands‑on with MongoDB or equivalent NoSQL databases.
- Test‑driven development; familiarity with automated testing frameworks.
- Proficiency in AWS services (EC2, ECS, EKS, Lambda, S3, RDS).
- Expertise in containerization (Docker) and orchestration (Kubernetes, Helm).
- Knowledge of service mesh (Istio) and CI/CD tools (Jenkins, GitLab CI).
- Familiarity with caching technologies (Memcached).
- Experience with monitoring and observability tools (Datadog, Prometheus, Splunk, Instana).
- Proficient with API documentation using Swagger/OpenAPI.
Required Education & Certifications:
- Bachelor’s degree in Computer Science, Software Engineering, or related field (or equivalent practical experience).
- Relevant certifications (e.g., AWS Certified Developer – Associate, Certified Kubernetes Administrator) are a plus.