• 4 to 7 years of experience in software development
• BS or MS in Computer Science or in a relevant Engineering discipline
• Computer Science fundamentals in object-oriented design
• Computer Science fundamentals in data structures
• Computer Science fundamentals in algorithm design; problem solving; and complexity analysis
• Strong technical experience with object oriented design (C++)
• Good knowledge of Data structure; Algorithms and distributed system design Good experience on Unix platform
• Good knowledge of database systems
• Good to have Java knowledge
• Consistent track record and experience leading creation of complex software systems that have been successfully delivered to customers
• 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
• Experience in communicating with users; other technical teams; and senior management to collect requirements; describe software product features; technical designs; and product strategy
• Will have experience designing and supporting large-scale distributed systems in a production environment
• Ideal candidates will show excellent debugging and troubleshooting skills; with an enthusiastic attitude to support and resolve customer problems.