Research Internships at Microsoft provide a dynamic environment for research careers with a network of world-class research labs led by globally-recognized scientists and engineers. Our researchers and engineers pursue innovation in a range of scientific and technical disciplines to help solve complex challenges in diverse fields, including computing, healthcare, economics, and the environment.
The PROSE SDK (https://microsoft.github.io/prose/) is a powerful and flexible framework that uses state-of-the-art program synthesis and machine learning techniques to automate repetitive tasks in a variety of domains. The strength and breadth of the framework is evidenced by the range of Microsoft products that use it -- Excel, Power BI, Powershell, SQL Server Management Studio, Azure Machine Learning Workbench, etc. Two 5-minute video demos of our work are available at https://www.youtube.com/watch?v=w-k9WjRJvIY and https://aka.ms/prose-showcase) .
Our experience in using program synthesis in practice has helped us identify several unique and interesting research challenges. How does one test and debug programs when a synthesizer is involved? What user experience and programming interfaces are appropriate when the primary mode of interaction is through input-output examples? How can we adapt the generated programs each user's programming style and coding convention? How can we adapt and improve ML techniques to a setting where logical constraints are present? These challenges require both novel research ideas and practical minded engineering to address satisfactorily.
The PROSE team is looking for a research intern to work on above challenges and other aspects of the PROSE ecosystem. A particular focus area for the project would be application to web test automation or robotic process automation, where the goal is to automate repetitive tasks on the web or in arbitrary desktop applications. This involves challenges around learning generalizations from concrete user-provided demonstrations, as well as techniques for automatically inferring abstractions to help maintain automation test suites over time as websites evolve.
Interns put inquiry and theory into practice. Alongside fellow doctoral candidates and some of the world’s best researchers, interns learn, collaborate, and network for life. Interns not only advance their own careers, but they also contribute to exciting research and development strides. During the 12-week internship, students are paired with mentors and expected to collaborate with other interns and researchers, present findings, and contribute to the vibrant life of the community. Research internships are available in all areas of research, and are offered year-round, though they typically begin in the summer.
In the PROSE team, our ideal goal for an internship project is to make both a research impact (e.g. leading a publication) as well as product impact (e.g. leading to usable product feature or improvement)
In addition to the qualifications below, you’ll need to submit a minimum of two reference letters for this position. After you submit your application, a request for letters may be sent to your list of references on your behalf. Note that reference letters cannot be requested until after you have submitted your application, and furthermore, that they might not be automatically requested for all candidates. You may wish to alert your letter writers in advance, so they will be ready to submit your letter.
Must be currently enrolled in a PhD program in Computer Science or a related STEM field.
Experience and/or interest in developing software and a desire to see their research ideas implemented in practice.
Must be able to work closely with both researchers and engineers in the team.
Specialization in or at the intersection of Programming Languages, Formal Methods, Machine Learning, or Human-Computer Interaction is preferred.
However, good candidates from other disciplines will also be considered.
Microsoft is an equal opportunity employer. All qualified applicants will receive consideration for employment without regard to age, ancestry, color, family or medical care leave, gender identity or expression, genetic information, marital status, medical condition, national origin, physical or mental disability, political affiliation, protected veteran status, race, religion, sex (including pregnancy), sexual orientation, or any other characteristic protected by applicable laws, regulations and ordinances. We also consider qualified applicants regardless of criminal histories, consistent with legal requirements. If you need assistance and/or a reasonable accommodation due to a disability during the application or the recruiting process, please send a request via the Accommodation request form.
Benefits/perks listed below may vary depending on the nature of your employment with Microsoft and the country where you work.
Research Intern - Program synthesis, web automation and robotic process automation