About the Role
Design, develop and fix code in a distributed software while considering tradeoffs between data consistency, availability, partition and tolerance.
Maintain and improve software and tools for a data processing system involving efficient distributed data algorithms, concurrent transactions, distributed memory management and communication protocols.
Craft and develop test scenarios to improve code coverage
Develop tools or scripts to automate and support debugging
Collaborate and partner with workmates on application teams
About You
Basic Qualifications
8+ years of Software Engineering experience
3+ years of hands-on professional experience with Distributed Systems, with a strong understanding of scalability, high availability, latency, and throughput
5+ recent / current years of experience programming using Java
Other Qualifications :
Solid knowledge with Java build tools such as Gradle
Experience with Tomcat, MySQL, Docker
Good understanding with communication protocols, restful services, microservices
Experience working with private and public clouds
Knowledge of CI / CD pipelines
Senior Software Engineer • Chennai, Tamil Nadu, India