Senior Embedded Software Designer (Security IP)

  • Synopsys
  • Ottawa, ON, Canada
  • Feb 06, 2018
Full time Customer Service Software Support

Job Description

Synopsys’ security IP solutions include a range of cryptography cores, security protocol accelerators and processors, embedded security IP modules, secure boot and cryptography middleware as well as content protection IP for integration into system-on-chips. These integrated solutions enable the most efficient silicon design and highest level of security to help prevent a wide range of evolving threats in connected devices such as theft, tampering, side channels attacks, malware and data breaches.
Job Description
Join our growing Security IP team, located in Kanata, as an Senior Embedded Software Designer where you will be responsible for developing, testing, and maintaining our software APIs, libraries and applications.
You will be collaborating with a variety of internal teams to develop best-in-class software systems to enable our Security IP product solutions.
Required Skills and Aptitudes
- Experience developing software for embedded systems where resources are limited - bare metal or interrupt driven systems
- Experience developing applications and custom SDKs, based on industry standard protocols and APIs
- Advanced C/C++ development, debug, and testing using GNU tools such as gcc, gmake, and gdb
- Demonstrated experience helping customers in time sensitive engagements
- Capable of working in a structured software development environment with ability    to work on all phases of development -                                          specification/design/coding/testing/documenting/support
- Experience working in mixed hardware/software development teams
- Strong communication (written and verbal) and interpersonal skills
Desirable Skills and Aptitudes

- 7+ years of relevant experience
- B.Sc ( EE or Computer Science ), or equivalent industry experience
- System architecture and specification background
- Linux kernel background, including device drivers and kernel module development
- Scripting languages such as perl or bash, automation tools such as Jenkins
- Exposure to, and experience applying cryptographic and related security algorithms (e.g. AES,  TLS, IPsec, SHA, RSA, ECC, HDCP )
- Experience developing embedded applications on ARC or ARM targets