Internships at Microsoft Research Cambridge, UK

Date Posted: December 5, 2017

An internship at Microsoft Research Cambridge gives you the opportunity to work on real problems alongside one of our full-time researchers as your mentor.

We are accepting applications now from students who are enrolled in current PhD or Masters programs relevant to our areas of research.

Our internships are 12 weeks long and run mostly through the Summer period. See below for details of what it’s like to be an intern at Microsoft Research Cambridge and what projects we have available.

Application and start dates vary and can be found within each project description.

How to apply

To apply for one or more of the internships below (maximum of three), please create a profile on the Microsoft Research Careers tool. Please select the relevant supervisor’s name (your first choice, if you’re applying for more than one position) and add the reference number/s in the ‘more information about our relationship’ field. If you omit the reference number, your application may not be included when filtering for applications for that project.

Intern Projects

Distributed B-trees on FPGA (Systems)

Supervisor: Aleksandar Dragojevic

Start Date: June/July 2018

Applications close February 15 2018

Reference #: MSRC211

Indexing data structures are widely used in distributed systems. Accelerating them in hardware can result in significant performance improvements of the systems that rely on them, such as key-value stores and databases. Several proposals for accelerating hashtables have been made recently. In this project, the intern will design and build hardware acceleration for a B-tree running on FaRM. This is part of our ongoing effort to explore hardware offloads to speed up FaRM and applications built on top of, as well as to explore more general acceleration for distributed systems. The intern will evaluate performance of the system, which will also help us understand the trade-off between software flexibility and hardware throughput.

Exploring the actor computation model for incremental computation (Machine Learning)

Supervisor: Dany Fabian

Start Date: June/July 2018

Applications close January 31 2018

Reference #: MSRC212

We are a large-scale machine learning project and are currently doing Big Data and Big Compute operations. Here is an opportunity to try and bridge those somewhat different worlds and see how far we can push things. Candidates would ideally have experience in any combination of Actor Computation, Big Data and Big Compute workloads. The prototype would most likely be built using Orleans, trying to incorporate parts of our machine learning model and scale it out in a later stage.

Digital Possessions (HCI)

Supervisor: Siân Lindley

Start Date: June 2018

Applications close February 2 2018

Reference #: MSRC213

The Digital Possessions project is seeking an intern to explore the role of communication and lightweight editing tools in the initial phases of collaborative workflows. This will involve a mixture of (i) qualitative work to understand current user practices and (ii) user evaluations of an initial set of prototypes. The successful candidate will have expertise in the field of CSCW, experience of interviewing users and evaluating prototypes or technologies, and be skilled in qualitative analysis. Implications for design drawn from this work will be put into practice by a second intern with web development and design skills, therefore the intern will also be collaborative and able to clearly communicate the findings of their work. The intern will be supported by Siân Lindley in the design of the study, analysis of data and presentation of findings.

Digital Possessions (HCI)

Supervisor: Gavin Smyth

Start Date: June/July 2018

Applications close January 22 2018

Reference #: MSRC214

Within the Digital Possessions project, we’re exploring lightweight collaboration mechanisms. We’re looking for an intern to join our inter-disciplinary team, to focus on the design and client-side development of web-based prototypes and demonstrators. The specifications for these will be a product of the whole team (including additional interns), and are unlikely to arrive fully formed, so the internship will include a high degree of teamwork and “agility.” Good collaboration and communication skills will be essential, along with the ability to tackle challenging tasks under their own initiative. Our implementations will most likely be built on React.js, and the ideal candidate will have strong HTML/CSS/JavaScript skills, as well as a good eye for web design. Support will be provided by Gavin Smyth for all aspects of the technical work, in particular server-side implementations and deployment.

Interactive Machine Learning for Notification Design (Machine Learning)

Supervisor: Advait Sarkar / Cecily Morrison

Start Date: June 2018

Applications close April 15 2018

Reference #: MSRC216

This internship will be part of a project team that is focused on agent technology for people with disabilities. The internship will explore ways that users can teach an agent to carry out specific interactions in the system through a combination of rule-based and teaching by example techniques. The intern will be supervised in the Human Experience & Design team and will work closely with researchers and interns in the Machine Learning and Perception team.

