SDEs develop next-generation applications, =
operating systems, and tools, just to name a =
few. They=20
write code, construct data structures and algorithms, and work closely =
with the=20
Program Manager to define and prioritize features. It's an opportunity =
to=20
explore new technical realms and leave a lasting technical =
legacy.

SDEs=20
use C, C++, and C#, to build products from the ground up, writing code =
that=20
turns concepts into new technologies and next-generation services. The =
code must=20
be secure, robust, scalable, and efficient. Teamwork skills are a must =
— SDE’s=20
work with Program managers to define and prioritize features, and =
together they=20
weigh the usefulness of a feature against how complex it is to =
implement. In=20
this process, technical restrictions — as well as any impact that =
one feature=20
may have on other features of the product — must be identified and =
considered.=20
You'll also work with Software Design Engineers in Test and Software =
Test=20
Engineers to improve product quality, evaluate functionality, identify =
problem=20
areas, create test cases, and investigate =
bugs.

An SDET position is a developer position =
– the primary=20
responsibility is to write code. SDETs write automated testing =
tool suites=20
and also developer tools used =
only within=20
the company. They are not=20
black-box testers. SDETs are good at targeting specific coding =
problems=20
and writing code to solve those problems. They’re =
usually working in=20
the realm of “we don’t have a tool, we need a tool, =
I’ll write that tool.” =20
SDET coding projects usually run in the thousands of lines of code =
usually built=20
from scratch. SDETs are an interesting hybrid of talents- they =
need to=20
have very strong testing skill, but also should be good code =
builders. A=20
Software Design Engineer in Test puts the product through its paces, =
walking in=20
the user's shoes. They break the product down — including creating =
the tools=20
such as automation, stand-alone programs, and device drivers — =
then work with=20
Software Design Engineers to take the product smoothly to beta=20
stage.

SDETs are responsible for utilizing innovative =
test=20
technologies to develop a product's testing strategy, and for =
facilitating the=20
creation and execution of automated test suites across a diverse set of=20
technologies. They look at source code for potential problems using =
Microsoft=20
internal tools. They also reproduce, debug, and isolate problems, and =
verify=20
fixes.

Skill =
Set:

C/C++/C#=20

Complex=20
problem solving skills

Creativity=20
and innovation

Methodical=20
approach

Attention=20
to detail=20

Negotiation and conflict =
management=20

Drive for=20
results

Roles and=20
responsibilities:

· =20
Design and =
develop=20
tool architecture

· =20
Write =
automation=20
systems and device drivers

· =20
Author test =
plans and=20
cases

· =20
Conduct =
security and=20
stress tests

· =20
Debug at =
source level=20

· =20
Identify,=20
investigate, and prioritize bugs

· =20
Communicate with=20
SDEs and STEs to resolve issues efficiently

Past indicators of=20
success:

· =20
Past =
successful=20
hires have taken on large coding projects in C and/or C++.=20