Job Description
Client: A high-growth SAAS Company that empowers digital brands to increase customer retention and lifetime value with the help of data, personalization, deep-tech and automation.
They are looking for an engineering mindset that brings fresh ideas from various areas, including large-scale platform design, analytics, data structures, security practices, large-scale data retrieval and processing environments.
As a Team Lead you will be guiding a team of software engineers and working closely with product managers, QA engineers, and designers, software engineers, and will be responsible for designing, building, deploying and scaling various products under the umbrella of client Platform.
Key Responsibilities:
- Understand the functional and non-functional requirements, specifications and drive the story development by working with team members.
- Design and develop highly scalable, highly available, reliable, secure and fault tolerant systems with minimal guidance.
- Adhere to the system design philosophy and goals and bring improvements to the code quality across platform.
- Collaborate with cross functional teams (Product, Design, Data Science, SDK, Frontend developers, QA) on planning and execution to achieve delivery/output and seamless integrations with interdependent systems.
- Build reusable code and libraries and follow high code standards, unit-testing and automated test coverage.
- Own the entire lifecycle of feature development, test, deployment, fixes and improvements.
What are we looking for in a Candidate?
- BS/MS degree in Computer Science from premier institute with top grades or equivalent practical experience.
- 4 – 8 years of experience in back-end development (Designing, developing, testing and deploying large scale applications) with one of the JVM languages or other server-side technologies.
- People Management/Team Leading experience is a must.
- Proficiency in Java, J2EE, Databases, Spring, etc.
- Strong fundamentals in Data Structures, Algorithms and System Design, OOP, Design patterns etc.
- Strong programming concepts (Object oriented programming concept, design patterns etc.)
- Ability to understand and implement CI/CD (Continuous Integration and Continuous Delivery).
- Sound knowledge of Agile methodologies, TDD and automation.
- Endless curiosity and ability to work both collaboratively and independently.
- Prior excellent and demonstrable engineering track record.
- Familiarity with RESTful APIs and ability to design and implement low latency services.
- Excellent troubleshooting skills – memory leaks, GC tuning.
Measure of Success:
- Ensuring that the team writes quality and bug-free code adhering to the functional and non-functional requirements.
- Follow standard practices (Unit Tests, Reduce technical debt, Code Coverage, Integration Test, etc.).
Key Competencies:
- Functional Competencies: Programming, system design and analysis, data structures and algorithms, Agile development.
- Behavioral Competencies: Analytical problem solving, attention to detail, teamwork and collaboration