Adaptive Agents with Vision (Design/HCI)

Supervisor: Richard Banks

Start Date: June/July 2018

Applications close January 31 2018

Reference #: MSRC217

This internship will be part of a project team that is focused on agent technology for people with disabilities. The internship will explore how design can address challenges of ethics and privacy in a visual agent. Particular focus will be placed on developing approaches for mediating or mitigating issues of personal data capture through, for example, game-like experiences. The output of the internship will be a number of showables that prompt discussion and provide pathways for engineering.

Adaptation Intern (Machine Learning)

Supervisor: Sebastian Tschiatschek

Start Date: Flexible

Applications close January 29 2018

Reference #: MSRC218

This internship will be part of a project team that is focused on agent technology for people with disabilities. The internship will build on the existing temporal adaptation models for a single scenario and extend to a larger action space. It may potentially focus on one-shot learning as a means for users to communicate their preferences.

Audio User Interface (HCI)

Supervisor: Anja Thieme

Start Date: March/April 2018

Applications close January 29 2018

Reference #: MSRC223

The Audio User Interface project is seeking an intern to explore new ways for assisting users of speech-based interfaces to better understand and correct errors in speech interactions. This design-oriented project will involve, at first, qualitative work to understand current use practices and scenarios. This is followed by the development of audio-based interaction concepts for supporting performances of more complex tasks and the handling of possible speech-based errors. The successful candidate will have expertise in the field of HCI/ Interaction Design, and ideally some experience of audio- or speech-based interfaces. The intern will be supported by Anja Thieme in explorations of the use scenarios, and the development and partial prototyping of the interaction design concept(s). The project offers opportunities for the candidate to work collaboratively within a multi-disciplinary team of researchers and to get hands on involved in design processes. It further offers a lot of flexibility for the candidate to bring in their own ideas and creativity in developing novel technology interactions.

Bayesian hierarchical inference of mechanistic biology models (Comp Bio/Machine Learning)

Supervisors: Neil Dalchau and Ted Meeds

Start Date: June/July 2018

Applications close February 1 2018

Reference #: MSRC224

We are looking for an intern to work on developing new Bayesian parameter inference approaches for synthetic biology. Characterization of synthetic biological components is currently achieved by inserting components into bacteria, and measuring their activity via fluorescent reporter proteins. The quantitative properties of these components (e.g. binding affinities, synthesis and degradation rates) are then inferred by using Bayesian parameter inference techniques applied to mechanistic (ordinary differential equation) models. As the size of the synthetic circuits increases, so too does the size of the models and in turn parameter inference quickly becomes infeasible. This internship project will explore current and novel likelihood-free inference algorithms for characterizing synthetic biological circuits, with the hope that this will lead to reduced computation time, better accounting for the sources of variability in the experimental data, and ultimately a better characterization of parameter uncertainty. The intern would gain experience of applying cutting edge Bayesian inference techniques to real laboratory data, and an opportunity to make predictions that we will be able to test directly in the lab. In addition to prototyping methods (e.g. in Python), it is hoped that the methods developed will also be incorporated into software tools for synthetic biological design and component characterization.

Functional programming and spreadsheets (Programming Languages/HCI)

Supervisors: Simon Peyton Jones, Andy Gordon, Claudio Russo, Neil Toronto, Advait Sarkar

Start Date: June/July 2018

Applications close January 31 2018

Reference #: MSRC226

We hope to hire four interns during 2018 with a focus on using insights from functional programming to improve the experience of using spreadsheets. The exact internship project will be chosen to fit the expertise of successful applicants, but we are interested in a broad range of areas including:

  • Improving the experience of authoring formulae in a spreadsheet
  • Compiling spreadsheets for faster execution
  • Using insights from type systems to catch programming errors sooner
  • Generalisation and program synthesis
  • Demonstrating radical improvements in the range of applications that can be tackled with spreadsheetsWe are looking for three interns with programming-language expertise, and one with a strong background in HCI and user experience.

