Key Responsibilities:
Embedded Systems Development: Design, develop, and maintain Linux embedded software and firmware for various platforms. Work on system-level programming and integration tasks.
Kernel Driver Development: Develop, debug, and optimize kernel drivers to ensure high-performance and reliable operation of embedded systems.
Open Source Collaboration: Engage with the kernel open source community, contribute to projects, and stay updated with the latest developments and best practices in the open-source ecosystem.
Version Control: Utilize GIT for version control, including branching, merging, and managing repositories effectively.
Team Collaboration: Work closely with other engineers, designers, and stakeholders to deliver high-quality software solutions. Participate in code reviews, design discussions, and team meetings.
Independent Work: Demonstrate the ability to work independently on complex projects, manage tasks efficiently, and solve problems with minimal supervision.
Qualifications
Experience: Minimum of 7 years of experience in embedded systems development.
Programming Skills: Proficiency in C/C++ programming languages.
Kernel Knowledge: Extensive experience with kernel driver development and a solid understanding of kernel internals.
Open Source Involvement: Proven experience working with the open-source kernel community.
Storage: experience in storage solutions and technologies (advantage).
Version Control: Strong knowledge of GIT and experience in managing source code with version control systems.
Collaboration and Communication: Ability to work effectively in a team environment as well as independently. Excellent communication skills to interact with cross-functional teams and contribute to discussions and documentation.
Desired Skills:
Problem-Solving: Strong analytical and troubleshooting skills to resolve issues and optimize performance.
Adaptability: Ability to quickly learn new technologies and adapt to evolving project requirements.
Attention to Detail: High attention to detail with a focus on delivering robust and reliable software solutions.
Education:
Bachelors degree in Computer Science, Electrical Engineering, or a related field. Advanced degrees or certifications are a plus.