Backend Engineer
Job description
About the role
Anaplan is seeking a Backend Engineer to join their growing engineering team based in Gurugram, India. The role focuses on building and maintaining the server-side systems that drive Anaplan's cloud-based planning and performance management platform. You will be responsible for designing scalable services that handle large volumes of data and serve millions of users worldwide. This position offers the chance to work on meaningful infrastructure challenges while collaborating with talented engineers across multiple product teams.
Key facts
What you'll do
1. Design and implement RESTful APIs that serve data to front-end applications and external partners reliably
2. Build and maintain microservices architecture using modern programming languages and established frameworks
3. Optimize database queries and data models to ensure high performance under heavy load conditions
4. Collaborate with product managers and designers to translate business requirements into detailed technical specifications
5. Write comprehensive unit tests and integration tests to ensure code quality and long-term reliability
6. Participate actively in code reviews and contribute to engineering best practices across the entire team
7. Troubleshoot production issues and perform root cause analysis to prevent recurring system failures
8. Develop caching strategies and message queue systems to improve overall application responsiveness and throughput
9. Contribute to infrastructure automation and deployment pipelines that support continuous delivery and rapid iteration
10. Mentor junior engineers and share knowledge through technical documentation and collaborative pair programming sessions
11. Evaluate new tools and technologies that can improve system performance and overall developer productivity
12. Work closely with security teams to implement authentication, authorization, and data protection measures
13. Participate in capacity planning and performance tuning to ensure systems meet growing demand
14. Document system designs and architectural decisions to support knowledge sharing and future onboarding
15. Engage in on-call rotations to monitor service health and respond to production incidents promptly
16. Refactor legacy code modules to improve maintainability and reduce technical debt across the codebase
17. Participate in architecture discussions and contribute to long-term technical roadmaps for the backend team
Requirements
1. Bachelor's degree in Computer Science, Engineering, or a related technical discipline from an accredited institution
2. Three to five years of professional experience building backend systems and distributed services in production
3. Strong proficiency in at least one backend programming language such as Java, Python, or Go
4. Demonstrated experience with relational databases like PostgreSQL or MySQL including query optimization techniques
5. Familiarity with cloud platforms such as AWS or Azure for deploying and managing scalable services
6. Solid understanding of REST API design principles, HTTP protocols, and web service architecture
7. Hands-on experience with version control systems, particularly Git, in a collaborative team development environment
8. Working knowledge of containerization technologies like Docker and orchestration tools such as Kubernetes
9. Ability to write clean, maintainable code with strong attention to detail and code quality standards
10. Comfort with ambiguity and the ability to prioritize tasks in a fast-paced, dynamic environment
Nice to have
1. Experience with event-driven architectures and streaming platforms like Apache Kafka or RabbitMQ for asynchronous processing
2. Familiarity with distributed systems concepts such as consensus protocols, replication, and eventual consistency models
3. Prior exposure to financial technology or enterprise SaaS products in a planning or analytics domain
4. Contributions to open source projects or personal side projects demonstrating backend engineering skills and initiative
5. Experience with monitoring and observability tools such as Prometheus, Grafana, or similar platforms
6. Experience with CI/CD pipelines and automated testing frameworks to support rapid and safe deployments
Skills & tools
1. Programming languages including Java, Python, or Go for server-side application development
2. REST and GraphQL API design and implementation for scalable service interfaces
3. Relational and NoSQL database management, schema design, and query optimization techniques
4. Cloud services on AWS or Azure including compute, storage, networking, and serverless functions
5. Containerization with Docker and orchestration with Kubernetes for deployment and scaling
6. Message queuing systems and asynchronous communication patterns for distributed system design
7. Version control with Git and collaborative workflows using pull requests and code reviews
8. Testing frameworks and practices for unit, integration, and end-to-end test coverage
9. Logging and monitoring practices for tracking application health and diagnosing issues in production
Practical notes
1. This role is based in Gurugram, India, and requires regular on-site presence at the company office
2. The hiring process includes multiple technical interviews and a system design round to assess candidates thoroughly
3. Anaplan offers competitive benefits packages and professional development opportunities for all engineers on the team
4. Candidates should be prepared to discuss past projects and demonstrate problem-solving abilities during the interview rounds
5. The team values diversity and encourages candidates from all backgrounds to apply for this position
About the company
Headquarters in Miami, Florida hosts a company focused on business planning software. Subscription sales fund access to cloud tools. Teams receive data intended to guide choices. Purpose centers on planning support and decision information. Services target organizations seeking structured approaches to forecasts and collaboration. Online platforms deliver content. Commitment stays directed toward clarity in plans. Continuous updates provide fresh inputs. Clients rely on consistent tools. Overall direction aims to simplify complex planning demands through connected systems.