Job Description
This role for Engineer to assist routine embedded software development and design responsibilities of the Engineering & Technology Center to support our controls and software team.
The selected candidates will undergo comprehensive training covering embedded C/C++ programming, device drivers, Linux OS basics, hardware schematics, and design fundamentals — for a duration of minimum 3 months at the Engineering & Technology Center, Bangalore. Upon successful completion of the training program and assessment, individuals will be assigned to support specific product development projects within the embedded systems team. The training includes hands-on coding assignments, design reviews, and real-world problem solving to prepare individuals for mainstream embedded software development work.
Responsibilities Post Completion of Training Period
- Design, develop, code, test, and debug embedded software on microcontroller platforms from requirements to production.
- Participate in software design and system architecture development for controller platforms.
- Develop flowcharts, layouts, and technical documentation to identify requirements and design solutions.
- Produce well-commented, well-structured, and maintainable code following Ingersoll Rand standards.
- Participate in code reviews, design reviews, and software process improvement activities.
- Develop and apply device drivers and work with Linux OS and embedded C toolchains.
- Use Python scripting for build automation, testing support, and tooling development.
- Leverage AI tools (AI coding assistants, AI-assisted code review, AI-powered documentation) to improve productivity.
- Interface with cross-functional and global teams to understand requirements and review designs.
- Provide post-production support and troubleshooting.
Competencies
- Strong understanding of C/C++ and embedded programming fundamentals
- Knowledge of microcontrollers (8-bit, 16-bit, 32-bit) and common peripherals (ADC, SPI)
- Experience with device drivers, Linux OS, and embedded C toolchains
- Knowledge of hardware schematics and PCB design basics
- Ability to use debugging tools such as CRO, multimeters, and logic analyzers
- Strong software design and engineering discipline
- Excellent communication skills and team collaboration
- Proactive, self-motivated, and adaptable to changing requirements
- Python scripting for automation and development support
- Familiarity with AI tools and prompt engineering for coding support
Qualifications
- Bachelor’s degree in Electronics, Electrical Engineering, Computer Science, or related discipline
- Minimum of 1 to 3 years of experience
- Basic programming skills (Python or C/C++) or willingness to learn quickly
- Knowledge of embedded systems and microcontroller fundamentals
- Familiarity with software testing methodologies and QA practices
- Understanding of responsible AI techniques, including prompt engineering and AI tool usage






