DevJobs

Software Engineer

Overview
Skills
  • C C ꞏ 3y
  • C++ C++ ꞏ 3y
  • Python Python
  • Bash Bash
  • Device drivers
  • Version control systems
  • Make
  • Hardware abstraction layers
  • GNU toolchains
  • Embedded software development
  • Embedded Linux development
  • Cross-compilation
  • CMake
  • Board Support Packages
  • Cyclone
  • ColdFire
  • Bootloaders
  • RTOS

CI SEMI, a division of CI SYSTEMS, specializes in advanced technologies for the semiconductor industry.

We develop and provide cutting-edge equipment and solutions for semiconductor manufacturing, development, and testing.


We are looking for a versatile and skilled Software Engineer to join our team and contribute to the development of robust systems with software across Windows, Linux, and embedded environments.

The ideal candidate will have strong C/C++ programming skills, experience with Board Support Packages (BSPs), and a solid understanding of low-level embedded development. This role includes both application and system-level programming, with opportunities to work closely with hardware teams.


Responsibilities

  • Develop and maintain software applications and system components on Windows (MFC) and Linux platforms.
  • Design and implement embedded software, including device drivers, hardware abstraction layers, and BSPs.
  • Work with cross-compilation toolchains and environments targeting embedded hardware.
  • Support bring-up and debugging of embedded systems using JTAG and in-circuit debuggers.
  • Collaborate with hardware engineers to define software-hardware interfaces.
  • Optimize code for performance, memory, and real-time constraints.


Qualifications

  • B.Sc. or M.Sc. in Computer Engineering, Computer Science, or a related field.
  • 3+ years of experience in C/C++ development on Windows and/or Linux.
  • Hands-on experience with embedded software development, especially BSP-level work.
  • Strong knowledge of operating system concepts, device drivers, and interfacing with hardware.
  • Familiarity with cross-compilation, GNU toolchains, and embedded Linux development.
  • Comfortable working with version control systems (e.g., Git) and build tools (e.g., Make, CMake).


Nice to Have:

  • Experience with ColdFire and Cyclone (e.g., NXP, Altera/Intel SoCs).
  • Experience with RTOS, real-time constraints, and bootloaders.
  • Experience in cross-platform development and system porting.
  • Knowledge of scripting languages (Python, Bash) and automation tools.
  • Familiarity with network protocols, file systems, and memory management
CI Systems