Software Development Overview
Our company was built by people like you – young software developers with a belief in the boundless potential of software. We still share your dreams and inspiration today. Team up with us to create what’s next in consumer and enterprise technologies. Here you’ll elevate your tech skills working on both real-world products and experimental ones alongside some of the best minds in the industry. Your success will only be limited by your own imagination and motivation.
Whether as a Program Manager driving vision, design and implementation of future software; as a Software Development Engineer transforming a product vision into a reality; or as a Software Development Engineer in Test ensuring that a software’s quality exceeds customers’ expectations; from day one you’ll make an impact on how millions of people around the world use technology.
Some of our Software Development positions include:
Software Development Engineer (SDE)
Software Development Engineer in Test (SDET)
Program Manager (PM)
Please note by applying to this position you will be considered for all Software Development positions.Software Development Engineer (SDE)
Whether you’re creating new code, algorithms or data structures, you are the link between abstract concepts and the technology products used daily by your friends, family and millions of other people around the world. Using your mastery of technical tools, you develop next- generation applications and operating systems, making decisions on design and feature implementation.
Software Development Engineers dive deep into code and work as part of a team of programming experts who solve problems and build powerful new tools. You collaborate with Software Development Engineers in Test (SDETs) to ensure stellar product quality, and you provide technical guidance to Program Managers (PMs) as they communicate user needs and product requirements. As a SDE, you dedicate yourself to producing the world’s most advanced software.
Qualifications:
- Pursuing a B.S./M.S. or Ph.D. degree in Engineering, Computer Science, or related field
- 1-2 years experience programming in C++, Java, or other computer programming languages preferred
- Ability to derive creative and innovative solutions by thinking "outside the box"
- Expertise in feature definition, design, and feasibility
- Demonstrated skill in estimating development time
Software Development Engineer in Test (SDET)
You have an innate understanding of technology. You always know how a program works, even when others do not. You are passionate about making things faster and more efficient, truly pushing software to its limits.
Software Development Engineers in Test are highly technical and you use your technical prowess to build and maintain automation systems, debug and isolate problems and execute creative tests to make sure our software is ready for prime time. SDETs write lots of code—code to test software features and code to extend our automation infrastructure. You work closely with Software Development Engineers (SDEs) and Program Managers (PMs), each contributing equally to the development life cycle. You enjoy breadth in your job and continually look for ways to integrate systems across business groups and products.
Qualifications:
- Pursuing a B.S./M.S. or Ph.D. degree in Engineering, Computer Science, or related field
- 1-2 years experience in C/C++/C#/VB.NET and experience designing and developing tool architecture preferred
- Ability to solve complex problems and write automation systems and device drivers
- Ability to author test plans and cases, conduct security and stress tests, and debug at source level after identifying, investigating, and prioritizing bugs
- Demonstrated skills in negotiation and conflict management
Program Manager (PM)
As the in-house advocate for the millions of people worldwide who use Microsoft products, you drive the technical vision, design and implementation of next-generation software solutions. You predict and research how software is used and work closely with Software Development Engineers (SDEs) and Software Development Engineers in Test (SDETs) to ensure our end products exceed those expectations.
You gather customer requirements, write functional specifications and analyze usage cases to represent customers’ needs throughout the development process. You’ll invest your time in partnering with other product teams across Microsoft to drive collaborative solutions. If you love negotiating, evangelizing and empathizing on behalf of our customers, the PM role is for you.
Qualifications:
- Pursuing a B.S./M.S. or Ph.D. degree in Engineering, Computer Science, or related field
- 1-2 years experience programming in C++, Java, or other computer programming languages preferred
- Familiarity with managing complex project schedules, solving complex problems, and nurturing cross-group collaboration
- Strong technical prowess, including understanding of algorithms, systems architecture, and end-user experience