Embedded Software Engineer - C/C++

4 years

0 Lacs

Posted:1 week ago| Platform: Linkedin logo

Apply

Work Mode

On-site

Job Type

Full Time

Job Description

About The Role

We are seeking a talented and experienced Embedded Software Engineer with 4 to 5 years of hands-on experience to join our growing engineering team in India.In this role, you will be responsible for the full lifecycle of embedded software development, from requirements analysis and design to implementation, testing, and deployment.

Responsibilities

You will work on challenging projects, integrating software with hardware, optimizing performance, and ensuring the reliability and robustness of our embedded Responsibilities :
  • Software Development : Design, develop, code, test, and debug embedded software in C/C++ for various microcontrollers and microprocessors (e.g., ARM Cortex-M/R/A, PIC, AVR, ESP32).
  • Firmware & RTOS : Develop and optimize firmware for bare-metal applications or integrate with Real-Time Operating Systems (RTOS) such as FreeRTOS, Zephyr, or similar, ensuring efficient task scheduling and resource management.
  • Hardware-Software Integration : Work closely with hardware engineers to bring up new boards, perform hardware-software integration, and troubleshoot issues at the interface level.
  • Device Driver Development : Develop, port, and optimize low-level device drivers for peripherals like GPIO, UART, SPI, I2C, ADC, DAC, Timers, PWM, USB, Ethernet, CAN, etc.
  • Communication Protocols : Implement and integrate various communication protocols (e.g., TCP/IP, MQTT, BLE, Zigbee, LoRaWAN, CAN, LIN) for device connectivity and data exchange.
  • Debugging & Testing : Utilize debugging tools (JTAG/SWD debuggers, oscilloscopes, logic analyzers, protocol analyzers) to identify and resolve complex software and hardware issues. Develop and execute unit tests, integration tests, and system tests.
  • Performance Optimization : Analyze and optimize code for memory footprint, CPU utilization, power consumption, and real-time performance constraints.
  • Documentation : Create and maintain clear, concise, and comprehensive technical documentation, including design specifications, test plans, and user manuals.
  • Version Control : Manage source code effectively using version control systems like Git, including branching, merging, and code reviews.
  • Troubleshooting & Support : Provide technical support and troubleshooting for deployed embedded systems, identifying root causes and implementing corrective actions.
  • Collaboration : Work collaboratively within an Agile/Scrum team environment, participating in sprint planning, daily stand-ups, and :
  • Education : Bachelor's or Master's degree in Electronics Engineering, Computer Science, Electrical Engineering, or a related field.
  • Experience : 4-5 years of hands-on experience in embedded software development.
  • Programming Languages : Strong proficiency in C and C++ for embedded systems.
  • Microcontrollers/Microprocessors : Solid experience with at least one major family of microcontrollers/microprocessors (e.g., ARM Cortex-M, ESP32, STM32, Renesas, NXP).
  • RTOS : Proven experience working with and configuring Real-Time Operating Systems (RTOS) like FreeRTOS, Zephyr, or similar.
  • Hardware Interfacing : In-depth understanding of hardware-software interfaces, schematics, and datasheets.
  • Communication Protocols : Experience implementing and debugging various communication protocols (e.g., I2C, SPI, UART, CAN, USB, Ethernet, BLE).
  • Debugging Skills : Proficient in using hardware debuggers (JTAG/SWD), oscilloscopes, logic analyzers, and other lab equipment.
  • Version Control : Experience with Git or other modern version control systems.
  • Problem-Solving : Excellent analytical and problem-solving skills with a keen attention to detail.
  • Communication : Strong verbal and written communication skills to effectively collaborate with cross-functional Skills :
  • Experience with embedded Linux development.
  • Knowledge of scripting languages (e.g., Python) for automation and testing.
  • Familiarity with industry-specific standards (e.g., MISRA C/C++, functional safety standards like ISO 26262 for Automotive, IEC 62304 for Medical).
  • Experience with continuous integration/continuous deployment (CI/CD) for embedded systems.
  • Familiarity with various development environments and toolchains (e.g., Keil, IAR Embedded Workbench, PlatformIO, VS We Offer :
  • Opportunity to work on cutting-edge technologies and impactful projects.
  • A collaborative, innovative, and supportive work environment.
  • Continuous learning and professional development opportunities.
  • Competitive salary and benefits package.
  • A chance to be part of a growing team that values creativity and ownership
(ref:hirist.tech)

Mock Interview

Practice Video Interview with JobPe AI

Start Python Interview
cta

Start Your Job Search Today

Browse through a variety of job opportunities tailored to your skills and preferences. Filter by location, experience, salary, and more to find your perfect fit.

Job Application AI Bot

Job Application AI Bot

Apply to 20+ Portals in one click

Download Now

Download the Mobile App

Instantly access job listings, apply easily, and track applications.

coding practice

Enhance Your Python Skills

Practice Python coding challenges to boost your skills

Start Practicing Python Now

RecommendedJobs for You