Search by job, company or skills

Embedded Software Engineer

Embedded Software Engineer

Ethereal Machines
3-5 Years
Not Disclosed
Early Applicant
  • Posted 14 days ago
  • Be among the first 30 applicants

Job Description

Role Overview

We are looking for a skilled Firmware Engineer to design, develop, and maintain embedded firmware for custom hardware platforms used in CNC controller systems. The ideal candidate will have strong experience in real-time systems, hardware bring-up, and communication protocols, along with a solid understanding of embedded Linux workflows.

Key Responsibilities
  • Design and develop embedded firmware for custom boards used in CNC controllers
  • Work with FreeRTOS for real-time application development
  • Implement and debug communication protocols such as UART, SPI, I2C, CAN, and Serial interfaces
  • Develop and integrate CAN-based communication systems (mandatory)
  • Work on board bring-up, hardware validation, and debugging at the system level
  • Collaborate with hardware engineers during schematic and PCB design phases
  • Optimize firmware for performance, memory usage, and reliability
  • Debug low-level issues using tools like oscilloscopes, logic analyzers, and debuggers
  • Develop and maintain documentation for firmware and system design
  • Follow a Linux-based development workflow (build systems, toolchains, scripting, etc.)

Required Skills & Qualifications
  • 3+ years of experience in embedded firmware development
  • Strong proficiency in C/C++ for embedded systems
  • Hands-on experience with FreeRTOS (mandatory)
  • Strong experience with CAN protocol (mandatory)
  • Strong understanding of serial communication protocols (UART, SPI, I2C)
  • Proven experience in board bring-up and hardware debugging (mandatory)
  • Experience working in a Linux development environment
  • Familiarity with cross-compilation, build systems (Make/CMake), and debugging tools (GDB, OpenOCD, etc.)
  • Familiarity with version control systems (Git)
  • Solid understanding of embedded systems fundamentals (interrupts, timers, memory, peripherals)

Preferred / Good to Have

  • Experience with Ethernet (TCP/IP stack, embedded networking)
  • Exposure to industrial communication protocols or CNC/motion control systems(EtherCAT, Profinet)
  • Experience with bootloaders, firmware update mechanisms
  • Knowledge of scripting (Python, Bash)

More Info

Job Type:
Industry:
Employment Type:

Key Skills

OpenOCD

Linux development environment

About Company

Similar Jobs

4-8 yrs
Bengaluru, India
Skills:
C++ Programming, Multithreading, Concurrent Programming, Algorithms and data structures, Embedded Systems, IPC/RPC mechanisms, Linux-based systems, Secure coding principles
3-8 yrs
Bengaluru, India
Skills:
real-time operating systems (RTOS), Embedded C, Device Drivers, C++, MATLAB, Git, Integration Testing, Debugging, Firmware, MISRA C, AUTOSAR Classic, defect resolution, Simulink, software unit testing, ISO 26262, Microcontrollers, hardware abstraction layers
6-8 yrs
Bengaluru, India
Skills:
Zephyr), RTOS (FreeRTOS, Microcontroller platforms (STM32, Renesas), Device Drivers, Kernel board bring-up, Linux-based ARM processors, USB socket programming, Oscilloscopes, NXP, microchip, Modbus, Wireless standards, TI, Logic analyzers, Probes
3-5 yrs
Bengaluru, India
Skills:
C, Coding Standards, Python, MATLAB, test automation, embedded firmware software development, cFS Framework, Simulink, hardware-in-loop simulation, Static Analysis, NASA’s F Prime
6-10 yrs
Bengaluru, India
Skills:
Vectorcast, C, Agile Methodologies, Jira, Aspice, Embedded Software, Linux, Ethernet, VxWorks, Qnx, Polarion, TDA4, Aurix, S32, Autosar, configuration management tools, Multicore OS, Ea