Software Engineer II
Microsoft
Software Engineer II
Bangalore, Karnataka, India
Save
Overview
Microsoft Teams is core to Microsoft's vision for intelligent communications and productivity pane into the modern workplace. We are fast becoming the hub for teamwork in Office 365, with hundreds of thousands of organizations and tens of millions of users across the globe using Teams. Microsoft Teams is the fastest growing business application in Microsoft history.
We are looking for a Software Engineer II to join our Android Fundamentals team. This role is focused on improving the performance and reliability of our Android app by building proactive guardrails that detect and prevent performance regressions early in the development cycle. Your work will reduce reliance on manual validation, increase confidence in releases, and help feature teams ship high-quality experiences faster and more efficiently.
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 or master's degree in computer science or a related field.
- Excellent problem-solving & debugging skills.
- 4+ years of coding experience in an object-oriented programming language, with knowledge of Java, Kotlin, Swift, Python.
- Proficiency in writing unit tests and functional tests using tools such as Espresso for Android.
- Experience developing and maintaining engineering infrastructure tools/bots.
- Working knowledge of tools like Azure DevOps or similar CI/CD platforms for integrating and managing test gates.
Preferred Qualifications:
- Deep understanding of the Android platform, including app lifecycle, memory management, threading, and performance optimization techniques.
- Familiarity with CI/CD pipelines and automated performance regression testing.
- Familiarity with machine learning or AI techniques in mobile app performance optimization.
- 3+ years of Android development experience.
Responsibilities
- Profile and analyze the Android app to identify performance bottlenecks across startup, rendering, memory, and battery usage dimensions.
- Design and build frameworks, tools, and diagnostics infrastructure that help feature teams detect, investigate, and address performance issues effectively.
- Create guardrails and automated checks that catch regressions early and ensure sustained app performance at scale.
- Collaborate with product and feature teams to understand common performance pain points and abstract reusable solutions through robust platform APIs.
- Develop automation and bots to surface performance insights continuously and reduce manual effort in validating perf-critical paths.
- Contribute to the evolution of our architecture and engineering best practices, with a focus on app efficiency, reliability, and responsiveness.
- Champion a culture of craftsmanship, collaboration, and accountability, ensuring performance is a shared responsibility across the organization.