Job Location: Chennai
JOB DUTIES: The key role of this engineering position is to move from learning and assisting others to fully contributing. At this level, Engineers begin partnering with and providing technical guidance within and between units and other teams. The Team member should be able to fully contribute as an independent developer and can guide the Team members in the execution of the Analytics projects .
Requires a Bachelors or Masters degree in an accredited Engineering, Computer Science, Electronics curriculum plus 4-6 years experience as Embedded Sw Developer.
- Bachelor’s degree with 2-4 years of experience and with expert fluency in C++ necessary.
- Minimum 2 Years Working knowledge in embedded C++ with usage of OOPS(Object Oriented Programming) necessary
- Minimum 2 Years Working knowledge in linux platforms necessary
- Minimum 1 Year Working knowledge in Python necessary
- Minimum 1 Year Working knowledge in web development (HTML – JS- CGI -NODEjs) necessary
- Experienced in development of applications using Automotive Protocols (CAN/TCP etc) for embedded devices and with systems utilizing commercial linux solutions necessary.
- Ability to take ownership and accountability.
- Good technical communication skills.
- Problem solving skills in day to day activities.
- Quick Ability to Learn and share with the team.
- Experience with Matlab/Python (Analytical data handling for non-image based Machine learning Algorithms).
- Wireless technology/protocol experience helpful.
- Experienced in Agile Development process.
- Experienced in embedded development troubleshooting techniques for Linux such as GDB, Valgrind, process and memory debugging.
- Experienced in unit test frameworks such google unit test framework.
- Perform as an independent team player responsible for designing, developing, configuring, and testing software for embedded systems in agile environment.
- Provide technical analysis and debugging of embedded software development.
- Develop code using Embedded C++ with usage of OOPS(Object Oriented Programming), design patterns , STL libraries , POSIX Libraries
- Developing code using Python with usage of OOPS(Object Oriented Programming) , sitepackages like XML, JSON, HTML
- Development of embedded development troubleshooting techniques for Linux such as GDB, Valgrind, process and memory debugging.
- Development of Devops tools like jenkins and docker.
- Development of unit test frameworks such google unit test framework.
- Implementing best practices for version control and configuration management.
Incumbents have exhibited ability to work on increasingly more complex assignments, either through on-the-job assignments or through pursuit of the advanced degree. Experience working with a different unit or working with different products, processes, or systems is desirable. Must have ability to communicate effectively with team members and others in the work group, as well employees in other units, customers, and suppliers.
Relocation is available for this position.
Caterpillar is an Equal Opportunity Employer (EEO).
Not ready to apply? Submit your information to our Talent Network here .