Linux Systems Programmer – Edge Storage (UMD / IPC) (Gandhinagar)

Linux Systems Programmer – Edge Storage (UMD / IPC) (Gandhinagar)

10 Sep
|
ATRI Solutions
|
Gandhinagar

10 Sep

ATRI Solutions

Gandhinagar

Linux Systems Programmer – Edge Storage (UMD / IPC)

Location: Pune, MH or Gandhinagar, GJ

Experience: 8–10 years

Employment Type: Full-time

Reports To: Linux Platform Architect

About the Role

ATRI Solutions is hiring a Linux Systems Programmer to build and extend the Mode Daemon (UMD) — a FUSE-based C daemon running on Ubuntu Server that transparently mediates file access between Nx Witness VMS (and future Hanwha / Digital Watchdog integrations) and cloud-tiered storage. You will work at the boundary between the kernel module and userspace, implementing high-throughput, low-latency data paths, shared-memory coordination, and reliable SQLite-backed state tracking.

Key Responsibilities

- Design and implement multi-threaded C components using pthreads (mutexes, condition variables, thread pools) for the UMD daemon
- Build and maintain FUSE filesystem hooks that intercept file operations for video files under active recording and archival
- Implement and tune ring-buffer / lock-free producer-consumer pipelines shared between the kernel module and userspace daemon via shared memory
- Develop IPC mechanisms (shared memory segments, message queues, Unix domain sockets, eventfd/epoll) for cross-process coordination among UMD, edge agent, and CLI/admin tooling
- Own SQLite (WAL-mode) schema and access patterns for tracking file lifecycle state, ensuring correctness under concurrent multi-process access
- Integrate HTTP/REST clients (libcurl or equivalent)



for upload/download against S3-compatible object storage (Wasabi, AWS S3)
- Diagnose and resolve production issues using strace, gdb, valgrind, and perf; write regression tests only after live behavior is confirmed
- Collaborate with the kernel driver team and .NET edge-agent team on stable, versioned interfaces across process boundaries

Mandatory Skills

Must-Have

- Strong C programming with pthreads (mutex/condvar, thread pools) in production Linux daemons
- Hands-on experience with IPC: POSIX/System V shared memory, message queues, Unix domain sockets
- Ring-buffer / lock-free producer-consumer design for high-throughput data pipelines
- FUSE (Filesystem in Userspace) development experience
- SQLite integration in C/C++, including WAL mode and concurrent multi-process access patterns
- HTTP/REST client integration (libcurl or similar) for cloud object-storage APIs
- Proficiency with Linux debugging tools: strace, gdb, valgrind, perf
- Solid understanding of Linux syscalls, file I/O semantics, and Ubuntu Server administration

Nice-to-Have Skills

Positive-to-Have

- Experience coordinating userspace code with a DKMS-packaged kernel module
- C#/.NET familiarity for integrating with a companion edge-agent service
- Domain experience with video/streaming systems, VMS, or NVR/DVR platforms
- Experience with epoll/eventfd-based event-driven architectures

📌 Linux Systems Programmer – Edge Storage (UMD / IPC) (Gandhinagar)
🏢 ATRI Solutions
📍 Gandhinagar

Reply to this offer

Impress this employer describing Your skills and abilities, fill out the form below and leave Your personal touch in the presentation letter.

Subscribe to this job alert:

Get the latest job offers by email for: linux systems programmer – edge storage (umd / ipc) (gandhinagar) / gandhinagar