Firmenlogo

Hybrid Software Engineer II Software Engineer II with verification

Microsoft  ·  nan, · Hybrid

Jetzt bewerben

About the job

The MAIA System Infrastructure team is pioneering the development of the next-generation developer ecosystem for AI Accelerators. We are at the core of creating the infrastructure that enables deep observability into our proprietary MAIA chips, empowering developers to harness the full potential of these advanced AI accelerators. Our mission is to build a transparent, efficient, and powerful ecosystem that goes beyond traditional GPU observability, providing unmatched insights into the operations and performance of our AI accelerators.We operate at the intersection of cutting-edge AI hardware, system software, and developer tools, constantly pushing the boundaries of what is possible. We not only focus on the internal execution and performance metrics of the MAIA chips but also play a crucial role in optimizing the broader data flow infrastructure, particularly over PCIe, eBPF and various frontend networks, ensuring seamless and efficient data movement between the host and accelerators. By decomposing and optimizing data flow infrastructure into state-of-the-art designs, we aim to maximize the performance and efficiency of AI workloads, enhancing the overall ecosystem's capabilities. Our collaborative efforts span across hardware architects, system engineers, and AI researchers, all aimed at building a holistic observability stack that drives the next wave of AI innovation.As a Software Engineer II on the MAIA System Infrastructure team, you will play a crucial role in building and optimizing the infrastructure that underpins our observability and data flow infrastructure for MAIA AI accelerators. Your primary focus will be on developing and enhancing the data flows that support our complex data flows across hosts and networks, ensuring they provide accurate and actionable insights into the complex operations of our AI hardware. This role involves working closely with senior engineers to design and implement data flow mechanisms that are efficient, scalable, and capable of handling the intricacies of our advanced accelerator architecture.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.ResponsibilitiesIn this position, you'll be hands-on in developing and optimizing the infrastructure that enables our observability and debugging tools to function seamlessly across multi-chip, multi-server environments. Your work will directly contribute to how developers interact with, analyze, and optimize AI workloads on our accelerators, ensuring that data transfer and processing are handled with maximum efficiency.Foster An Inclusive And Collaborative EnvironmentActively contribute to a culture of inclusivity by valuing diverse perspectives, mentoring peers, and promoting open communication. Support and uplift teammates to ensure everyone can contribute their best in a high-performing, collaborative environment.Develop And Optimize Tooling InfrastructureWork on the core infrastructure that supports our observability tools, focusing on the data flows and the efficient management of information between host systems and MAIA accelerators.Implement and refine data transfer mechanisms, ensuring they are optimized for speed, reliability, and scalability across a distributed system of accelerators.Contribute To Data Flow EfficiencyCollaborate with senior engineers to decompose and optimize the data flow architecture over our entire hardware stack, focusing on minimizing latency and maximizing throughput.Engage in profiling and debugging the data flow paths to identify and resolve bottlenecks, contributing to the overall performance of the AI infrastructure.Participate In Building Robust SystemsAssist in building and maintaining the infrastructure that allows seamless interaction between the tooling stack and the MAIA chips, ensuring reliable data collection and analysis.Contribute to the development of internal APIs and libraries that facilitate data transfer, processing, and storage, supporting a high-performance observability ecosystem.Engage With High-Performance Systems DesignWork alongside a team of talented, inclusive and diverse engineers, gaining experience in the design and implementation of high-performance systems that are at the forefront of AI acceleration technology.Develop a deep understanding of system-level interactions and learn to build infrastructure that supports real-time data analysis and feedback.Other

QualificationsRequired Qualifications
  • Bachelor's Degree in Computer Science or related technical field AND 2+ years technical engineering experience with coding in languages including, but not limited to, C, C++, C#, Java, JavaScript, or Python
    • OR equivalent experience.
  • 2+ years experience in system-level programming (C/C++), with a focus on building and optimizing low-level infrastructure.
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
  • Proficient foundation in system-level programming (C/C++), with a focus on building and optimizing low-level infrastructure.
  • Experience or a keen interest in data flow management, particularly in the context of high-performance computing systems and hardware accelerators.
  • Understanding of or willingness to learn about high performance communication patterns over PCIe, eBPF, Networking, and various memory fabrics within and across our hardware and software stacks.
  • Proven problem-solving skills with the ability to tackle complex technical challenges related to data flow efficiency and infrastructure optimization.
  • A track record of working on high-impact projects, demonstrating a passion for building robust, high-performance systems.
  • Excellent collaboration and communication skills, with a drive to work alongside top-tier engineers to push the boundaries of AI acceleration tooling.
  • Familiarity with performance optimization and debugging tools is a plus, with a desire to contribute to the development of such tools.
  • Familiarity with Linux kernel and eBPF tooling (e.g., BCC, bpftrace) is a plus, demonstrating an ability to utilize eBPF for real-time data analysis and system diagnostics.
Software Engineering IC3 - The typical base pay range for this role across Canada is CAD $83,600 - CAD $159,600 per year.Find Additional Pay Information Herehttps://careers.microsoft.com/v2/global/en/canada-pay-information.htmlMicrosoft will accept applications for the role until October 17, 2024.Microsoft is an equal opportunity employer. Consistent with applicable law, 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 and/or a reasonable accommodation due to a disability during the application process, read more about requesting accommodations.

Jetzt bewerben

Weitere Jobs