Quick overview
Job description
Position Summary
We are seeking an experienced Embedded Software Engineer to develop application-layer software (user space) on Linux-based microprocessor systems. The primary focus will be implementing and maintaining applications for battery monitoring systems based on industrial communication protocols such as Modbus, CAN, and Ethernet-based industrial stacks.
Responsibilities:
- Design and develop user-space applications on Embedded Linux platforms for Energy storage system.
- New Board bring-up and hardware validation.
- Implement and maintain industrial communication protocols like Modbus RTU/TCP, CAN (user-space via Socket CAN), Ethernet-based protocols.
- Develop multithreaded, event driven applications.
- Debug communication issues using Wireshark, CAN analyzers, and protocol.
- Write clean and Maintainable code conforming to company standard.
- Debug communication issues using Wireshark, CAN analyzers, and protocol tools.
- Collaborate with cross-functional teams to develop, debug, and test product features.
- Provide comprehensive design, unit test, and integration test documentation artifacts.
- Drive continuous improvement in firmware development processes and methodologies.
- Participate in code reviews and technical discussions.
Qualification Requirements
Minimum Job Qualifications
- Strong experience with Embedded Linux (User Space Development).
- Strong in C (mandatory)
- Hands-on experience with ARM Cortex-A / MPU-based systems.
- Multi-threading, IPC, shared memory.
- Socket programming (TCP/UDP)
- Good understanding of Industrial Communication protocols like Modbus, CAN.
Preferred Qualifications
- Experience with software design principles, including functional design of software components and libraries, object-oriented concepts, and Agile methods.
- General understanding of computer security vulnerabilities and protection techniques.
- Well-developed cultural and communications skills.
- Knowledge of source code version control tools like Git.
- Experience working with and building Yocto for embedded devices.
- Experience with TI microprocessors.
Education and Certifications
- Bachelor’s degree in Computer Science, Engineering, or equivalent work experience. Advanced degree preferred.
Physical Requirements
- No special physical requirements.
Environmental Demands
- No special environmental demands.
Travel Time Required
- Occasional travel may be required.
Similar jobs
- AD
Team Member - Engineering
Adani · Ahmedabad · Hybrid 🇮🇳
Stakeholder ManagementComplianceContinuous Improvement+3EngineeringSalary not listed - AD
Senior Engineer
Adani · Mundra · Hybrid 🇮🇳
ComplianceContinuous ImprovementEngineeringSalary not listed - CH
Lead/Principal Engineer Software IT
Clean Harbors · Hyderabad · Hybrid 🇮🇳
OraclePL/SQLSQL+3TechnologySalary not listed - CH
Engineer Software IT Sr
Clean Harbors · Hyderabad · Hybrid 🇮🇳
SQLT-SQLETL+1TechnologySalary not listed - CH
Senior Software Engineer II - .Net
Clean Harbors · Hyderabad · Hybrid 🇮🇳
MicroservicesSQLGit+17TechnologySalary not listed - CH
Software Engineer - UKG
Clean Harbors · Hyderabad · Hybrid 🇮🇳
PL/SQLSQLScrum+8TechnologySalary not listed - CH
Engineer Software IT
Clean Harbors · Hyderabad · Hybrid 🇮🇳
OracleERPCustomer Success+4TechnologySalary not listed - CH
Sr Engineer Software IT
Clean Harbors · Hyderabad · Hybrid 🇮🇳
OracleERPCustomer Success+4TechnologySalary not listed - CH
Engineer Software IT
Clean Harbors · Bengaluru · Hybrid 🇮🇳
OracleERPPostman+2TechnologySalary not listed - CH
Senior Software Engineer II
Clean Harbors · Hyderabad · Hybrid 🇮🇳
MongoDBMySQLGit+14TechnologySalary not listed - CH
Senior Software Engineer - SSE II
Clean Harbors · Hyderabad · Hybrid 🇮🇳
SQLMicrosoft OfficeGit+12TechnologySalary not listed - CS
Channel Application Developer| Karaikal
CSB · Karaikal · Hybrid 🇮🇳
SourcingComplianceTechnologySalary not listed
