Senior Cryptographic Protocol Engineer
What design roles in crypto pay
47 salaries · our own dataMost design roles in crypto pay between $116k and $224k, with a median of $181k.
As a Senior Cryptographic Protocol Engineer at SuperQubit, you will implement a novel secure data-encryption protocol built around key material generated by Quantum Key Distribution infrastructure. You will translate a defined cryptographic protocol specification into a production-grade, battle-tested Rust implementation running between geographically distributed nodes. This is a systems and network-security role requiring strong expertise across cryptography, secure networking, systems programming, distributed systems, and security-sensitive software development.
What you'll do
- Implement a novel cryptographic protocol based on a defined protocol specification
- Design and develop the core implementation primarily in Rust
- Design secure interfaces between the cryptographic protocol and the underlying QKD key-management infrastructure
- Develop mechanisms for securely consuming, managing, rotating, and tracking shared key material between communicating nodes
- Design and implement protocol state machines, session management, key lifecycle management, and error handling
- Integrate the protocol with existing networking and application infrastructure
- Implement protections against protocol-level attacks including replay, message manipulation, key reuse, state confusion, and related threats
- Develop comprehensive unit, integration, interoperability, performance, and security tests
- Analyze protocol behavior under failure conditions such as lost messages, node restarts, key exhaustion, synchronization problems, and network interruptions
- Document protocol implementation, interfaces, assumptions, security-sensitive design decisions, and operational procedures
- Participate in security reviews alongside cryptography and QKD specialists
- Profile and optimize for performance, latency, memory usage, concurrency, and efficient key consumption
- Troubleshoot systems and networking issues across geographically distributed nodes
- Travel between project sites and QKD/network infrastructure located in different cities as required
What you bring
- A Bachelor's or Master's degree in Computer Science, Computer Engineering, Electrical Engineering, Cybersecurity, Mathematics, or a related field
- 5+ years of professional software engineering experience, with significant work in systems, networking, cybersecurity, or cryptographic software
- Demonstrated professional experience with Rust for systems, networking, or security-sensitive software
- Strong experience with C/C++ for systems programming and integration with existing libraries
- Proficiency in Python for automation, testing, tooling, and crypto prototyping
- Bash and Linux shell scripting ability
- Strong understanding of applied cryptography and cryptographic protocols, including symmetric cryptography, key management, key lifecycle, key derivation, key separation, authentication, integrity, randomness, entropy, nonces, initialization vectors, counters, replay protection, secure session establishment, and protocol state machines
- Working understanding of threat modeling, secure software design, and the ability to identify security risks in protocol implementations
- Demonstrated experience implementing or working with secure protocols or security-sensitive systems
- Strong understanding of Linux operating systems, processes, threads, concurrency, synchronization, and memory management
- Experience developing multithreaded and asynchronous software
- Experience with performance profiling, debugging, and optimization
- Understanding of hardware/software interfaces and ability to troubleshoot systems at both software and OS levels
- Strong understanding of TCP/IP and UDP networking, IPv4/IPv6, Ethernet, sockets, routing, and network troubleshooting
- Experience designing or implementing network protocols
- Experience with distributed systems and inter-node communication
- Understanding of network latency, reliability, synchronization, and failure recovery
- Experience with secure network communications
- Strong experience with Git and modern software development workflows
- Experience with automated unit, integration, and system testing
- Experience with CI/CD
- Experience with Docker and containerized environments
- Experience with debugging and profiling tools
- Familiarity with observability, logging, monitoring, and system diagnostics
- Experience working in Linux-based development and production environments
- Strong understanding of software architecture and maintainable code design
- Experience documenting protocol specifications, message formats, state machines, key-management procedures, error conditions, and security assumptions
- Ability to convert complex technical and cryptographic concepts into clear engineering documentation that can be implemented, tested, and independently understood by other engineers
- Based in Toronto, Ontario, or willing to relocate
- Willing to travel between project sites in Canada
- Comfortable in data centers, network facilities, and labs
- Able to troubleshoot on-site across software and networking layers
- Valid driver's licence if required for site travel
- Able to satisfy applicable site-access and security requirements
- Canadian citizen or permanent resident (required for project and security clearance)
- Exceptional attention to detail, particularly with security-sensitive code
- Strong analytical and problem-solving abilities
- Enjoys reasoning about complex protocols and distributed systems
- Comfortable challenging assumptions and identifying potential security weaknesses
- Works independently and takes ownership of technical problems
- Communicates complex technical concepts clearly, in writing and in person
- Collaborates well with cryptographers, QKD engineers, network engineers, and software developers
- Comfortable working with novel technology where established patterns may not exist
- Pragmatic approach that balances security, performance, reliability, and engineering complexity
- Strong sense of responsibility when working with cryptographic keys and security-critical infrastructure
Nice to have
- Go
- Java or C# for integration with existing infrastructure
- Rust FFI and integration between Rust and C/C++ libraries
- Experience with cryptographic protocol design or implementation
- Experience reviewing cryptographic implementations
- Experience with cryptographic libraries and APIs
- Experience with HSMs, secure enclaves, or other key-protection technologies
- Familiarity with formal methods, protocol verification, or cryptographic security analysis
- Familiarity with post-quantum cryptography
- Experience with QKD or quantum communications
- Familiarity with TLS, QUIC, IPsec, WireGuard, or the Noise Protocol Framework
- Experience using Wireshark, tcpdump, and standard Linux networking tools
- Familiarity with static analysis, dependency management, and vulnerability scanning
About SuperQubit
SuperQubit is building secure, innovative technologies for the quantum era, with a focus on novel secure data-encryption protocols around Quantum Key Distribution infrastructure.
