Backend Developer (Java / Spring)
Experience: 3.00 + years
Salary: INR 1400000 / year (based on experience)
Expected Notice Period: 15 Days
Shift: (GMT+05:30) Asia/Kolkata (IST)
Opportunity Type: Remote
Placement Type: Full Time Permanent position (Payroll and Compliance to be managed by: PRT)
Note: This is a requirement for one of Uplers' client - PRT
Must have skills required: LLM, rag, Spring AI, Spring Security, Springboot, Java, Kubernetes, MongoDB
Role: Backend Developer
Team: Engineering
Location: Work From Home
Type: Full-time
Experience: 3-4 years
About Us
We are a sovereign, on-premises AI platform covering the full AI lifecycle: model training, inference, retrieval‑augmented generation (RAG), agents, and multi‑agent systems. We build for regulated and data‑sensitive enterprises that cannot send their data to public cloud APIs. Everything we ship is designed to run inside the customer’s own environment, including fully air‑gapped deployments. As an early‑stage company, we move fast and keep our stack lean. You will work close to the product, ship real features into production, and have a direct say in the architecture you build on.
The Role
We are looking for a backend developer to help build the core of our platform: the agent runtime, the RAG and document ingestion pipelines, and the messaging infrastructure that ties them together. This is a hands‑on engineering role with significant ownership over design decisions. You will work primarily in Java and Spring Boot, with Spring AI at the center of our agent and inference layer.
What You Will Do
- Design and build backend services in Java and Spring Boot, with a focus on clean separation of concerns and minimal framework complexity.
- Develop the agent runtime on top of Spring AI: tool‑calling, structured output handling, human‑in‑the‑loop flows, and durable suspend/resume of agent runs.
- Build and harden RAG and document ingestion pipelines, including extraction, chunking, and vector search over pgvector.
- Work with RabbitMQ and Spring AMQP to build durable, event‑driven messaging across the platform, including QoS profiles and token propagation.
- Integrate inference backends such as llama.cpp and expose them cleanly to the rest of the system.
- Model and persist application state in MongoDB, and design schemas that hold up under real production load.
- Package and deploy services with Docker and Kubernetes, including into customer‑managed and air‑gapped clusters.
- Contribute to API design and documentation, and help keep the codebase maintainable as the team grows.
Required
- Strong professional experience with Java and the Spring ecosystem, especially Spring Boot.
- Solid grasp of backend fundamentals: concurrency, data modeling, API design, and testing.
- Strong testing discipline, with hands‑on experience writing both unit and integration tests (JUnit 5, Mockito, AssertJ, Spring Boot Test, and Testcontainers).
- Experience with message brokers (RabbitMQ or similar) and event‑driven architectures.
- Comfort working with databases, both relational (Postgres) and document stores (MongoDB).
- Experience securing applications with Spring Security (authentication, authorization, JWT, OAuth2).
- Hands‑on experience containerizing and deploying services with Docker and Kubernetes.
- A pragmatic engineering mindset: you favor simple, durable solutions.
- Ability to work independently and own features end to end in a small team.
Nice to Have
- Experience with Spring AI or building LLM‑backed applications.
- Familiarity with RAG, vector databases (pgvector), or embedding pipelines.
- Exposure to agentic systems, tool‑calling, or multi‑agent orchestration.
- Experience running models locally (llama.cpp, vLLM) or with on‑premises / air‑gapped deployments.
Why Join Us
- Real ownership: you shape the architecture, not just tickets in a queue.
- Work on hard, current problems at the intersection of enterprise software and applied AI.
- A lean, JVM‑native stack with a strong bias toward clean engineering.
- Early‑stage equity and the chance to grow with the company.
Our Tech Stack
- Language & framework: Java, Spring Boot, Spring AI, Spring Security
- Messaging: RabbitMQ, Spring AMQP
- Data: MongoDB (Spring Data MongoDB), PostgreSQL, pgvector
- Inference: llama.cpp, vLLM
- Infrastructure: Docker, Kubernetes
- Testing: JUnit 5, Mockito, AssertJ, Spring Boot Test, Testcontainers