Software Engineer, Rust
- Contribute to new and existing Rust codebases, with a focus on high code quality (e.g., tasteful use of traits, code/memory footprint reduction, minimizing dependency trees, refactoring between enums/structs, using macros to reduce copy-paste errors, etc.).
- Utilize best practices for unit tests, integration tests, benchmarking, documentation, version control hygiene, and open source release cycle management.
- Implement low-level systems code that is cross-compiled and performantly ran across platforms, including backend servers, mobile devices, and in the browser through WASM.
- With support and review from cryptographers, use cryptographic APIs to implement digital signatures, message authentication, encryption/decryption, data structures, and zero-knowledge proof protocols for production applications. For this role, you are not expected to know the math, but you will be responsible for correct low-level implementations, "blocking and tackling" such as zeroing memory, preventing timing attacks, writing test vectors, and configuring fuzzers.
- Interface directly with security auditing firms who have experience evaluating implementations that rely on applied cryptography.
- Excellent written communications skills (necessary for remote work).
- Experience writing widely-distributed backend software in statically-typed languages.
- Aptitude for computer security, correct use of cryptography, and user data privacy.
- Proficiency in backend web frameworks, API design, databases, and scalability.
- Experience setting up or configuring CI/CD pipelines based on containers and cloud services.
- Comfortable with rapid directional changes of focus in a startup environment.
- Experience building distributed storage systems at scale.
- Proficiency with functional programming paradigms and use of advanced type systems found in languages such as Rust, C++, OCaml, or Haskell.
- Contributions to open source software projects and technology standards.
- Full-time experience with working remotely.
- Familiarity with operating system internals, compiler internals, memory management, and low level programming.
- Professional experience in a high stakes industry such as cloud infrastructure, finance, healthcare, social media, or online gaming.