Senior Software Engineer (Backend)
Microsoft
Senior Software Engineer (Backend)
Prague, Czech Republic
Save
Overview
The Teams Core Services team is responsible for the foundational services of Microsoft Teams spanning Middle Tier, Auth, Gateway, Storage, Infra among others. It provides exciting opportunities in building resilient, highly available, and highly scalable services that meet the needs of an ever-growing user base of the fastest growing product in Microsoft's history. This is a unique opportunity to hone your system design, and your exposure to cutting edge technology stack (.NET Core, ASP.NET Core, Azure, Kubernetes, Redis) and application architecture skills offering end to end ownership and broad scope to have a huge impact.
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 technical engineering experience with coding in languages including, but not limited to, C, C++, C#, .Net, Java, JavaScript, or Python
- OR equivalent experience.
- Experience in development design patterns.
- Experience working on large scale enterprice applications.
- Excellent cross group collaboration, negotiation and communication skills.
- Ability to deal with the ambiguity associated with working in a fast-paced and changing environment.
- Master's Degree in Computer Science or related technical field AND technical engineering experience with coding in languages including, but not limited to, C, C++, C#, Java, JavaScript, or Python
- OR equivalent experience.
- Experience working with Service Fabric or Kubernetes a plus.
Responsibilities
- Own design, development and dev ops of Tier 0 Teams Services to ensure high availability, scalability and resiliency.
- Implement resiliency patterns like Circuit Breaker, Retry, Fallback, Bulkhead Isolation, Throttling, Stale Cache, among others.
- Implement efficient patterns to call dependent services, leverage a distributed cache like Redis.
- Build reusable libraries of services best practices for other teams to leverage.
- Perform live site/dev ops engineering for services you own with top notch monitoring, dashboards, and TSGs.
- Drive to increase efficiencies through automation.