Full Job Description
We're looking for a Senior **Backend Software Engineer** with strong hands-on experience across both Java and Node.js to support backend and microservice development for our client. You'll work on REST APIs and distributed backend systems deployed in a cloud-native, containerized environment, collaborating closely with engineers, technical leads, and product managers across multiple teams.
This role requires someone who can move comfortably between Java/Spring and JavaScript/Node.js codebases, has a solid grounding in computer science fundamentals and distributed systems, and takes ownership of issues from identification through resolution with minimal supervision.
This is a** full-time remote **position.The annual base salary range is **$120,000 - $140,000**. Candidates will be paid within this range based on their work experience and skills. Candidates are also eligible for our full list of benefits linked here.
Responsibilities
- Design, develop, and maintain backend services and REST APIs using Java, Spring Framework/Spring Boot, and Node.js
- Build and support containerized microservices deployed on AWS, including Kubernetes/EKS environments
- Apply asynchronous, reactive, or functional programming patterns where appropriate across both Java and JavaScript codebases
- Troubleshoot complex backend and distributed-system issues, performing root-cause analysis and driving fixes through to resolution
- Work with Infrastructure as Code (Terraform preferred) and CI/CD pipelines (GitHub Actions, Concourse, Jenkins, or similar) to support deployment and delivery
- Design and implement integrations with SQL and NoSQL databases
- Participate in code reviews, sprint planning, technical discussions, and troubleshooting sessions
- Proactively identify and escalate blockers, risks, and dependencies rather than waiting for others to surface them
- Take ownership of production issues, coordinating resolution across internal and partner teams
- Communicate technical issues, risks, and proposed solutions clearly to both technical and non-technical stakeholders
Qualifications
Java / Backend Development
- Strong hands-on Java experience with Spring Framework/Spring Boot
- Experience designing REST APIs and backend microservices
- Solid grasp of OOP, software design principles, and backend architecture
- Familiarity with asynchronous, reactive, or functional programming
- Ability to troubleshoot complex backend and distributed-system issues
JavaScript / Node.js
- Hands-on Node.js backend experience, including async patterns and frameworks like Express.js
- Comfortable working across both Java and Node.js codebases
Cloud / Infrastructure
- Strong AWS experience (or comparable cloud platform)
- Experience with containerized applications and Kubernetes (EKS preferred)
- Familiarity with Terraform/IaC and CI/CD tools (GitHub Actions, Jenkins, or similar)
- Comfortable in Linux environments
CS Fundamentals
- Strong grounding in data structures/algorithms, concurrency, distributed systems, and system design
- JVM and memory management fundamentals
- Database fundamentals (SQL and NoSQL)
Communication & Ownership
- Strong communicator across engineering, product, and cross-team stakeholders
- Proactively surfaces blockers and risks rather than waiting to be asked
- Owns issues end-to-end, including production incidents, with minimal supervision
Additional Information