JOBSEARCHER

Embedded Software Engineer

Position OverviewWe are seeking a motivated Embedded Software Engineer to design, develop, test, and maintain software for embedded systems and electronic devices. This position is suitable for entry-level candidates as well as mid-level professionals with experience in embedded software development, firmware, microcontrollers, and hardware/software integration.Key ResponsibilitiesDesign, develop, and maintain embedded software and firmware using C/C++.Develop software for microcontrollers, processors, and embedded platforms.Work with hardware engineers to integrate software with sensors, peripherals, and electronic components.Develop and maintain device drivers and low-level software.Work with communication protocols including UART, SPI, I2C, CAN, USB, and Ethernet.Develop applications using RTOS, Embedded Linux, or other embedded operating systems.Debug software and hardware integration issues using JTAG, debuggers, oscilloscopes, and logic analyzers.Perform unit testing, integration testing, and system-level testing.Analyze software performance, memory utilization, timing, and reliability.Participate in code reviews and follow software development and coding standards.Use Git and other version-control/build tools for software development.Required QualificationsBachelor's or Master's degree in Computer Science, Computer Engineering, Electrical Engineering, Electronics Engineering, or a related field.0–5 years of experience in embedded software, firmware, or related engineering.Strong programming knowledge in C/C++.Understanding of data structures, algorithms, pointers, memory management, and object-oriented programming.Basic understanding of microcontrollers, processors, and embedded systems.Familiarity with hardware interfaces and communication protocols.Preferred QualificationsExperience with ARM Cortex-M/Cortex-A or other microcontroller architectures.Experience with FreeRTOS, Zephyr, Embedded Linux, or similar RTOS platforms.Knowledge of device-driver development.Familiarity with CAN/CAN-FD, BLE, USB, Ethernet, or wireless technologies.Experience with Python or scripting for automation and testing.Familiarity with JTAG/SWD, GDB, oscilloscopes, logic analyzers, and other debugging tools.Understanding of Git-based development workflows and CI/CD.Experience with automotive, IoT, robotics, medical devices, industrial automation, or consumer electronics is a plus.Entry-Level CandidatesRecent graduates with strong academic projects, internships, or hands-on experience in C/C++, microcontrollers, Arduino/STM32/ARM, RTOS, Embedded Linux, or electronics projects are encouraged to apply.Mid-Level CandidatesCandidates with 2–5 years of embedded software/firmware development experience and experience working on production-level embedded products are preferred for mid-level responsibilities.Key TechnologiesC | C++ | Embedded C | ARM | Microcontrollers | RTOS | Embedded Linux | Device Drivers | UART | SPI | I2C | CAN | USB | Ethernet | Git | JTAG | GDB | PythonReady to Take the Next Step?Email your updated resume to: mafiya@maximatek.com