Security Engineer
ABOUT THE ROLE
We are looking for an experienced Cryptography Engineer to join our R&D team and work on security-critical open source system where cryptography is a core part of the product.
You will be working at the intersection of applied cryptography, software engineering, security and modern distributed systems — analysing cryptographic constructions, designing secure protocols, implementing cryptographic primitives and their optimization in the framework.
This role is suitable for both cryptography-first engineers with a strong mathematical background and engineering-first developers who have substantial experience with cryptographic systems and want to go deeper into applied cryptography.
WHAT YOU WILL DO
- Design, implement and review cryptographic protocols and security-critical components for the framework under creation.
- Implement and integrate cryptographic algorithms and primitives into production software and its releases.
- Work with symmetric and asymmetric cryptography, digital signatures, hashing and key-exchange mechanisms.
- Design and implement secure key management and key lifecycle processes.
- Analyse existing cryptographic implementations and identify potential weaknesses.
- Participate in security and cryptographic code reviews.
- Translate cryptographic research and academic papers into practical engineering solutions.
- Develop comprehensive unit, integration, negative and interoperability tests.
- Investigate vulnerabilities, implementation flaws and potential attack vectors.
- Keep up with developments in applied cryptography, cryptographic protocols and emerging security technologies.
WHAT WE EXPECT
Cryptography
- Strong understanding of modern cryptographic fundamentals:
- symmetric encryption;
- asymmetric encryption;
- hash functions;
- MAC / HMAC;
- digital signatures;
- key exchange;
- public-key cryptography;
- random number generation;
- key derivation and key management.
- Practical understanding of algorithms and constructions such as:
- AES;
- ChaCha20 / Poly1305;
- SHA-2 / SHA-3;
- RSA;
- ECC;
- ECDSA / EdDSA;
- Diffie–Hellman / ECDH;
- HKDF;
- AEAD.
- Understanding of common cryptographic protocols and how they are used in real systems.
- Ability to reason about cryptographic security assumptions and threat models.
- Understanding of common cryptographic implementation mistakes and attack vectors.
- Ability to read and understand cryptographic papers, specifications and technical documentation.
Software Engineering
- 4+ years of professional software engineering experience, with significant experience working with security-critical or low-level systems.
- Strong programming skills in at least one of:
- Rust
- C/C++
- Go
- Python
- Experience designing and implementing production-grade software.
- Strong understanding of algorithms, data structures and software architecture.
- Experience with unit testing, integration testing and code review.
- Understanding of networking and modern distributed systems.
- Good understanding of operating-system concepts and how applications interact with system resources.
- Experience working with APIs, protocols and serialization formats.
Security
- Understanding of threat modelling and security boundaries.
- Understanding of authentication, authorization and trust models.
- Familiarity with secure software development practices.
- Ability to distinguish between a cryptographic problem and a problem that should be solved by another security control.
- Experience analysing security vulnerabilities and their potential impact.
WOULD BE A PLUS
- Experience with Rust and/or cryptographic libraries.
- Experience developing cryptographic libraries or security-critical components.
- Experience with TLS, PKI, X.509, certificates and key management systems.
- Knowledge of modern protocols such as HPKE.
- Experience with zero-knowledge proofs, MPC, threshold cryptography or homomorphic encryption.
- Experience with blockchain cryptography and transaction privacy.
- Knowledge of secure distributed computing.
- Experience with hardware-backed security, HSM, TPM, Secure Enclave or similar technologies.
- Experience with side-channel attacks and constant-time programming.
- Contributions to open-source cryptographic or security projects.
- Academic or professional background in cryptography, information security, mathematics or computer science.
- Publications, conference talks or research experience in cryptography/security.
WHAT WE OFFER
- Work on technically challenging security-critical problems.
- Opportunity to work with modern applied cryptography rather than only standard application security.
- Direct involvement in real open source system development.
- Collaboration with experienced software engineers and network engineers.
- Flexible remote / hybrid work.
- Competitive compensation.
- Paid vacation and sick leave.