Job Summary:
As a Software Engineer, you will contribute to the development and operation of large-scale distributed systems. You will collaborate with experienced engineers to build reliable, performant software solutions used across the organization. Additionally, you will own and drive components of the platform forward.
Roles & Responsibilities:
- Backend Development: Develop, test, and deploy scalable and reliable backend services, primarily using Java (preferably Java 17+), following coding standards and best practices.
- System Design & Architecture: Contribute to the design and implementation of distributed systems ensuring 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 improve code quality and team productivity.
- Technical Documentation: Document system design, APIs, and service behavior to ensure 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 current 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 internship experience).
Education Qualification & Certifications:
- Bachelor's Degree in Computer Science, C