Job Details
Experience Needed:
Career Level:
Education Level:
Salary:
Job Categories:
Skills And Tools:
Job Description
- Manage a team of embedded systems engineers
- Aid in the selection of microcontroller for various applications
- Aid in the design of interfacing and application protocols.
- Develop HAL layer for various microcontrollers.
- Develop firmware that communicates with higher level system blocks.
- Develop bootloader that upgrades running firmware.
- Develop SDKs for developers and write their documentation.
- Aid in developing circuits and PCBs.
- Develop bill of materials documents.
- Integrate and test functionality with other parts of the system
Job Requirements
- Computer Engineering degree or equivalent.
- 5+ year experience in building embedded systems projects.
- 1+ year experience in developing for STM32 family.
- Proficiency in embedded C/C++ programming language.
- Excellent skills in debugging and editing open source code.
- Experienced in developing libraries and SDKs using blocking and non-blocking APIs.
- Developed USB, SPI or UART bootloaders before.
- Experienced with different interfacing protocols like: USB, SDIO, SPI, I2C, UART,...etc
- Experienced in porting code bases to different processors.
- Built or customized USB drivers for ARM processors.
- Built a complete HAL for any microcontroller.
- Proven software design, programming, and analytical skills.
- Experience in any source control tools, preferably git.
- Experience in cryptography and hashing is a plus.
- Experience in WiFi, Bluetooth or NFC is a plus
- Working with any of these framing protocols is a plus: HDLC, PPP, COBS, XModem ...etc.
- Familiarity with blockchain and decentralized technologies is a plus.
- Working with protocol buffers or any RPC frameworks is a plus.
- Experience with any other ARM processors is a plus.
- Knowledge of any high-level programming language is a plus.
- Working with any HSM is a plus.
- Experience with embedded Linux, Yocto or BuildRoot is a plus.
- Experience in using hardware debuggers is a plus: JLink or ST-Link
- Strong knowledge of electronics is a plus.
- Past contributions to open source projects is a plus.
- Winning or participating in programming contests is a plus.