Embedded Software Engineer / Firmware Engineer --Bangalore/Hyderabad
Ampstek
About the role
• *Role- Embedded Software Engineer / Firmware Engineer – C++ with Python/Perl Automation** • *Location- Bangalore/Hyderabad** • *1 year C2H** • *Job Summary**
We are seeking a
• *hands-on Embedded Software Engineer**
with deep expertise in • *C++**
, • *Python**
, • *Perl**
, and embedded systems fundamentals. In this role, you will • *design, develop, test, and optimize firmware/software**
for resource-constrained devices and platforms (MCUs/MPUs), build • *automation/test tooling**
, and collaborate cross-functionally to deliver robust, high-quality embedded solutions. The ideal candidate is comfortable working close to hardware (drivers, BSP, middleware), fluent in modern C++ practices, and pragmatic about using scripting (Python/Perl) to accelerate development, CI/CD, and validation. • *Key Responsibilities** • **Design & Development** • Architect, implement, and maintain embedded software/firmware in • *C++**
for microcontrollers or Linux-based embedded platforms. • Develop device drivers, communication stacks (SPI/I2C/UART/CAN/Ethernet), and middleware as needed. • Optimize for performance, memory footprint, and power consumption. • **System Integration** • Work closely with hardware, validation, and product teams to bring up boards, debug issues with oscilloscopes/logic analyzers, and support system-level integration. • Participate in code/design reviews, perform root-cause analysis, and drive defects to closure. • **Delivery & Process** • Contribute to continuous integration pipelines (build, test, packaging). • Create and maintain technical documentation—design specs, API docs, test plans, and release notes. • Champion best practices for code quality, safety, reliability, and security. • *Required Qualifications** • **Education:**
Bachelor’s or Master’s in Computer Science, Electronics, Electrical, or related field (or equivalent practical experience). • **Programming:** • Strong proficiency in • *C++ (11/14/17)**
for embedded contexts (const correctness, RAII, templates, STL in constrained environments). • Strong scripting with • *Python**
(pytest/unittest, argparse, asyncio/threads, serial, numpy/pandas for analysis). • Working experience with • *Perl**
for legacy automation, parsing, tooling, infrastructure scripts. • **Embedded Expertise:** • Experience with • *microcontrollers**
(e.g., ARM Cortex-M/R/A) or • *Embedded Linux**
(Yocto/Buildroot, device tree, ystem). • Familiarity with • *RTOS**
(e.g., FreeRTOS, ThreadX, Zephyr) and interrupt-driven design. • Hands-on with • *communication protocols**
: I2C, SPI, UART, CAN, USB, TCP/IP. • **Tools & Process:** • Proficient with • *Git**
, Cmake/Make, GCC/Clang, cross-compilers, JTAG/SWD debuggers (e.g., Segger, OpenOCD). • Solid understanding of • *software testing**
, • *CI/CD**
(Jenkins/GitLab CI/GitHub Actions), and code quality tools (static/dynamic analysis, sanitizers, coverage). • **Core Skills:**
Strong debugging, problem-solving, and system thinking; excellent collaboration and communication.
Don't send a generic resume
Paste this job description into Mimi and get a resume tailored to exactly what the hiring team is looking for.
Get started free