Senior Software Engineer

Microsoft Microsoft · Big Tech · Vancouver, BC +1 · Software Engineering

Senior Software Engineer to build and run scalable services for Microsoft 365, focusing on real-time communication products like Teams. The role involves applying large data and machine learning techniques to improve services, designing media streaming components, and analyzing production telemetry.

What you'd actually do

  1. The IC3 media team is responsible for the research and development of the core real time media stack components enabling the Skype and Teams family products to work across the variety of platforms, as well as enabling highly scalable media servers running in the cloud.
  2. We are looking for a Senior Software Engineer with an interest in building highly reliable and scalable network services and highly dependable mission critical meeting/calling products, while applying large data and machine learning techniques for cutting-edge innovations.
  3. You will be responsible for designing and implementing the client and server media streaming/communication components, interfacing with other teams in Teams/Skype to improve and extend existing functionalities, analyzing production telemetry for areas of improvements, and working with the partner teams on improvements in testing and benchmarking the core media services.

Skills

Required

  • 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

Nice to have

  • Master's Degree in Computer Science or related technical field AND 6+ years technical engineering experience with coding in languages including, but not limited to, C, C++, C#, Java, JavaScript, or Python
  • Bachelor's Degree in Computer Science or related technical field AND 8+ years technical engineering experience with coding in languages including, but not limited to, C, C++, C#, Java, JavaScript, or Python
  • 1+ year of experience with programming for networking, multi-threaded systems, and/or real time media.
  • 1+ year of experience with system software including OS and networking.
  • 1+ year of experience with real time communication protocols like RTP/SRTP/RTCP.
  • 1+ year of experience with streaming protocols like HLS/DASH.
  • 1+ year of experience with WebRTC stack.
  • 1+ year of experience with application of big data, machine learning techniques to improve systems.
  • 1+ year of experience as a practitioner of the latest engineering methodologies: Unit testing, TDD, Agile etc.

What the JD emphasized

  • applying large data and machine learning techniques for cutting-edge innovations

Other signals

  • building and running services at scale
  • applying large data and machine learning techniques for cutting-edge innovations
  • designing and implementing the client and server media streaming/communication components
  • analyzing production telemetry for areas of improvements