Full job description
Epsilon seeks a Senior Software Engineer with 7-10 years experience to design, develop, and maintain scalable backend services using Java and Python. The role requires expertise in backend engineering with Java frameworks (e.g., Spring), build tools (Maven/Gradle), source control (Git), data modeling with relational and NoSQL databases, and Unix/Linux environments. Candidates must have mandatory experience with spec-driven AI-assisted development using AI coding tools like Cursor and Claude Code, and hands-on experience with RAG architectures and Agentic AI systems. Responsibilities include translating specifications into high-quality code, AI-assisted code generation and debugging, building AI workflows, leading system design, ensuring code quality, collaborating cross-functionally, and resolving production issues. Strong fundamentals in data structures, algorithms, OOP, design patterns, system design, REST APIs, microservices, and distributed systems are required. Technical leadership and mentoring junior engineers are expected. Benefits include flexible time off, paid holidays and sick time, parental leave, childcare and elder care assistance, adoption assistance, health coverage, 401(k), tuition assistance, commuter benefits, professional development, employee recognition, charitable donation matching, and health coaching.
What you'll do
- Design, develop, and maintain scalable backend services using Java and Python
- Apply spec-driven AI-assisted development practices including AI-assisted code generation, refactoring, and optimization
- Translate detailed functional and technical specifications into high-quality code
- Use AI tools for intelligent debugging, test generation, and code reviews
- Build and integrate RAG-based solutions and Agentic AI workflows into enterprise systems
- Lead system design and architecture discussions
- Ensure high code quality through reviews, testing, and best practices
- Collaborate with product, data, platform, and cross-functional teams
- Own and resolve complex production issues
Requirements
- Bachelor’s or Master’s degree in Computer Science, Engineering, or related field or equivalent experience
- 7–10 years of hands-on software development experience
- Strong expertise in Java and Python
- Strong backend engineering experience with Java frameworks like Spring
- Experience with Java build and delivery tools (Maven/Gradle) and source control (Git, pull requests)
- Strong data modeling skills with relational and NoSQL databases
- Experience working in Unix/Linux environments including automation and scripting
- Mandatory experience with spec-driven AI-assisted development
- Practical usage of AI coding tools such as Cursor, Claude Code
- Ability to validate, refine, and productionize AI-generated code
- Hands-on experience with RAG architectures and Agentic AI systems
- Strong fundamentals in data structures, algorithms, OOP, design patterns, and system design
- Experience building and operating backend systems in production
- Solid understanding of REST APIs, microservices, and distributed systems
- Proven ability to own problems end-to-end including design, implementation, testing, and support
- Demonstrated technical leadership including mentoring and code reviews
Tech stack
JavaPythonSpringMavenGradleGitUnix/LinuxCursorClaude CodeRAG (Retrieval-Augmented Generation)Agentic AIREST APIsMicroservicesDatabricksSparkAWSAzureGCPDockerKubernetesCI/CDAngular
Benefits
Flexible time off (FTO)15 paid holidaysPaid sick timeParental/new child leaveChildcare & elder care assistanceAdoption assistanceComprehensive health coverage401(k) retirement planTuition assistanceCommuter benefitsProfessional developmentEmployee recognitionCharitable donation matchingHealth coaching and counseling