Search by job, company or skills

AmpsTek

Embedded Software Engineer / Firmware Engineer --Bangalore/Hyderabad

new job description bg glownew job description bg glownew job description bg svg
  • Posted 8 hours ago
  • Be among the first 10 applicants
Early Applicant

Job Description

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 documentationdesign 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.

More Info

Job Type:
Industry:
Employment Type:

About Company

Job ID: 145083329