You would be working with leaders in both functional programming (Andy Gordon, Simon Peyton Jones) and user experience (Advait Sarkar, Kenton O’Hara). There is a genuine possibility that your work could have real-world impact.

By way of general background, you may want to read Simon Peyton Jones et al’s papers “A user-centred approach to functions in Excel” and “Champagne Prototyping: A Research Technique for Early Evaluation of Complex End-User Programming Systems”.

Mobile Content Creation (HCI)

Supervisor: Tony Wieser

Start Date: June/July 2018

Applications close January 31 2018

Reference #: MSRC227

Social Devices (part of the Human Experience and Design Group) is hiring a research software engineering intern to assist with mobile development on android or iOS to further our research. You will be building prototypes, but ultimately your work may appear in mobile versions of Office and other Microsoft titles with millions of users. Candidates will require experience on one of the above platforms using Objective C, Java, C++ or Swift, and some experience of calling web services. Good communication and collaboration skills are as important as the technical skills, as you’ll be embedded within an inter-disciplinary team. In addition, experience of video/image processing would be advantageous, though not essential. If you have a flair for UI design that is also a plus, but again, not essential. The position could suit either an undergraduate intern or graduate student provided they have the required skills. Support will be provided by Tony Wieser for all aspects of the technical work.

Modelling and optimization of DNA assembly protocols (Programming Biology)

Supervisor: Boyan Yordanov

Start date: after July 1 2018

Applications close January 31 2018

Reference #: MSRC228

Computational modelling could help make the process of programming biological systems systematic and predictable. Towards this goal we are developing an integrated computational and experimental pipeline that will enable us to program genetic devices and support our ambitions in the field of synthetic biology. The goal of this internship is to focus on one aspect of the pipeline – the experimental protocols for assembling genetic devices – and develop computational models to rationally optimize and tune these processes further. To achieve this goal, the project will involve the following tasks. (1) Collecting experimental data at the MSR experimental lab to characterize the biochemical mechanisms involved in the assembly of genetic devices. (2) Developing quantitative, mechanistic models of the involved biochemical processes (e.g. restriction and ligation of DNA by enzymes). (3) Optimizing the experimental protocols involved in the process by utilizing these mechanistic models. (4) Demonstrating an improved experimental process in the MSR experimental lab by assembling genetic circuits from ongoing research projects.

Adaptive Productivity (HCI)

Supervisor: Sean Rintel

Start date: after July 1 2018

Applications close January 31 2018

Reference #: MSRC229

The Human Experiences & Design ‘Social Devices’ workstream is hiring an HCI/Sociology/Communication intern to conduct qualitative research on adaptive mobile productivity scenarios. These could range from video-mediated collaboration to intelligent cameras or mixed reality.Candidates will require experience with qualitative fieldwork or qualitative lab studies and some understanding of Ethnographic/Ethnomethodology/Conversation Analytic approaches to technology in use. Candidates should have skills in video or audio recording of naturally occurring interaction and/or conducting interviews/focus groups, and a strong analytic focus on exploring sequences of social action.Good communication and collaboration skills are essential as you will be interacting with Microsoft product group employees, Microsoft customers or partners, and embedded within an inter-disciplinary team. There is potential for your work to influence future product direction.You will be expected to work quickly to draw findings from field or lab work, with a concluding written research presentation and white paper. Publication is a possibility depending on the confidentiality of the project to which you are assigned.

Project Malmo – multi-agent learning for video games (Machine Learning / Game Design & Development)

Supervisors: Katja Hofmann / Ian Kash / Jan Stuehmer / Richard Banks / Dave Bignell

Start Date: Varies per project (see below)

Applications close Feb 1 2018

Reference #: MSRC230

