As a engineer, you will be responsible for designing, coding and testing features that will add measurable value to our business partners and stakeholders. You will be responsible for making sure that our software and services are built to scale meeting rigorous security and compliancy requirements and operate in highest level of service maturity. You will be innovating on the latest technologies (AI/ML, Cloud, Big Data, Mobile, Social, Security Software and services and more) while engineering in an environment characterize by: TDD, Continuous Integration & Deployment, Instrumentation & Telemetry, Service monitoring and diagnosibility. You will work closely with all stakeholder – our business partners, your engineering peers in the Royalties team, partner engineering teams and other disciplines, all in the context of delivering value using innovation in a service that tries to move to the next higher level of service maturity.
• Design and develop large scale distributed software services and solutions that form the backbone for the Royalties business in Microsoft.
• Practice Agile+ software development by adding and leveraging Telemetry/Instrumentation to our components and services to drive decisions while executing in an agile cadence for engineering activities such as: designing, coding, testing, debugging and incident management.
• Adhere to and drive sound software engineering practices through design reviews, system design through well-defined interfaces across multiple components, code reviews, leveraging data / telemetry to make decisions.
• Develop “best-in-class” engineering for our services by ensuring that the services and the components are: well-defined and modularized, secure, reliable, diagnosable, actively monitored and reusable.
• Pays utmost attention to quality right from the design phase, incorporating TDD practices and are engineered for testability
• Exposes test coverage issues, organizes and implements integration tests, and resolves problem areas.
• Considers diagnosability, portability/monitoring, reliability, and maintainability, and understands when his or her code is ready to be shared and delivered.
• Demonstrate excellent verbal and written communication skills.
• Gain a working understanding of Microsoft businesses and collaborate with mentors and leaders in order to contribute to cohesive, end-to-end experiences for our users.
• Applies coding patterns and best practices.
• Collaborate effectively with other disciplines of the project team.
• Very Strong development and testing experience in Object Oriented Language or Web development (3+ years)
• Relational Database development and performance tuning skills on very large scale enterprise systems (1+ years).
• 1-3years of software development experience in building enterprise applications.
• Exposure to design and implementation of large scale distributed systems, cloud concepts at a theoretical or practical level.
• Excellent programming skills in C#/C++.
• Strong skills in designing and implementing Service Oriented Architecture, REST, OData services.
• BS in Computer Science, Engineering, or other technical discipline
• MS in Computer Science, Engineering, or related discipline
• At least 1-2years’ experience building large scale distributed systems / services on Azure or AWS.
• Experience in Agile execution
• Experience building Telemetry systems and/or adding instrumentation to large scale distributed systems that helps us collect metrics.
• Experience with Data Warehouse, reporting frameworks, Application Insights.