Job Overview
Role: Embedded Software Developer Location: Bangalore, Karnataka, India Experience: 1 to 3 Years of experience Qualification: B.E / B.Tech / B.Sc (Electronics, Electrical, CS, or allied engineering fields) Key Skills: Embedded C/C++, Microcontrollers, Linux OS, Python Scripting
Job Description
Ingersoll Rand, a global leader in industrial solutions, is seeking qualified and highly motivated tech professionals for the position of Embedded Software Developer. This role is based at the prestigious Ingersoll Rand Engineering & Technology Center (IRETC) in Bangalore. Successful candidates will undergo an intensive, fully-paid initial training program designed to build hands-on expertise in low-level firmware engineering, real-time operating systems, and automated diagnostics.
Roles and Responsibilities
- Firmware Development: Designing, building, writing, and debugging optimized, well-structured firmware solutions on microcontroller platforms from technical specs to deployment.
- System Architecture Mapping: Developing layout diagrams, processing flowcharts, and technical specification documents to map client requirements into engineering blueprints.
- Scripting & Automation: Writing clean and reliable Python scripts to manage build automations, unit-test environments, and developer diagnostic tools.
- Code Standards Maintenance: Consistently writing clean, well-commented, and robust source code that adheres strictly to Ingersoll Rand’s secure engineering principles.
- Team Collaboration: Partnering with cross-functional, global R&D divisions to refine product functionalities, run structured code reviews, and drive system optimization.
Skills and Eligibility Criteria
Educational Background: Bachelor of Engineering (B.E), Bachelor of Technology (B.Tech), or Bachelor of Science (B.Sc) in Electronics, Electrical Engineering, Computer Science, or closely related engineering fields.
Experience: Minimum of 1 to 3 years of hands-on technical or engineering experience in software development.
Mandatory Technical Skills:
- Solid conceptual foundation in C / C++ and embedded system programming basics
- Understanding of microcontroller architectures (8-bit, 16-bit, and 32-bit units)
- Familiarity with standard hardware peripherals such as ADC, SPI, I2C, and GPIO pins
- Functional familiarity with Linux OS kernel concepts
- Driver development basics and embedded compilation toolchains
- Eagerness to work with hardware schematics, PCB layouts, and standard laboratory instruments (CROs, Digital Multimeters, Logic Analyzers) to isolate firmware issues
Competencies:
- Structured programming logic
- Basic hardware-software interaction knowledge
- Openness to utilizing prompt engineering, AI coding assistants, and AI-assisted code reviews to optimize development throughput