We are looking to fill the internship positions listed below. These are all at the graduate level (Masters for game design and game development, PhD with substantial research experience for the other three).

  1. Reinforcement Learning: We are seeking a research intern with a focus on multi-agent learning in games with incomplete information. The project seeks to develop novel approaches to learning in multi-agent scenarios in incomplete information games with large observation spaces. Experience with deep learning is a plus.
  2. Reinforcement Learning: We seek a research intern with a focus on multi-agent learning and opponent modelling. The project aims to develop and assess novel approaches to incorporating opponent models or opponent awareness, with a particular focus on approaches that scale to complex settings with minimal prior assumptions. Experience with deep learning is a plus.
  3. Reinforcement Learning: We seek a research intern for a project that focuses on deep-learning approaches to intention prediction and goal-directed imitation. The project aims to devise novel approaches to inferring intention and forming higher-level abstractions. Empirical validation will be in the context of multi-player video games.
  4. Games Design: We seek a game design research intern at MSc level or with similar experience. The project focuses on exploring novel game designs that leverage state-of-the-art AI / machine learning approaches.
  5. Games Development: We seek a game development research intern with experience at MSc level or above. The aim of the project is to develop and assess novel game experiences that are enabled by state-of-the-art AI / machine learning approaches.

Supervisor / start dates:

  1. Ian Kash / June 2018
  2. Katja Hofmann / June 2018
  3. Jan Stuehmer / September 2018
  4. Richard Banks / September 2018
  5. Dave Bignell / October 2018

All interns will be co-supervised by several team members, but above shows the main supervisor.

Start dates are flexible – priority will be given to candidates’ suitability for the role.

Concept C# (Programming Languages)

Supervisor: Claudio Russo

Start Date: June/July 2018 or earlier

Applications close: Feb 2 2018

Reference #: MSRC232

Concept C# is an extension of C# with Haskell- style type classes, allowing efficient abstraction over static as well as instance members. Concept C# leverages the distinctive type-passing, code-specializing implementation of .NET Generics to provide excellent performance, competitive with hand-specialised code.

The aim of this internship would be to further the design and implementation of Concept C# to support better concept inference with a well-defined logic, associated types and constraint propagation. The last two features would greatly reduce the notational burden for advanced uses and go a long way to addressing the remaining concerns of the C# language design team (who are very supportive of this work). There is a publication describing the basic mechanism for a slightly different system so the task would be to adapt, design and implement that proposal in our working prototype of Concept C# already implemented over two internships by intern Matt Windsor. The concept code is extremely well documented and should be straightforward for another good intern to build on. The intern would gain experience of practical language design and engineering on a large, yet approachable, compiler code base (Roslyn) with the potential for real tech transfer.


Accelerating machine learning on specialized hardware (Machine Learning/Programming Languages)

Supervisors: Dimitrios Vytiniotis, Ryota Tomioka

Start Date: Spring or Summer 2018

Applications close: March 1 2018

Reference #: MSRC233

The focus of this internship will be on compilation toolchains from high-level machine learning model specifications to specialized accelerators. The internship work will involve the design of programming abstractions, optimizations, static analyses, and code generation. Knowledge of machine learning and neural network concepts is desirable but not a prerequisite. Candidates with experience in programming languages and compilers – especially domain specific languages and optimizations for linear algebra – are particularly welcome to apply.

Azure Confidential Computing (Security)

Supervisor: Manuel Costa, Olya Ohrimenko, Felix Schuster

Start Date: June 2018

Applications close: January 31 2018

Reference #: MSRC234

Hardware-rooted trusted execution environments (TEEs), such as Intel SGX, enable isolated execution of sensitive workloads. For instance, Microsoft Azure recently announced the availability of SGX-enabled hardware in its data centers. Our team works on the design of secure applications based on TEEs and tools for hardening the code running inside TEEs. Recently, we worked on blockchain applications based on TEEs and countermeasures for side-channel attacks.We are looking for two interns, ideally with background in systems security, side-channel attacks and defenses, compilers, formal verification, or blockchains.

Our project page:

Azure Confidential Computing: 

Confidential Machine Learning (Privacy/Machine Learning)

Supervisor: Olya Ohrimenko

Start Date: Beginning of April 2018 or earlier

Applications close: January 15 2018

Reference #: MSRC235

Multi-party machine learning raises concerns from individual parties with regards to privacy of the data they contribute. In this project, we want to investigate privacy definitions and techniques as they apply to machine learning algorithms. We are looking for candidates interested in the topics of privacy-preserving and robust machine learning and data analysis, in general, including differential privacy.

