Senior Software Engineer – Storage Systems

Verkada · Enterprise · Bayoffice · Cameras

Verkada is seeking a Senior Software Engineer for their Storage team to own the distributed infrastructure responsible for storing video data on cameras. This role involves designing and optimizing systems for reliability, endurance, and security of local storage media, managing petabytes of video data across millions of cameras. Responsibilities include ensuring NAND storage integrity, debugging file systems and drivers, and potentially improving cloud backup systems. The role requires strong C programming skills and familiarity with low-level systems topics.

What you'd actually do

  1. Own the camera storage stack that enables storage of big AI models and large video files, while simultaneously maximizing storage utilization and reliability.
  2. Collaborate with the Hardware team and external storage vendors to define and validate the next generation of flash storage systems.
  3. Innovate by designing new storage systems that maximize company’s goals across multiple dimensions like hardware cost, endurance, throughput.
  4. Own storage reliability metrics, using data to drive system improvements.
  5. Strategize with the Streaming team to develop innovative solutions for superior video retention.

Skills

Required

  • C
  • low-level systems topics
  • file system layout
  • memory management
  • Yocto build system
  • device drivers
  • kernel debugging
  • eBPF
  • MMC protocol

Nice to have

  • C++
  • Go
  • backend development experience
  • distributed systems
  • containerization
  • microservices
  • AWS
  • Docker
  • Kubernetes

What the JD emphasized

  • big AI models
  • large video files
  • petabytes of high-quality video
  • unmatched reliability, endurance, and security
  • storing petabytes of high-quality video
  • every byte is stored reliably and accessible instantly