Skip to content
mimi

Embedded Software Engineer / Firmware Engineer --Bangalore/Hyderabad

Ampstek

Hyderabad · On-site Contract 1w ago

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