MHC MATH CLUBSPRING 2004

Job Descriptions from Microsoft

*Software Design Engineer (SDE): *You're the keeper of the code. SDEs put all their technical talents and creativity to the test as they develop next generation applications, operating systems and tools, just to name a few. Using C, C++, and C#, you will be building products from the ground up, writing code that turns concepts into new technologies and next-generation services. Your code is secure, robust, scalable, and efficient. It's an opportunity to explore new technical realms and leave a lasting technical legacy.

*Responsibilities: *Construct data structure and algorithms; write quality code; explore innovative technical solutions; test and debug code; contribute to feature definition and design; examine feature feasibility and estimate development time; work with team to meet deadlines

*Skill set: *C/C++/C#; complex problem solving; creativity and innovation; passion for writing code; broad knowledge of computer science fundamentals; ability to think "outside the box"; drive for results


*Software Design Engineer in Test (SDET): *You build it to break it. SDETs are developers who design, develop and maintain automation systems-often expandable suites containing multiple automation programs-to be used by the development and test teams. SDETs are responsible for utilizing innovative test technologies to develop a product's testing strategy, and for facilitating the creation and execution of automated test suites across a diverse set of technologies. SDETs enjoy tremendous job variety and the opportunity to design wide-reaching tools.

*Responsibilities: *Design and develop tool architecture; write automation systems and device drivers; author test plans and cases; conduct security and stress tests; debug at source level; identify, investigate, and prioritize

*Skill set: *C/C++/C#; complex problem solving skills; creativity and innovation; methodical approach; attention to detail; persuasion and conflict management; drive for results


*Software Test Engineer (STE): *You work to bring quality products to the customer. STEs lead the charge to prepare a functional product for release, methodically writing test plans and bug reports. On almost every team, there are opportunities for a wide variety of test focuses, ranging from low-level protocol testing to higher-level systems integration and performance analysis. As an STE, you will identify bugs through systematic testing and identify key business improvement opportunities and potential future projects.

*Responsibilities:* Deliver high-quality products; author and implement test plans and test cases; verify all code changes and bug fixes; identify, investigate, and prioritize bugs; perform stress tests; assess product functionality and usability; understand basic programming concepts and write test code; perform detailed analysis of automated test results; proactively give clear feedback on status of product area

*Skill set: *Visual Basic/C#; passion for quality; customer focus; organized, methodical approach; attention to detail; creativity; strong communication


*Program Manager (PM): *You are keeper of the vision. Can you take a product vision, apply breakthrough technologies, and build the right architecture for the product from the ground up? PMs drive the technical vision, design and implementation of next generation software solutions; help define strategy and features for all aspects of a product from systems architecture to user experience. Program Managers typically have a computer science background because technical prowess is a must. From requirements you gather, you'll author technical specifications that include functional descriptions of the technologies, envisaged usage cases, customer scenarios, and detailed, prioritized requirements lists.

*Responsibilities: *Define and drive product vision, design, and feature set; author technical specifications; create and manage complex project schedules; drive communication and cross-group collaboration; apply technical processes to solve complex problems; undertake competitive analyses; generate and evaluate multiple solutions to complex technical problems; make strategic tradeoffs to ship quality products on schedule

*Skill set: *Design and creativity; technical depth and understanding of algorithms; customer focus; complex problem solving; negotiation and conflict management; cross-group collaboration; drive for results; ability to deal with ambiguity; written and verbal communication skills