Bachelor's degree in Computer Science, Computer Engineering or related technical discipline
15+ years of relevant engineering experience
5+ years people management experience
Experience with OOD and object oriented languages
Prior experience with agile methodologies
Ability to handle multiple competing priorities in a fast-paced environment
A deep understanding of software development in a team, and a track record of shipping software on time.
Deep hands-on technical expertise
A passion for people management and mentor-ship.
Strong analytic and problem solving skills.
Excellent verbal and written communication skills
Strong business and technical vision
Experience managing managers.
Exceptional customer relationship skills including the ability to discover the true requirements underlying feature requests, recommend alternative technical and business approaches, and lead engineering efforts to meet aggressive timelines with optimal solutions
Experience with large scale distributed systems
Project management experience with cross functional geographically distributed teams.