Research SDE

Microsoft

View: 105

Update day: 01-06-2024

Location: Cambridge East

Category: Architecture / Interior Design

Industry: Information Technology

Job type: Full-time

Loading ...

Job content

Microsoft Research Cambridge (UK) is looking for a Research Software Engineer in confidential computing, focusing on confidential containers.
You will work closely with researchers and engineers of the Confidential Computing group and collaborate with other technical and business units within Microsoft in general. The engineering will involve advancing state-of-the-art confidential computing methods taking advantages of new hardware platforms for real-world applications. The work will be done in the context of Microsoft product group collaborations, such as teams responsible for Azure’s container platforms, as well as entirely novel developments.

Much work is done in the open, the current project depends on www.github.com/Microsoft/hcsshim and is designed to remove Microsoft from the trusted compute base.
There are many layers in the “stack” that need attention in this project. From very-low level aspects of the hypervisor and kernel to the high-level orchestration systems used by customers.

Responsibilities

  • Work with a team of Confidential Computing researchers and software engineers in all stages of the research and development cycle, including early ideation, design, implementation, testing.
  • Collaborate with product teams to understand their products, design, and develop key technologies to give those products appropriate confidentiality guarantees.
  • Partner with engineers from product groups to develop the architecture for deploying confidential solutions in production, ensuring components integrate smoothly and scale, and live systems are stable and healthy.

Qualifications

About you


  • You have humility, patience, and fortitude. You keep learning and can become an expert in unfamiliar fields.
  • You are open and willing to be seen to make mistakes and move on.
  • You have a curious and inquisitive mindset combined with an ability to focus on solving problems.
RSDEs bring practical engineering skills to problems at the bleeding edge. In this team we are building products for real world use at scale. That means the ideas and designs must translate to concrete code which can ship. It also means that there is not a well-trodden path to follow while developing that code and engineers must be prepared to work out how to do things. This leads to a need to be able to keep the rest of the team informed about how new things work, that can require patience and fortitude. Similarly, it is necessary to be interested in how other team members work is going. Providing and taking honest feedback is required. Enabling other team members and helping them to enable you is also essential.
Much of the work concerns relations with teams outside of our direct sphere of influence. As a team we need to present a uniform view externally while being appropriately diplomatic when taking or offering dependencies, i.e. us using or adapting existing products or enabling entirely new features within the other teams’ products. Again, appropriate humility and patience is required to understand the position of other teams, to inform them and to influence them.


Requirements


  • Strong Software Engineering skills (C/C++)
  • Experience of shipping and supporting product in the field.
  • Able to debug a problem, both in the technical domain and the soft, people/team domain.
  • Good and confident communicator.
  • Able to learn new skills on your own.


Preferred Requirements


We cannot expect a candidate to have all these skills, but the technologies involved now include:
  • Golang – the core container infrastructure language.
  • Linux – hcsshim allows Linux containers to run in encrypted linux virtual machines on top of a Windows OS. Linux kernel development knowledge is also some help, even just an appreciation of the lifecycle.
  • Containers – we are making regular Docker style containers work in a secure and confidential manner.
  • Virtualisation – Our unit of isolation is a virtual machine. Our typical runtime environment is a cloud guest VM which launches an encrypted VM.
  • C/C++
  • Rust


Other helpful skills


  • Windows development. VS Code, Visual Studio
  • git, github
  • Experience of cloud as a customer.
  • Experience in industries with regulatory scrutiny of security or confidentiality.
  • An appreciation of resource constrained programming environments and performance.

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.

Benefits/perks listed below may vary depending on the nature of your employment with Microsoft and the country where you work.
Loading ...
Loading ...

Deadline: 16-07-2024

Click to apply for free candidate

Apply

Loading ...
Loading ...

SIMILAR JOBS