Embedded Software Developer (m/f/d) with a focus on IT security and payment terminals
Job description
The Task
You will be responsible for the following tasks:
- Development of cryptographic procedures that are executed in a Trusted Execution Environment (TEE) and used by customer applications
- Development of applications for processing electronic payment transactions according to our customers' specifications or corresponding standards
- Support with the approval of corresponding devices according to functional or safety standards, e.g. through documentation or discussions with employees of the test laboratories
- Further development of the Apache NuttX real-time operating system, e.g. through the implementation of device drivers
The Benefits
Our family-owned company offers you:
- Great room for responsibility and space for your own ideas
- State-of-the-art work equipment
- Excellent working atmosphere in a team of colleagues with more than 30 years of service as well as fresh, dynamic talents
- Joint sporting and social team events
- Support with the company pension scheme
- Bicycle leasing with JobRad®
The Requirements
You have a degree in computer science, computer engineering or electrical engineering or a comparable qualification.
You also have several of the following qualities or are willing to acquire them on the job:
- Experience in system programming, e.g. acquired through the development of Linux device drivers or microcontroller programming with a real-time operating system (FreeRTOS, Zephyr, Apache NuttX, etc.)
- Knowledge of the ARM Cortex-M architecture, including security extension (TrustZone)
- Conceptual understanding of symmetric and asymmetric cryptography and ability to implement cryptographic protocols with the help of software libraries (OpenSSL, MbedTLS, etc.)
- Professional experience in the field of IT security. You are familiar with concepts such as 'Secure Boot', 'Secure Update', 'Hardware Security Module' or 'Trusted Execution Environment'
- Knowledge of smartcard technology (ISO 7816, ISO 14443, etc.)
- Experience with software versioning systems such as Git, CVS, or Subversion
- Professional experience with the approval of electronic devices according to functional or safety-relevant standards in cooperation with corresponding test laboratories
- Knowledge with regard to the use of the Linux operating system in software development
- Very good language skills in German and English