Software Architect - Video Streaming

About Us

SSIMWAVE™ is defining the future of video delivery by beginning with the end-viewer in mind. SSIMWAVE™ provides the most accurate measure of how humans perceive video. By modeling and measuring viewer experience at every stage of the digital video distribution system, broadcasters, streamers, and content creators can deliver the ultimate viewing experience™ to consumers on any screen. A company at the forefront of Viewer Intelligence™ (VI™), SSIMWAVE™ is built on an Engineering Emmy® Award-winning algorithm and the most cited work in academia (36,488 citations).

Our customers include various major players in the media and entertainment industry and our state-of-the-art products provide the most optimal way to measure, control, and optimize live and file-based video.

About You

You want to work for a start-up company that thinks big and dreams even bigger. You are driven, view work as more than just a job, and are never satisfied with a project left half-done. You possess a positive attitude, diligence and a passion for innovation. You are motivated to make an impact at your workplace and you thrive on tackling challenging and rewarding problems.

Role Responsibilities

  • Perform detailed systems analysis, design, and implementation of a scalable, distributed, real-time video processing software product
  • Work on a wide range of video players
  • Design and build cross-platform components using the latest web technologies
  • Work in a fast-paced start-up environment with an opportunity to lead a team of software developers and contribute to product design
  • Have the opportunity to enjoy the sense of knowing that every single thing you do makes a difference globally

Requirements

  • 5+ inclusive years of software development experience in JavaScript and C/C++ or Java using object-oriented design and implementation
  • Experience with web video (HTML5 and/or Flash)
  • 5+ years experience in designing highly scalable web architectures and distributed systems for real-time data processing applications
  • Have a deep understanding of video players and streaming protocols such as DASH, HLS and/or other streaming technologies.
  • Strong understanding of basic networking and protocols such as HTTP, TCP/IP, UDP, DNS.
  • Understanding of cross-browser differences and JS performance tradeoffs.
  • Understanding of SQL and databases design/architecture.
  • Extensive experience in standard software development methodologies and network programming
  • Highly experienced in multi-threaded and asynchronous environments
  • Experienced in a Unix/Linux environment (CentOS preferred)

Preferred Qualifications

  • Experience in real-time data processing and visualization for the web
  • Exposure to video processing algorithms and libraries such as FFmpeg and LAV
  • Knowledge of video encoding, Ad networks, and content management platforms.
  • Familiar with Directshow filters and Qt framework
  • Involvement of database development such as stored procedures, functions
  • Open community participation such as StackExchange, GitHub