Expoint - all jobs in one place

The point where experts and best companies meet

Limitless High-tech career opportunities - Expoint

Microsoft Senior Research Software Engineer 
United Kingdom, England, Cambridge 
764955932

13.08.2024

Research Cambridge (UK) is looking for aResearch Software Engineer in confidential computing,).

You will work closely with researchers and engineers of theand collaborate with other technical and business units within Microsoft in general. The engineering will involve advancingconfidential computing methodsby takingadvantage 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 AzureConfidential Ledger (), as well as entirely novel developments.

Research engineering comes with opportunities to develop the futuree believe that confidential computing will become ubiquitous and lead to genuinely new computing opportunities.

Our projects involve learning as we go along, exploring some options which seem likea promising ideado not give satisfactionand so we need to be willing to be seen to make mistakes and move on.

Research engineersbring practical engineering skills to problems at theedge. In this team we are building products for real world use at scale, whichmeans the ideas and designs must translate to concrete code which can ship.


Qualifications
  • 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.

You are comfortable working in situations where there isnot 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 oring 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

  • Experience of shipping and supportingproductsin 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.

Nice To Have

  • – themain implementation language for CCF.
  • Trusted Execution Environments, such as SGX, SEV-SNP etc.
  • Distributed Consensus Algorithms, such as Paxos, Raft, PBFT etc.
  • Web protocols, HTTP 1.1/2/3, QUIC.
  • JavaScript, TypeScript, Web Assemblymanaged application runtimes in CCF.
  • VS Code, git, GitHub, Linux development, Python, Sphinx.

Experience in the following domains would also help:

  • High performance distributed systems.
  • Industries with regulatory scrutiny of security or confidentiality.
  • End-to-end functional and performance test systems.
  • Cryptographic protocols and PKI.
  • Open-source framework development and writing public technical documentation.
  • Public cloud as a customer.
  • Specification languages such as TLA+.
Responsibilities
  • Azure Research: Security & Privacyresearchers and software engineers in all stages of the research and development cycle, including early ideation, design, implementation,andtesting.
  • 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.
  • Help improveand maintain the build, test and release infrastructure used by the team, and the documentation for the project ().