
Security Software Development Engineer
- Markham, ON
- Permanent
- Full-time
- Design and develop advanced security software prototypes for AMD's confidential computing solutions
- Write proof-of-concept code for security-critical components including kernel modules, systems software, drivers, and services
- Contribute to de-risking efforts by implementing and testing new security technologies
- Develop technical specifications and documentation based on prototype implementations
- Collaborate with cross-functional teams including operating systems, software drivers, and firmware developers in designing and implementing cross-layer dependencies
- Perform integration testing and validation of prototype implementations
- Present and demonstrate prototype work to internal and external partners
- Provide technical consultation regarding security features, interfaces, and programming requirements
- Participate in technical design and code reviews and contribute to architectural discussions
- Experience in designing and developing system software solutions such as kernel, OS, device drivers, and firmware
- Strong programming skills in Rust and C/C++ programming languages
- Experience in development of security features and prototyping
- Strong understanding of computer architecture systems and concepts, including server CPU systems, fundamentals of the system memory hierarchy and caches, and underlying system hardware and firmware
- Knowledge of existing hardware architecture(s) (x86 preferred) including associated security and/or virtualization extensions
- Familiarity with overall system security concepts
- Eagerness and ability to quickly learn new concepts
- Team player, ability to work in cross-site and matrix environments
- Knowledge of confidential computing technologies (e.g., AMD SEV)) and trusted execution environments (TEEs)
- Experience working with x86 virtualization technology
- Possess fundamental knowledge of security principles and properties, including confidentiality, integrity, availability, authentication, authorization, and auditing
- Knowledge or experience with Security Development Lifecycle (SDL) practices
- Experience with rapid prototyping methodologies and proof-of-concept development
- Knowledge and experience with security vulnerability reporting and mitigation