Company Name: Hellbender Inc.
Job Title: Linux Kernel Engineer (Device Driver Developer)
Department: Software
Report to: VP of Software
Who we are:
Hellbender Inc. is a Pennsylvania Benefit Corporation who partners with innovators to mature their Artificial Intelligence enabled computing sensors and produce their solutions onshore at prototype to high volumes.
Hellbender is intentionally forming an inclusive work environment and is committed to uplifting the historically marginalized identities including veterans, women, trans and non-white races in our community and industry.
Job Summary:
We are seeking a highly specialized Linux Kernel Engineer to lead the development and integration of device drivers for our next-generation hardware platforms. The primary focus of this role is "hardware enablement"—taking raw silicon and datasheets and transforming them into functional, stable components within the Linux kernel.
The ideal candidate is a low-level expert who is comfortable navigating complex hardware registers, interpreting timing diagrams, and writing efficient, high-performance C code that operates within the constraints of kernel space. You will be responsible for the entire lifecycle of a driver, from initial bring-up to integration into our custom Linux distributions using Yocto or Buildroot.
Essential Duties and Responsibilities:
Driver Development: Design, implement, and maintain Linux device drivers (e.g., I2C, SPI, PCIe, USB, or custom SoC peripherals) within the Linux kernel space.Hardware Bring-up: Lead the initial software bring-up of new hardware components, ensuring that all peripheral interfaces are communicating correctly with the CPU.Datasheet Analysis: Perform deep-dive analysis of hardware datasheets, register maps, and electrical specifications to implement correct register-level logic and timing sequences.Embedded Linux Integration: Integrate newly developed drivers into custom Linux distributions using build systems such as Yocto Project or Buildroot, including the management of Device Tree (DTS) modifications.Kernel Debugging: Use advanced kernel debugging techniques to resolve issues related to interrupts, DMA (Direct Memory Access), concurrency/locking, and memory corruption.Hardware Interfacing: Work closely with hardware engineers to validate electrical signals against software behavior using logic analyzers, oscilloscopes, or protocol analyzers.Required Qualifications:
Low-Level C Mastery: Expert-level proficiency in C, specifically regarding kernel-space constraints (no standard libraries, manual memory management, interrupt context awareness).Linux Kernel Internals: Deep understanding of the Linux kernel subsystem architecture, including Interrupt Service Routines (ISRs), Concurrency/Spinlocks, DMA, and the Linux Device Model.Hardware Protocol Expertise: Strong experience working with low-level communication protocols (e.g., I2C, SPI, UART, PCIe, USB, or Ethernet).Datasheet Fluency: Proven ability to read and interpret complex hardware datasheets, register maps, and timing diagrams to drive software implementation.Embedded Build Systems: Hands-on experience with Yocto Project (BitBake, recipes, layers) or Buildroot for creating custom Linux images.Device Tree Knowledge: Proficiency in writing and maintaining Device Tree Source (DTS) and Device Tree Overlay (DTBO) files.Preferred Qualifications:
Hardware Debugging Tools: Experience using hardware debugging tools such as Logic Analyzers, Oscilloscopes, or JTAG debuggers.Architecture Specifics: Experience with specific processor architectures (e.g., ARM, RISC-V, or x86).Linux Kernel Subsystem Expertise: Previous experience contributing to the upstream Linux kernel or working on specific subsystems (e.g., Industrial I/O (IIO), Network, or Input subsystems).Scripting: Proficiency in Python for automating hardware testing and data parsing.Camera drivers: experience with imaging sensors is also a plus for this job.Benefits:
401(k)5% Safe Harbor Contribution to 401k by HellbenderDental insurance, 100% by Hellbender for employees and their familiesHealth insurance, 100% by Hellbender for employees and their familiesVision insurance, 100% by Hellbender for employees and their familiesFlexible spending account7.5 weeks total Paid time offHellbender Inc. options through our Equity Incentive PlanProfit Sharing (through 401k)Hybrid work environment & flexible work scheduleEducation & Experience:
Bachelor's or Master's degree in Computer Science, Electrical Engineering, or a related technical field.5-7 years of experience specifically in Linux kernel-space development and driver writing.Work Location: UPARC Pittsburgh
Opportunity for advancement:
Hellbender is a growing business and follows a policy that prioritizes internal promotions. As new positions are created new opportunities for advancement will be created as well.
Read LessCompany Name: Hellbender Inc.
Job Title: Linux Application Engineer
Department: Software
Report to: VP of Software
Who we are:
Hellbender Inc. is a Pennsylvania Benefit Corporation who partners with innovators to mature their Artificial Intelligence enabled computing sensors and produce their solutions onshore at prototype to high volumes.
Hellbender is intentionally forming an inclusive work environment and is committed to uplifting the historically marginalized identities including veterans, women, trans and non-white races in our community and industry.
Job Summary:
As a Linux Application Engineer at Hellbender, you will bridge the gap between high-level application software and the underlying Linux operating system. You will be responsible for developing robust applications in C/C++ or Python, maintaining system stability, and performing deep-dive investigations into system-level issues.
The ideal candidate is a systems-thinker who can navigate the Linux ecosystem, troubleshoot complex interactions between hardware and software, and manage the data pipelines used for system observability and logging. While you will not be tasked with writing device drivers from scratch, you must have the expertise to identify driver-level failures and interface effectively with our kernel engineering teams.
Essential Duties and Responsibilities:
Application Development: Design, develop, and maintain high-performance applications and services using C, C++ and Python within a Linux environment.System Troubleshooting: Investigate and diagnose complex issues occurring at the interface between user-space applications and the Linux kernel (e.g., analyzing interrupts, memory leaks, or I/O bottlenecks).Driver Investigation: Identify and document driver-level bugs or regressions; work closely with hardware/kernel teams to provide reproducible test cases and logs for driver remediation.System Configuration: Configure Linux environments, including boot parameters, systemd services, networking stacks, and resource management (cgroups/namespaces).Observability & Logging: Implement, manage, and support robust logging frameworks to ensure high-quality telemetry and data collection from the field/test-bench.Required Qualifications:
C/C++ Proficiency: Strong experience in professional C/C++ development, including memory management, multi-threading, and concurrency primitives.Linux Systems Expertise: Deep understanding of the Linux user-space, including system calls, signals, IPC (Inter-Process Communication), and the Linux filesystem hierarchy.Advanced Debugging Skills: Proficiency with Linux debugging tools.System Configuration: Hands-on experience configuring Linux subsystems (networking, storage, permissions) and managing system initialization (e.g., systemd).Scripting & Automation: Proficiency in Bash or Python for automating system tasks, data processing, and log analysis.Version Control: Experience with Git and modern CI/CD workflowsPreferred Qualifications:
Rust Programming: Familiarity with Rust and its integration within a Linux environment is a significant plus.Embedded Linux Knowledge: Experience with Yocto Project, Buildroot, or custom kernel configuration.Data Pipeline Experience: Experience managing large-scale logging data (e.g., ELK stack, Prometheus, or custom telemetry pipelines).Containerization: Experience with Docker or Podman for application isolation and deployment.ROS 2: Familiarity with the ROS ecosystem is also helpful.Benefits:
401(k)5% Safe Harbor Contribution to 401k by HellbenderDental insurance, 100% by Hellbender for employees and their familiesHealth insurance, 100% by Hellbender for employees and their familiesVision insurance, 100% by Hellbender for employees and their familiesFlexible spending account7.5 weeks total Paid time offHellbender Inc. options through our Equity Incentive PlanProfit Sharing (through 401k)Hybrid work environment & flexible work scheduleEducation & Experience:
Bachelor's or Master's degree in Computer Science, Electrical Engineering, or a related technical field.5-7 years of experience in Linux-based software engineering or systems programming.Work Location: UPARC Pittsburgh
Opportunity for advancement:
Hellbender is a growing business and follows a policy that prioritizes internal promotions. As new positions are created new opportunities for advancement will be created as well.
Read Less