
Search by job, company or skills
Job Summary
As a Software Engineer, you will contribute to the development, and operation of large-scale distributed systems. You ll collaborate with experienced engineers to build reliable, performant software solutions used across the organization, while also owning and driving components of the platform forward.
Roles & Responsibilities
Backend Development:Develop, test and deploy scalable and reliable backend services, primarily using Java (preferably Java 17+), adhering to the established coding standards and best practices.
System Design & Architecture:Contribute to the design and implementation of distributed systems that ensure high availability, low latency, and fault tolerance at scale.
Testing & Quality Assurance:Write comprehensive unit, integration, and end-to-end tests to ensure high code coverage and software reliability.
Debugging & Troubleshooting:Investigate and resolve bugs and performance issues in both development and production environments.
Code Review & Mentorship:Participate in code reviews, share knowledge with peers, and learn from senior engineers to continuously improve code quality and team productivity.
Technical Documentation:Document system design, APIs, and service behavior to facilitate maintainability and cross-team collaboration.
Cross-functional Collaboration:Work closely with product managers, QA, SREs, and other engineering teams to deliver end-to-end features and improvements.
Innovation & Learning:Stay current with emerging technologies and trends. Actively seek opportunities to learn and implement new tools and frameworks.
Operational Excellence:Assist in performance tuning and optimization of existing systems to meet millisecond-level latency SLAs. Contribute to operational excellence by monitoring and troubleshooting production issues.
Years of Experience
2-4 years in backend application development (excluding the internship experience)Years of Experience
Education Qualification & Certifications
Bachelors Degree in Computer Science, CIS, or related field (or equivalent work experience in a related field)
2+ years of industry experience in software development with a focus on backend systems.
1+ year of hands-on experience building scalable applications using Java or similar programming languages.
Solid understanding of software engineering principles, data structures, algorithms and system design.
Familiarity with CI/CD practices, version control systems, and Agile methodologies.
Primary Skills (Must Have)
Solid understanding of Data Structures & Algorithms, OOPs and AOP.
Solid understanding of Software Design Patterns, Distributed Systems and Microservices Architecture.
Proficiency in core & advanced Java (Java 17+ preferred).
Proficiency in SpringBoot framework.
Proficiency in working with databases (e.g., Cassandra, Elasticsearch, MongoDB).
Proficiency in writing Test Cases using frameworks/libraries like JUnit, Mockito, Spock, Testcontainers etc.
Experience working with Kafka, Git/Bitbucket, ELK Stack, Promethus, and Grafana.
Familiarity with Functional Programming and Reactive Programming.
Secondary Skills (Desired)
Experience working in high-scale, low-latency environments is a strong plus.
Exposure to heap-dump/thread-dump analysis is a plus.
Exposure to containerization and orchestration tools (e.g., Docker, Kubernetes).
Exposure to languages like Python, Kotlin and GO.
Exposure to large-scale data processing frameworks (e.g., Apache Flink or Spark).
Understanding of security best practices and compliance in data handling.
Contributions to open-source projects or personal GitHub repositories.
Job ID: 111971969