Job Description
Within the Databases organization, the Azure HorizonDB team is building Microsoft's next-generation cloud-native, fully managed PostgreSQL-compatible database service for mission-critical and AI-powered applications. Azure HorizonDB is designed around a disaggregated compute and storage architecture to deliver predictable low-latency performance, high availability, and seamless scalability at cloud scale.
As a Senior Software Engineer, you will help design, build, and operate core components of the service while solving complex challenges across distributed systems, database technologies, storage, reliability, and performance. You will contribute to building a highly reliable, performant, and scalable database platform while helping evolve HorizonDB to support demanding enterprise and AI workloads on Azure.
Microsoft's Azure Data engineering team is leading the transformation of analytics in the world of data with products including Microsoft Fabric, Azure SQL Database, Azure Cosmos DB, Azure Database for PostgreSQL, Azure Data Factory, Azure Synapse Analytics, Azure Service Bus, Azure Event Grid, and Power BI. Our mission is to build the data platform for the age of AI, powering a new class of data-first applications and driving a data culture across organizations worldwide.
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.
Responsibilities
- Design and implement high-availability capabilities for Azure HorizonDB, improving service resiliency, failure detection, recovery mechanisms, and minimizing customer impact during infrastructure and software failures.
- Design and build highly available and high-performance distributed storage capabilities for Azure HorizonDB, focusing on scalability, reliability, data durability, and predictable performance for demanding database workloads.
- Design and deliver end-to-end automation for engineering and service pipelines, including build, validation, deployment, testing, and operational workflows to improve engineering efficiency and release quality.
- Design and implement data migration capabilities and tools that enable reliable and efficient movement of customer data into and across Azure HorizonDB while minimizing disruption to customer workloads.
- Leverage AI-assisted engineering tools and practices to improve productivity across software design, development, testing, debugging, troubleshooting, and operational workflows while maintaining high standards for quality, reliability, and security.
- Participate in the team's on-call rotation, investigate and resolve customer and service incidents, collaborate with partner teams on complex issues, and drive improvements that enhance service reliability and customer experience.
- Collaborate with engineers, product managers, and partner teams to shape technical designs and product direction, contribute to architecture and engineering decisions, and improve the reliability, maintainability, and operational excellence of Azure HorizonDB.
- Embody our culture and values.
Qualifications
Required/Minimum Qualifications
Bachelor's Degree in Computer Science or related technical field AND 4+ years technical engineering experience with coding in languages including, but not limited to, C, C++, C#, Java, JavaScript, or Python OR equivalent experience.
Hands-on experience building distributed systems or database infrastructure using C++, C, or Rust
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:
Preferred/Additional Qualifications
- Experience with PostgreSQL internals or database engine development, including areas such as query processing, storage engines, transaction processing, logging, replication, recovery, or related database technologies.
- Experience designing and developing distributed systems, including concepts such as availability, consistency, fault tolerance, scalability, distributed storage, and failure recovery.
- Proficiency in at least one systems programming language such as C, C++, or Rust, with experience developing reliable and maintainable production software.
- Experience developing and troubleshooting software on Linux operating systems, including familiarity with system-level concepts, debugging tools, and runtime behavior.
- Experience with system performance analysis and profiling, including identifying bottlenecks across CPU, memory, storage, networking, or other system components and driving performance optimizations.
- Master's Degree in Computer Science or related technical field AND 6+ years of technical engineering experience, or equivalent experience.
- Experience using AI-assisted software engineering tools and practices to improve productivity across design, coding, testing, debugging, troubleshooting, and engineering automation activities.
- Demonstrated ability to collaborate effectively across engineering and partner teams, communicate technical ideas clearly, and contribute to shared design and engineering decisions.
- Ability to investigate and resolve customer and live-site incidents, analyze complex system failures, identify root causes, and drive engineering improvements that reduce recurrence and improve service reliability.
Software Engineering IC4 - The typical base pay range for this role across Canada is CAD $114,400 - CAD $203,900 per year.
Find additional pay information here:
https://careers.microsoft.com/v2/global/en/canada-pay-information.html
Software Engineering IC4 - L'échelle salariale de base typique pour ce rôle dans l'ensemble du Canada est de 114,400 $ CAD à 203,900 $ CAD par année.
Pour plus d'information au sujet de la rémunération, veuillez cliquer ici:
https://careers.microsoft.com/v2/global/en/canada-pay-information.html
Ce poste sera ouvert pendant au moins cinq jours et les candidatures seront acceptées de façon continue jusqu’à ce que le poste soit pourvu.
This position will be open for a minimum of 5 days, with applications accepted on an ongoing basis until the position is filled.
Microsoft est un employeur offrant l’égalité d’accès à l’emploi. Tous les candidats qualifiés seront pris en considération pour l’emploi, sans égard à l’âge, à l’ascendance, à la citoyenneté, à la couleur, aux congés médicaux ou familiaux, à l’identité ou à l’expression de genre, aux renseignements génétiques, à l’état d’immigration, à l’état matrimonial, à l’état de santé, à l’origine nationale, à un éventuel handicap physique ou mental, à l’affiliation politique, au statut de vétéran protégé ou au statut militaire, à la race, à l’ethnie, à la religion, au sexe (y compris la grossesse), à l’orientation sexuelle ou à toute autre caractéristique protégée par les lois, ordonnances et règlements locaux applicables. Si vous avez besoin d’aide avec des accommodements religieux et/ou d’un accommodement raisonnable en raison d’un handicap pendant le processus de candidature, apprenez-en plus sur la demande d’accommodement.
Microsoft is an equal opportunity employer. All qualified applicants will receive consideration for employment without regard to age, ancestry, citizenship, color, family or medical care leave, gender identity or expression, genetic information, immigration status, marital status, medical condition, national origin, physical or mental disability, political affiliation, protected veteran or military status, race, ethnicity, religion, sex (including pregnancy), sexual orientation, or any other characteristic protected by applicable local laws, regulations and ordinances. If you need assistance with religious accommodations and/or a reasonable accommodation due to a disability during the application process, read more about requesting accommodations.