Remote Linux Kernel Development Engineer

Logo of CIQ

CIQ

📍Remote - Worldwide

Job highlights

Summary

Join CIQ as a Linux Kernel Development Engineer to produce and maintain the Linux Kernel for Rocky Linux, working closely with the Development team to define software requirements and lead on operational and technical projects.

Requirements

  • Passion for Linux and open source software
  • Proficiency in C programming
  • Deep understanding of low-level system programming concepts
  • Strong debugging and troubleshooting skills to identify and resolve complex kernel-level issues
  • In-depth knowledge of Linux kernel internals, file systems, device drivers, and kernel module development
  • Familiarity with hardware platforms and architectures, including x86 and ARM, and their interactions with the Linux kernel
  • Strong problem solving and analytical skills to propose innovative solutions to technical challenges
  • Excellent communication and collaboration skills to work effectively in a team-oriented environment
  • Self-motivated and able to work independently, manage priorities, and meet project deadlines
  • Bachelor’s or Master’s degree in Computer Science, Engineering, or equivalent experience
  • Minimum of 5 years experience in Linux kernel development, with a strong focus on system-level programming and device driver development
  • Extensive experience in designing and developing Linux kernel components, including process management, memory management, and inter-process communication
  • Experience with version control systems, preferably Git, and collaborative development workflows

Responsibilities

  • Lead the design, development, and maintenance of Linux kernel components for our products/services at CIQ
  • Collaborate with cross-functional teams to gather requirements and translate them into efficient and scalable kernel designs
  • Write high-quality, modular, and well-documented code in C and other relevant languages, adhering to coding standards and best practices
  • Optimize kernel code and device drivers to improve performance, stability, and resource utilization
  • Debug and resolve complex kernel-level issues, including memory management, process scheduling, and inter-process communication
  • Collaborate with hardware engineers and other stakeholders to ensure seamless integration of kernel components with hardware platforms
  • Stay updated with the latest advancements in the Linux kernel community and relevant technologies, evaluating their potential impact on our products and services
  • Review code submissions from team members and provide constructive feedback to maintain code quality and consistency
  • Conduct performance analysis and optimization of kernel components to meet specified performance targets
  • Document design decisions, APIs, and processes for future reference and knowledge sharing
  • Provide guidance and mentorship to junior developers, fostering their growth and development

Job description

Description

CIQ OVERVIEW

CIQ believes in helping people do great things by providing world-class software infrastructure for others to build value on top of. This includes working closely with open-source communities, securing the software infrastructure, and driving performance throughout the entire stack. We love our customers who are doing things like running a traditional IT infrastructure to building the future of genAI and leading major research and scientific initiatives like curing cancer.

We are looking for individuals who strive to work on teams empowered by ownership, diversity of thought, pushing the limits of what is possible and want to help others.

POSITION SUMMARY

As Linux Kernel Development Engineer, you will produce and maintain the Linux Kernel for Rocky Linux. You need to be familiar with various aspects of kernel support including real-time, embedded, and virtualization. You will work with the Development team to define software requirements and take the lead on operational and technical projects. Additional responsibilities include but are not limited to:

  • Leading the design, development, and maintenance of Linux kernel components for our products/services at CIQ.

  • Collaborating with cross-functional teams to gather requirements and translating them into efficient and scalable kernel designs.

  • Writing high-quality, modular, and well-documented code in C and other relevant languages, adhering to coding standards and best practices.

  • Optimizing kernel code and device drivers to improve performance, stability, and resource utilization.

  • Debugging and resolving complex kernel-level issues, including memory management, process scheduling, and inter-process communication.

  • Collaborating with hardware engineers and other stakeholders to ensure seamless integration of kernel components with hardware platforms.

  • Staying updated with the latest advancements in the Linux kernel community and relevant technologies, evaluating their potential impact on our products and services.

  • Reviewing code submissions from team members and providing constructive feedback to maintain code quality and consistency.

  • Conducting performance analysis and optimization of kernel components to meet specified performance targets.

  • Documenting design decisions, APIs, and processes for future reference and knowledge sharing.

  • Providing guidance and mentorship to junior developers, fostering their growth and development.

Requirements

NEEDED TO SUCCEED

Successful candidates will have a passion for Linux and open source software, with a strong commitment to delivering high-quality, reliable products. Proficiency in C programming and a deep understanding of low-level system programming concepts. Strong debugging and troubleshooting skills to identify and resolve complex kernel-level issues. In-depth knowledge of Linux kernel internals, file systems, device drivers, and kernel module development. Familiarity with hardware platforms and architectures, including x86 and ARM, and their interactions with the Linux kernel. Strong problem solving and analytical skills with the ability to propose innovative solutions to technical challenges. Excellent communication and collaboration skills to work effectively in a team-oriented environment. Self motivated and able to work independently, manage priorities, and meet project deadlines.

EDUCATION AND EXPERIENCE

Bachelor’s or Master’s degree in Computer Science, Engineering, or equivalent Experience. Minimum of 5 years experience in Linux kernel development, with a strong focus on system-level programming and device driver development. Extensive experience in designing and developing Linux kernel components, including process management, memory management, and inter-process communication. Experience with version control systems, preferably Git, and collaborative development workflows.

Share this job:

Disclaimer: Please check that the job is real before you apply. Applying might take you to another website that we don't own. Please be aware that any actions taken during the application process are solely your responsibility, and we bear no responsibility for any outcomes.
Please let CIQ know you found this job on JobsCollider. Thanks! 🙏