Experienced BSP Engineer
Must-have:CI/CD
Machine translation — original language: Hebrew.Show original
Technical leadership of end-to-end BSP solution design and development, from the requirements gathering stage, through architecture design, to full integration and delivery to the customer.
Main areas of responsibility in the role:
- Full BSP development and design, including OS porting and customization (Linux, RTOS), boot management, Bootloader, memory adaptation, and hardware configuration for specific hardware platforms.
- Writing and integration of drivers at the Kernel Space level for various hardware interfaces (I2C, SPI, ETH, CAN, GPIO)
- Writing libraries, API interfaces, and Tests at the User Space level (so)
- Implementing security policies, reducing attack surface, managing permissions, and process isolation in accordance with project requirements and relevant standards
- Configuration and optimization of Linux Kernel according to the processor architecture (ARM, X86, Soft-Core, RISC-V), writing Device Trees
- Close work with various disciplines, including firmware developers, application software developers, board engineers, and system engineers, while managing clear technical interfaces and expectation coordination
- Writing requirements management documents (SRS, SRD, SDD, UC) and documenting development and integration processes
- Full responsibility for managing multiple projects simultaneously, including meeting deadlines, dedication, and the quality of the technical solution under pressure and in a dynamic environment
Relevant academic degree:
Software Engineering, Computer Science, Electrical Engineering
Requirements:
- At least two years of experience in BSP software development
- Deep knowledge of system architecture – understanding of software structure, HAL/BSP/OS layers, and the lifecycle of an embedded system
- Experience with various processor architectures: ARM Cortex-A/M/R, x86, Soft-Core (such as MicroBlaze, Nios II), etc.
- Familiarity with industrial and embedded communication protocols: I2C, SPI, UART, USB, Ethernet, CAN, PCIe, etc.
- Experience in writing technical documents: SRS, SDD, Use Cases – including the ability to gather requirements from non-technical parties and translate them into clear specifications
- Experience in HW/SW integration: ability to diagnose and solve hardware-software interface problems, using debug tools such as JTAG, logic analyzers, oscilloscope
- Test writing: experience in writing Unit Tests and integration and system tests, including automation of CI/CD processes for embedded projects
- Good command of technical English: reading and writing documents, Datasheets, Application Notes, and standards