By JobsBlogger Anthony Rotoli
This is a time of year when job-seekers get busy. When you apply for software development jobs at Microsoft, you learn about our three key roles: program manager (PM), software developer in test (SDET), and software development engineer (SDE). Each contributes equally to building top-notch software. Here’s the lowdown on how these jobs differ, and what expertise we seek to consider someone a good fit.
Do you have great ideas that you want to turn into great products?
Without any one of these three roles, software development couldn’t happen at Microsoft. We need:
- big ideas from the PM
- innovative development from the SDE
- and creative exploration from the SDET
If you’re wondering what role might be the right fit for you, here’s a great self-test: The next time you discover some new piece of technology that fascinates you, pay attention to your reaction:
- a PM is going to focus on the experience
- an SDE is going to want to know how it works
- an SDET is going to start thinking of ways to make it better.
What are the qualities of a great program manager?
At the earliest stages of the development cycle, PMs imagine how a software feature should function. Think about your own problem-solving approach. Ask yourself:
- Do I think about the big picture when I tackle problems?
- Do I consider all of the stakeholders and dependencies before I jump into a solution?
What else does a great PM need? An intuitive design sense. The ability to see from a user’s point of view. They have to be great collaborators, to coordinate with stakeholders of other features affected by their own.
What does a program manager do?
When PMs have an idea for a function in their feature, they work closely with their SDE and SDET partners to create official specifications. This teamwork helps PMs make sure they are creating specs that can be developed and tested. Generally PMs don’t code, but it’s important that they understand code and can communicate with their more technical counterparts.
“As a PM, you think about how to excite users,” says Frank Ciaramello, a Windows program manager. “And then you get to work with people from across the company to make your vision a reality.”
What is a “software developer in test” (SDET)?
Software Developer in Test is another role that requires user empathy. A tester needs to be able to think of all the different ways a piece of software may be used, and make sure that it can withstand varying use cases without failure.
What’s inside the mind of an SDET?
A strong SDET is not only a great coder, but someone who has a desire to make sure code is polished and ready to ship. Some people I’ve seen as a natural fit for SDET have spent their own time exploring software security exploits and cyber security. They may even participate in competitions. They are fascinated by hacker culture and love stumbling upon weakness in design or code.
“Being a tester is like being the special-effects guy in a movie,” says Michael El-Jiz, a Concordia University student who spent his summer as a SDET Intern on Xbox Live. “You’re retouching and revisiting scenes for consistency, and figuring out what’s wrong with each frame.”
How do SDEs build the product? What inspires them?
The software developer takes the specs passed on from the PM and turns that idea into software. SDEs are fascinated by how things work and by achieving feats through the power of code— and how it delivers a certain result to the user.
SDEs have a deep understanding of complex algorithms, data structures and quality coding practices. They are meticulous. Shubho Sadhu, a software developer working on Office, says Microsoft SDEs must exemplify quality and sustainability in their code: “You *are* the code. Being an SDE doesn't mean just churning out code. It means engineering maintainable and resilient code that can last for decades of product modification.”
What’s the best part about being an SDE?
“As an SDE, you bring the product to life,” Sadhu says. “After a release, you know that your code has made an impact for your users, whether they're a few dozen, a few million, or even over a billion."
We’re always hiring qualified candidates for our three software development roles. Are you a soon-to-be grad, or are you looking for an internship? Do you bring industry experience? See our updated Microsoft Careers site. It’s your resource for new beginnings.