Senior Rust/iOS Engineer, Cryptography

  • Element
  • Remote (London, UK)
  • 08 May, 2023
Full time

Job Description

Who we are

Element is the start-up which employs the core team behind Matrix— the leading project for secure, open decentralised communication.

Matrix’s mission is to make messaging as open as email— allowing everyone to choose where their data is hosted, enjoy private conversations and ultimately be in control of their own communication.

Practically speaking this means building open, self-sovereign alternatives to WhatsApp/Slack/Teams for governments, civic institutions and communities. At one end of the scale the French government has adopted Matrix for all of its instant messaging needs and more recently we delivered the world’s largest-ever single contract for a collaborative software service helping schools in Germany support remote learning. On the other end of the scale open source communities such as Mozilla have adopted Element for all of its community chat replacing IRC


The Role

We are seeking a versatile Software Engineer with a strong foundation in either native iOS or Rust development, as well as a good understanding of cryptographic principles, to join our Cryptography team at Element.io. Your role will involve creating, developing, and maintaining secure iOS applications for our users, while also contributing to the implementation of cryptographic features in our Rust SDK. Experience with end-to-end encryption in messaging applications is a significant plus. A solid background in both iOS and Rust is desirable, but we welcome candidates who excel in one area and are eager to expand their skills in the other.


Key Responsibilities

  • Design, build and maintain advanced iOS applications using Swift (and some Objective-C), ensuring performance, quality, and responsiveness.
  • Collaborate with cross-functional teams to define, design, and ship new features.
  • Develop and implement cryptographic solutions in Rust for integration with our iOS applications.
  • Write clean, maintainable, and well-tested code, adhering to best practices in iOS development and Rust programming.
  • Investigate and resolve performance issues, bottlenecks, and bugs.
  • Participate in code reviews and provide constructive feedback to peers.
  • Stay up-to-date with the latest industry trends, emerging technologies, and best practices in iOS development, Rust, and cryptography.
  • Collaborate with the product and design teams to deliver a seamless and intuitive user experience.
  • Contribute to the continuous improvement of our development processes, tools, and infrastructure.


The team operates remotely and is made up of seven engineers, we can support most locations in Europe as well as the US. We have our headquarters in London and will require travel from time to time.

Since (almost) everything we do is open source you can get a great feel for exactly what it would be like to work on Element - joining dev-centric channels such as End to End Encryption in Matrix provides a window into the core team and the community. Come and say hi! If you have any questions please feel free to reach Valere via matrix on @valere35:matrix.org

Requirements

  • 3+ years of experience in iOS development with a strong command of Swift and Objective-C.
  • Proven experience in Rust programming and integrating Rust code with iOS applications.
  • Strong understanding of cryptographic principles, algorithms, and libraries.
  • Experience with iOS performance tools and optimization techniques.
  • Knowledge of Agile methodologies, version control systems (e.g., Git), and continuous integration tools.
  • Strong problem-solving skills, excellent communication abilities, and a keen eye for detail.
  • A passion for privacy, security, and building products that make a difference.

Benefits


People tend to stay with the company for a long time. We take this as a sign that we have a cohesive, supportive culture, that we have engaging challenging work and that people can develop their skills and careers here for the long term. We also have a family friendly environment, many of the team have small children and we look to accommodate that as best we can.

Our package generally contains:

  • Private Health Insurance / Medical Allowance
  • Plumm Health
  • Pension
  • Annual Bonus
  • Share Options
  • Home Office Allowance
  • Coworking Space Allowance
  • Annual leave (40 days including local bank holidays)
  • Company Socials (virtual or in person)
  • Annual Global Offsite

You can find a more detailed explanation here and you might be eligible for other benefits depending on your location.

Element does not discriminate on the basis of race, sex, colour, religion, age, national origin, marital status, disability, veteran status, genetic information, sexual orientation, gender identity or any other reason prohibited by law in provision of employment opportunities and benefits.