Job descriptionStrong in Object-oriented design, data structures, and design patternsGood problem solving and the ability to develop optimal algorithms10+ years of experience in Java, C++, C#, Ruby, or Python.10+ years of industry experience in designing and implementing distributed N-tier software systemsStrong exposure to automated testing and test coverage aspectsAttention to detail coupled with the ability to think abstractlyKnowledge of professional software engineering practices & best practices for the full software development life cycle, including coding standards, code reviews, source control management, build processes, testing, and operations.Strong debugging, monitoring, diagnosing skills for IT systemsCoaching and guiding cross-functional engineersA keen eye for performance, security, and scalability aspects