Principal Software Engineer
Microsoft
Principal Software Engineer
Sydney, New South Wales, Australia
Save
Overview
Are you passionate about distributed systems, massive scalability, and durability? Are you interested in solving the challenges of Cloud-scale Storage? If so, the Microsoft Azure Storage team is the perfect fit for you. Azure Storage is a foundational service in the Azure Cloud which powers six key storage services: Blob Storage, Table Storage (NoSQL Key-Value store), Queue Storage, Data Lake Storage, File Storage, and Disk Storage. These services host data from some of the largest companies in the world and support all of Microsoft’s largest online businesses including Xbox, Office365, and Bing while scaling to store many exabytes of customer data.
The Microsoft Azure Storage team is seeking a Principal Software Engineer with a strong and proven record of top-notch design and code development skills. This position will play a key role in defining the technical direction of the most complex pieces of Azure Storage, with a focus on reliability, scalability, performance, consistency, quality and debuggability. We are looking for a talented software engineering who is customer-obsessed and passionate about creating high-quality end-to-end experiences that delight customers. You will have an opportunity to make high impact changes daily as you work on a hyper-scale storage system that may indirectly or directly be used daily by your friends and family.
Microsoft’s mission is to empower every person and every organization on the planet to achieve more. As employees we come together with a growth mindset, innovate to empower others, and collaborate to realize our shared goals. Each day we build on our values of respect, integrity, and accountability to create a culture of inclusion where everyone can thrive at work and beyond.
Qualifications
Required Qualifications:
- 8+ years of professional software development experience building scalable, distributed services with C++ or C#. Experience of both is a big plus.
- 5 years of experience in designing, analyzing, and troubleshooting large-scale distributed systems
- Minimum of a Bachelor’s degree in Computer Science, Computer Engineering, Software Design, Software Engineering, or a related field, or equivalent alternative education, skills, and/or practical experience is required.
Other Requirements:
- Ability to meet Microsoft, customer and/or government security screening requirements are required for this role. These requirements include, but are not limited to the following specialized security screenings:
- Microsoft Cloud Background Check: This position will be required to pass the Microsoft Cloud Background Check upon hire/transfer and every two years thereafter.
Preferred Qualifications:
- A passion for distributed systems and large-scale storage
- Experience with multi-threaded/parallel programming
- Solid REST API knowledge.
- Excellence in software engineering practices, coding and solid foundation in data structures, algorithms with strong testing, debugging and analytical skills
- Proven ability to plan, schedule and deliver quality software
- A determined engineer, someone who is disciplined about reliability, performance and architecture.
- Personable and positive: we want people with a high emotional intelligence. You understand people aren't perfect-you have the patience to work through difficult issues with external and partner teams.
- Driven: Interested in owning cross team initiatives and improvements to improve Azure Storage.
- 3+ year(s) of experiencein Security / Authentication areas.
#azurecorejobs
Responsibilities
- Partners with appropriate stakeholders to determine user requirements for a set of scenarios.
- Leads identification of dependencies and the development of design documents for a product, application, service, or platform.
- Leads by example and mentors others to produce extensible and maintainable code used across products.
- Leverages subject-matter expertise of cross-product features with appropriate stakeholders (e.g., project managers) to drive multiple group's project plans, release plans, and work items.
- Holds accountability as a Designated Responsible Individual (DRI), mentoring engineers across products/solutions, working on-call to monitor system/product/service for degradation, downtime, or interruptions.
- Proactively seeks new knowledge and adapts to new trends, technical solutions, and patterns that will improve the availability, reliability, efficiency, observability, and performance of products while also driving consistency in monitoring and operations at scale and shares knowledge with other engineers.