Software Engineer II

Last updated 3 days ago
Location:Bellevue, Washington
Job Type:Full Time

Microsoft Teams is the new chat-based application in Office 365. It's a hub for teamwork, giving teams instant access to everything they need right in Office 365. Microsoft Teams is the canvas that keeps all your content, tools, people, and conversations together in one place.It is the hottest product at Microsoft and we’re on course to disrupt the team collaboration space.

In the Messaging Services team, we are continuously evolving our messaging micro-services to support new messaging features while maintaining a high performance, scalable and cost-effective eco-system. We are looking for a strong software development engineer who can help us build revolutionary, robust and scalable back-end services.This is a unique opportunity to hone your system designskills, andwill give you exposure to cutting edge technology stack (.NET Core, Service Fabric, Redis, Azure Cosmos DB) as well as cross-org collaboration opportunities. You will have E2E ownership and make huge impact in this critical area.

As a team we’re proud of what we build and how we build it. We run lean, obsess about customers and use an evidence-based approach to decision making. We have live-site first, metrics-driven culture that prevents us from accumulating debt and necessity to put out fires on daily basis. You will be in a position that carries a ton of responsibility and provides opportunities to impact customers’ satisfaction and grow the business exponentially.

Accessibility Guidance:​

  • Use only the “Paste as Text” button in the text editor to transfer content, especially if using Microsoft Word, PPT, Outlook or OneNote
  • The Font will automatically be changed to Segoe on the Careers Site

  • Do not use special characters ​
  • Use only one sub-heading for each of the 3 sections – e.g.,​
    • Responsibilities -> Key responsibilities​
    • Qualifications -> Skills required​
  • Only format content within the text editor (e.g. create bullets and bold styling using the associated buttons in the editor)​
  • Remove all blank characters at the end of a sentence by pressing Enter to end each line

Follow these suggestions for what to avoid in your job advertisement:

  • Do not mention unannounced products, technologies or project codenames.
  • Do not discuss future product milestones or roadmaps.
  • Do not mention executive names.
  • Do not use a team name, acronym, or abbreviation unless well known to external audiences.
  • Do not discuss internal company goals or business strategies.
  • Do not discredit current Microsoft products in market or use language with a negative connotation when describing Microsoft products or services.
  • Do not use stats that may be newsworthy such as downloads, units, market share, sales, revenue, or other business metrics without first consulting your Public Relations team.
  • Do not mention specific competitors.
  • Absolute security, safety, and privacy do not exist. Therefore, do not make any statements that express or imply absolute security, safety, and privacy.
  • Do not reference internal URLs, job levels, or terminology.


  • As part of the Messaging Services engineering team, you will be designing, developing and maintaining high scale services that form the backbone of Microsoft Teams.
  • Own and operate services of massive scale and importance
  • You are expected to dive deep into Azure technologies and distributed database systems. You will collaborate with partners, internal and external to Microsoft Teams organization, in order to design and build features that drive growth in our user base. We have numerous partners and thus, strong collaboration skills are required.
  • As you develop said features to delight our customers, you are expected to always keep availability, reliability, performance and scalability in mind. We never compromise on these fundamentals.
  • Influence and create new designs, architectures, standards and methods for large-scale distributed systems
  • Build reusable libraries of services best practices for other teams to leverage



  • Strong passion for delivering high-quality, resilient, large scale services.
  • Strong coding and development skills with experience in at least one of the following languages: C#, .Net Core, Java
  • Passionate about solving challenging problems.
  • 2+ year experience in large-scale distributed systems, client-server architectures, and distributed database systems.
  • Strong cross team/organization collaboration skills
  • BS/MS Degree in Computer Science or related engineering field.

Preferred Qualifications

  • Experience working with Service Fabric or Kubernetes a plus
  • Experience working with M365 components like AAD, Exchange, Substrate, SharePoint a plus
  • Drive to improve performance, availability and supportability of services
  • Drive to increase efficiencies through automation

Microsoft is an equal opportunity employer. All qualified applicants will receive consideration for employment without regard to age, ancestry, color, family or medical care leave, gender identity or expression, genetic information, marital status, medical condition, national origin, physical or mental disability, political affiliation, protected veteran status, race, religion, sex (including pregnancy), sexual orientation, or any other characteristic protected by applicable laws, regulations and ordinances. We also consider qualified applicants regardless of criminal histories, consistent with legal requirements. If you need assistance and/or a reasonable accommodation due to a disability during the application or the recruiting process, please send a request via the Accommodation request form.

Benefits/perks listed below may vary depending on the nature of your employment with Microsoft and the country where you work.