H-1B Job Board

Finding companies that sponsor visas is a lot of work.
We've made your life easier by compiling top companies and startups that hire foreign nationals.

Principal Software Engineer

Microsoft

Microsoft

Software Engineering
Posted on Dec 31, 2024

Principal Software Engineer

Vancouver, British Columbia, Canada

Save

Share job

Date posted
Dec 30, 2024
Job number
1796520
Work site
Up to 50% work from home
Travel
0-25 %
Role type
Individual Contributor
Profession
Software Engineering
Discipline
Software Engineering
Employment type
Full-Time

Overview

MSN Weather, as part of Microsoft AI, has been leading weather forecast industry with #1 accuracy for two consecutive years according to 3rd party ForecastWatch annual report. We provide full variable spectrum forecasts (temperature, precipitation, humid, pressure, wind, air quality and more) to 100 Million daily active users, through our first party products and 3rd party partnerships.

We are looking for a highly skilled Principal Software Engineer (backend) to join our Platform team, who will provide technical leadership to key projects, collaborate with scientist teams and frontend teams to maintain and deliver key Weather forecast features. The ideal candidate will be an experienced backend engineer with knowledge of modern cloud-based architecture and services, including containers, caching, load-balancing, IO bandwidth optimization and non-sql databases. Machine learning knowledge is not required in depth, but a general understanding would help in the deployment of the SOTA deep learning models from the scientist teams. Performance tuning experience for serving deep learning models is a huge plus for this role.

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:

  • Bachelor'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
    • OR equivalent experience.
  • 6+ years of direct experience delivering, scaling, and owning highly successful and innovative machine learning products, or services in multi-tiered distributed cloud environment.

Other Requirements:

Ability to meet Microsoft, customer and/or government security screening requirements that 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.

Additional or Preferred Qualifications:

  • Bachelor's Degree in Computer Science or related technical field AND 10+ years technical engineering experience with coding in languages including, but not limited to, C, C++, C#, Java, JavaScript, or Python
    • OR Master'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
    • OR equivalent experience.
  • Experience working through full product cycles from initial design to final product delivery .
  • Demonstrate understanding of the inference pipeline of deep learning models and its optimization. In particular, hands-on experiences with the deployment of deep learning frameworks (PyTorch, TensorFlow, Keras, etc.).
  • Experience on analyzing cloud service performance bottlenecks and driving end-to-end service pipeline optimization.

Software Engineering IC5 - The typical base pay range for this role across Canada is CAD $135,800 - CAD $253,000 per year.

Find additional pay information here:
https://careers.microsoft.com/v2/global/en/canada-pay-information.html

Microsoft will accept applications for the role until January 20, 2025.

Responsibilities

  • Design, develop, test, and deploy algorithms and models for weather forecasting.
  • Collaborate with scientists, engineers, and product managers to understand the business requirements and translate them into technical solutions. Provide technical leadership and mentorship to engineers and peers.
  • Ensure code quality, performance, reliability, and scalability of the platform components.
  • Research and evaluate new technologies and frameworks to improve the platform capabilities.
  • Troubleshoot and resolve issues in production and development environments
  • Maintain and improve existing service pipelines: identify performance bottlenecks and single point failures. Improve our deployment and test pipeline reliability to reduce live site incidents.
  • Approximately 5% to 10% of the communication will involve coordination across different time zones.


Benefits/perks listed below may vary depending on the nature of your employment with Microsoft and the country where you work.
Industry leading healthcare
Educational resources
Discounts on products and services
Savings and investments
Maternity and paternity leave
Generous time away
Giving programs
Opportunities to network and connect

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 and/or a reasonable accommodation due to a disability during the application process, read more about requesting accommodations.