- Design, develop, and implement application software for embedded Linux systems for our products and systems.
- Collaborate with cross-functional teams to define, design, and implement new software features.
- Conduct performance analysis of the embedded systems.
- Review design and code and provide constructive feedback to team members.
- Integrate software components
- Identify and integrate third-party software components as needed
Debugging and Testing:
- Debug and resolve software defects and issues.
- Conduct performance analysis of the Software systems.
- Review code and design and provide constructive feedback to team members.
- Conduct static analysis, code coverage analysis, and other verification techniques to ensure high-quality software.
Maintenance:Maintain and improve existing Linux Application software solutions.
Requirements
- B.E/ B.Tech/M.Sc. in Computer Science/ Electronics or other relevant with technical experience is required.
- 10 to 15 years of experience in Linux Application software development in C/C++
- Strong understanding of Linux operating systems (Yocto Linux is a preferred), including kernel and driver development
- Proficiency in C/C++ and scripting languages like Python or Bash.
- Demonstrates the ability to quickly comprehend and analyze existing code, efficiently identify and debug software issues, and promptly resolve design challenges in the current product
- Familiarity with development tools such as GCC, GDB, and build systems like Make or CMake.
- Good understanding of embedded Linux Software systems, software architectures, and design principles.
- Experience with software development tools, such as IDEs, debuggers, and version control systems (Bitbucket)
- Ability to understand and analyze the board schematics as needed
- Has good verbal and written communication skills.