Our project page: 

Rethinking patient and clinician experiences with Machine Learning for Healthcare (Machine Learning/Healthcare)

Supervisors: Pijika Watcharapichat, Ameera Patel, Danielle Belgrave, Kenton O’Hara, Iain Buchan

Start Dates: Flexible

Applications close: February 1 2018

Reference #: MSRC236

We have several internships in our newly expanded healthcare research effort, which is seeking to understand how AI and machine learning can help reimagine healthcare and deliver more personalized, predictive, precise and timely interventions. Our Team brings together deep clinical expertise, machine learning, behavioural research and UX design to innovate in this space. We are seeking interns across these disciplines at graduate level (PhD or a Masters with substantial research experience). Project areas include:

1.Adaptive mental health observation for subgroup discovery: Probabilistic graphical modelling framework for dynamic, adaptive observation in mental health to identify subgroups of people with different responses to interventions.

Skill set: Machine Learning/ Statistical Learning/ Probabilistic graphical modelling

Contact: Danielle Belgrave

2.Living questionnaires discovery: How can we use reinforcement learning methods to dynamically infer a meaningful set of questions, comparing this to the probabilistic graphical modelling approach.

Skill set: Machine Learning/ Statistical Learning/ Reinforcement Learning

Contact: Danielle Belgrave / Iain Buchan

3.UX for living questionnaires: We are interested in understanding the user experience of living questionnaires in terms of context sensitive adaptation, frequency and timing of personalised alerts, and potential for administration across multiple device channels such as bots, apps, voice based agents.

Skill set: HCI/Social Science/Design

Contact: Kenton O’Hara

4.Care intensity prediction (Skill set: Deep Learning): to identify subgroups of patients with distinct prototypical profiles and whether these profiles predict length of stay in specific healthcare settings.

Skill set: Deep learning/ probabilistic modelling

Contact: Danielle Belgrave

5.Personal risk informed choices: Probabilistic framework and risk communication tools for patients to make better informed choices about intervention options vs. predicted risks of morbidity outcomes beyond usual mortality outcomes.

Skill set: Machine Learning/ Statistical Learning/ Probabilistic modelling/ Causal Modelling

Contact: Danielle Belgrave

6.Reasoning with personal health informatics: Human experience and design of actionable analytics by combining citizen/patient-led experiential and (continuous) physiological measurements from connected personal health devices, in asthma or type 2 diabetes. We are interested in here in understanding how machine learning can be used to reason across multiple data streams with predictive outcomes. But we are also interested in how this can be combined with human reasoning to effect behavioural change.

Skill set: Machine Learning/HCI/Social Science/Design

Contact: Kenton O’Hara

7.Patient-Clinician Interaction: As we bring more personal informatics into our healthcare understanding for chronic conditions, we see to understand ways in which this can transform patient clinician dynamics in their engagements and offer opportunities for organising smarter patient clinician interaction. How do new data insights and predictions from machine learning play a role in these interactions? We will focus in particular on Asthma and Diabetes.

Skill set: HCI/Social Science/Design

Contact: Kenton O’Hara

8.Sleep analytics: Exploring surrogate markers for sleep using multimodal peripheral measurements, and their impact on cognitive performance and chronic illness (e.g. asthma or type 2 diabetes) under a variety of experimental settings.

Skill set: Signal engineering/Machine Learning/HCI

Contact: Ameera Patel

9.Cognitive gaming using Hololens: Development of immersive visuo-spatial cognitive games to use alongside peripheral physiological measurements, as part of a biofeedback experiment to optimise cognitive performance.

Skill set: AR Game development/Design

Contact: Ameera Patel

10.Intelligent health monitoring: Machine learning approaches for early detection of acute disease worsening in patients with chronic respiratory diseases based on physiological signals.

Skill set: Machine Learning

Contact: Pijika Watcharapichat

11.Disease prognosis prediction through multi-modal analysis: Longitudinal correlation study between medical imaging and measurements in lung physiology to identify potential predictive biomarkers for lung function decline and disease prognosis

Skill set: Machine Learning

Contact: Pijika Watcharapichat