Description

Responsibilities of the Candidate:

  • System Services Development: Architect, develop, package (DEB/APT), deploy, and maintain Linux system services and daemons that interface directly with our EEG hardware.
  • Device Integration: Design and implement kernel modules, user-space drivers, and interfaces that enable high-throughput, low-latency data acquisition from EEG sensors.
  • Real-Time Data Pipelines: Build and optimize high-frequency data capture, buffering, and streaming pipelines to support real-time signal processing.
  • Tooling & Automation: Develop developer tools, test harnesses, and CI/CD pipelines tailored for embedded Linux devices.
  • System Architecture: Collaborate with firmware, signal-processing, and frontend teams to define scalable architectures that meet stringent performance and reliability targets.
  • Agile Execution: Participate in sprint planning, code reviews, pair programming, and retrospectives, continuously improving our agile processes.

Requirements:

  • Hands-On Linux Expertise: Deep understanding of Linux OS internals (kernel subsystems, module programming, system services, packaging DEB-based applications).
  • C++ Proficiency: 3–4 years of professional experience in modern C++ (11/14/17), including STL, concurrency, memory management, and performance tuning.
  • Computer Architecture: Strong grasp of CPU architecture, caching, memory hierarchy, and their impact on real-time performance.
  • Real-Time Systems: Proven experience building or optimizing hard/soft real-time or near-real-time systems; knowledge of RT patches or real-time scheduling a plus.
  • Signal Processing Foundations: Solid understanding of digital signal processing techniques, filter design, sampling theory, and noise reduction.
  • Software Fundamentals: Expertise in data structures, algorithms, multithreading, interprocess communication, and design patterns.
  • Agile Practices: Familiarity with Scrum/Kanban, user stories, continuous integration, and test-driven development.

Location