Senior Software Engineer - Embedded

Gurugram, India

Role Description:

As a Senior Software Engineer specializing in Embedded Systems, you will be responsible for designing, developing, and maintaining software solutions for embedded platforms. You will collaborate closely with cross-functional teams to deliver high-quality, scalable, and efficient embedded software solutions. Your role will involve working on firmware, device drivers, real-time operating systems (RTOS), and low-level software components.


  • Design and implement embedded software solutions for various hardware platforms, ensuring functionality, performance, and reliability.
  • Develop and maintain device drivers, bootloader software, and firmware for embedded systems.
  • Collaborate with hardware engineers to define system architecture and hardware/software interfaces.
  • Optimize embedded software for resource-constrained environments, including memory footprint and power consumption.
  • Conduct code reviews, debugging, and performance analysis to ensure software quality and maintainability.
  • Participate in the entire software development lifecycle, from requirements analysis to deployment and support.
  • Stay updated with emerging technologies and industry trends in embedded systems and contribute to continuous improvement initiatives.

Technical Skills (Must Have):

  • Proficiency in C/C++ programming languages for embedded systems development.
  • Experience with real-time operating systems (RTOS) such as FreeRTOS, RTLinux, or VxWorks.
  • Strong understanding of embedded hardware platforms, microcontrollers, and microprocessors (e.g., ARM Cortex-M, AVR, PIC).
  • Knowledge of communication protocols like UART, SPI, I2C, CAN, Ethernet, and wireless technologies (e.g., Wi-Fi, Bluetooth, Zigbee).
  • Familiarity with embedded development tools such as IDEs (e.g., Eclipse, Keil, IAR Embedded Workbench), debuggers, and JTAG/SWD interfaces.
  • Expertise in embedded software debugging techniques and tools (e.g., GDB, JTAG debuggers).
  • Experience with version control systems like Git for collaborative software development.

Technical Skills (Nice To Have):

  • Familiarity with safety-critical software development standards
  • Knowledge of software security principles and practices for embedded systems.
  • Understanding of agile software development methodologies (e.g., Scrum, Kanban).
  • Exposure to continuous integration/continuous deployment (CI/CD) pipelines for embedded software.


  • Bachelor's or Master's degree in Computer Science, Electrical Engineering, or related field.
  • Experience: 3 to 6 Years
  • Strong problem-solving skills and ability to work effectively in a collaborative team environment.
  • Excellent communication skills and the ability to articulate technical concepts to diverse stakeholders.
  • Proven track record of delivering embedded software projects on schedule and within budget constraints.

 Benefits & Perks

Employers we hire for, prioritize the well-being and satisfaction of their employees, and offer many of these benefits
Competitive Salary Packages
Performance Bonuses
Health Insurance
EPF & Gratuity

Flexible Work Arrangements
Paid Time Off (PTO)

Training and Development
Employee Assistance Programs
Meal and Refreshment
Maternity and Paternity Leave 

Recreational Facilities 

Employee Stock Ownership Plans (ESOPs) 

Explore Our Services


  • Browse Jobs
  • Remote Jobs
  • Jobs Alerts
  • Resume/CV Guide

Find Your Next Job


  • General Hiring
  • Staff Argumentation
  • Remote Teams
  • Project Based Staffing

Find Your Next Hire


  • Tutorials & Courses
  • Learning Paths
  • Mentorship
  • Assessments & Projects 

Upskill or Reskill


  • Digital Engineering
  • Embedded Engineering
  • Quality Engineering
  • Application Modernization

Engineering Services