Principal Engineer (PCIe Driver Development)

8 - 13 years

25 - 30 Lacs

Posted:1 week ago| Platform: Naukri logo

Apply

Work Mode

Work from Office

Job Type

Full Time

Job Description

Were looking for a

Principal Software Engineer

with 8+ years of experience to lead the design and implementation of our host-side PCIe drivers. You will architect and build a high-performance, multi-OS driver solution that supports complex hardware topologies. This role requires deep expertise in low-level system software, cross-platform driver development, and a proven ability to lead technical initiatives.
Key Responsibilities
  • Multi-OS PCIe Driver Development:

    You will serve as the technical lead for designing and implementing high-performance

    PCIe kernel-mode drivers

    for both

    Linux

    and

    Windows

    . Your work will be crucial in developing a robust architecture that supports

    multiple endpoints

    across

    multiple cards

    and ensures reliable communication.
  • User-Space Library & PyTorch Runtime Integration:

    Architect and implement a high-performance

    user-space library

    that directly interfaces with the kernel-mode driver. This library will be the primary communication channel for the

    PyTorch runtime

    , providing a seamless and efficient way to send commands and data to the device.
  • PCIe Switch Management:

    Architect and implement the driver logic to support complex hardware topologies involving

    multiple PCIe cards connected over an external PCIe switch

    . Youll be responsible for the sophisticated driver logic required to identify and correctly set up the

    PCI device address

    for each individual PCIe device on each card.
  • Performance & Reliability:

    Take ownership of the drivers performance, ensuring high-bandwidth and low-latency data transfers. Youll be responsible for the stability and reliability of the system, designing robust error handling and recovery mechanisms.
  • Cross-Functional Leadership:

    Collaborate closely with hardware, firmware, and user-space software teams. You will be a key voice in defining system-wide architectural requirements and ensuring a cohesive, end-to-end solution.
  • Mentorship:

    Guide and mentor other engineers, providing technical direction and fostering a culture of excellence in low-level software development.
Required Qualifications
  • Experience:

    7+ years of hands-on experience in low-level system software development.
  • Kernel-Mode Expertise:

    Deep, hands-on experience designing and developing

    kernel-mode drivers

    for both

    Linux

    and

    Windows

    .
    • Linux:

      In-depth knowledge of the Linux kernel driver model and debugging tools.
    • Windows:

      Extensive experience with the Windows Driver Kit (

      WDK

      ) and the

      WDM/KMDF

      driver models.
  • PCIe Architecture:

    Expert-level understanding of the

    PCIe specification

    , including complex topologies involving

    switches

    , bus numbering, and device address management.
  • Problem-Solving:

    Exceptional debugging skills and a proven track record of solving the most challenging system-level problems.
  • Leadership:

    Demonstrated ability to lead technical projects and mentor engineers.
  • Education:

    Bachelors or Masters degree in Computer Science, Electrical Engineering, or a related field.Qualifications
    • Experience:

      8+ years of hands-on experience in low-level system software development.
    • Kernel-Mode Expertise:

      Deep, hands-on experience designing and developing

      kernel-mode drivers

      for both

      Linux

      and

      Windows

      .
      • Linux:

        In-depth knowledge of the Linux kernel driver model and debugging tools.
      • Windows:

        Extensive experience with the Windows Driver Kit (

        WDK

        ) and the

        WDM/KMDF

        driver models.
    • PCIe Architecture:

      Expert-level understanding of the

      PCIe specification

      , including complex topologies involving

      switches

      , bus numbering, and device address management.
    • Problem-Solving:

      Exceptional debugging skills and a proven track record of solving the most challenging system-level problems.
    • Leadership:

      Demonstrated ability to lead technical projects and mentor engineers.
    • Education:

      Bachelors or Masters degree in Computer Science, Electrical Engineering, or a related field.

Mock Interview

Practice Video Interview with JobPe AI

Start Job-Specific Interview
cta

Start Your Job Search Today

Browse through a variety of job opportunities tailored to your skills and preferences. Filter by location, experience, salary, and more to find your perfect fit.

Job Application AI Bot

Job Application AI Bot

Apply to 20+ Portals in one click

Download Now

Download the Mobile App

Instantly access job listings, apply easily, and track applications.

coding practice

Enhance Your Skills

Practice coding challenges to boost your skills

Start Practicing Now
Western Digital logo
Western Digital

Computer Hardware Manufacturing

San Jose CA

RecommendedJobs for You