Software Development Engineer
BASIC QUALIFICATIONS
Programming experience with at least one modern language such as Java, C , or C# including object-oriented design
Bachelors or Masters's Degree in Computer Science or related field
Strong in Object-oriented design, data structures, and design patterns
Good problem solving and ability to develop optimal algorithms
3 years of experience in Java, C, C#, Ruby, or Python.
3 years of industry experience in designing and implementing distributed N-tier software systems
Experience developing on a Linux platform
Attention to detail coupled with the ability to think abstractly
Knowledge 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 systems
A keen eye for performance, security, and scalability aspects
Coaching and guiding cross-functional engineers
Strong exposure to automated testing and test coverage aspects
PREFERRED QUALIFICATIONS
Solid foundation in computer science fundamentals, including data structure and algorithms
Experience developing software services with an understanding of design for scalability, performance, and reliability.
Knowledge of professional software development life cycle best practices, including coding standards, code reviews, source control management, build processes, testing, and operations
Ability to take a project from scoping requirements through actual launch of the project
Excellent verbal and written English communication skills
Basic knowledge of Machine Learning