Software Engineer - Camera Capture Systems (C/C++ and Rust )

Los Angeles, CA /
Software Engineering /
Full-time
Second Spectrum is building the next way of seeing sports. We deliver unique and innovative solutions through unparalleled capabilities in machine understanding of sports. 
 
• We produce the most accurate tracking data with the fastest high-quality output by leveraging the most automated and extensible solution in the market.  We are the official tracking and analytics partner of the NBA, MLS and EPL. We also work with other top basketball and soccer (football) leagues and clubs around the world.
• We generate meaningful and accurate data in the language of sport.  Nearly every team in the NBA and ESPN uses our analytics and video platforms.
• We create cutting edge software and communication tools so we can deliver personalized and interactive technologies for leagues, managers, players, media and fans that save people time and get them what they want in ways that previously did not exist.   
• We launched an innovative product, Clippers CourtVision, which won an NBA Innovation Award and Best in Technology at the 2019 Sports Business Awards, and have subsequently been used by ESPN, Turner Sports, FOX, NBATV, and NBA League Pass among others.
 
We are constantly innovating. We believe that technology will revolutionize the way that sports are played, coached, and experienced, and that the work to make this happen has just begun. 
 
The Role: Software Engineer (C/C++ and Rust) - Camera Capture Systems
 
This role will contribute to the design and development of the next revision of our video camera capture systems for our video capture systems for live sporting events, and improve existing designs to deliver data (video and metadata) from venues in a wide variety of environments. Second Spectrum expects and empowers engineers to stretch their skill sets, expand their scope and capabilities, and tackle ever-increasing ambitions around speed, accuracy, and cost of these systems.
 
Our Technology Stack:
●       Programming languages: C/C++ and Rust
●       Networking: routing, High MTU/Jumbo Frames, TCP, UDP, IGMP/multicast, fiber, ethernet, VPN
●       Monitoring: Prometheus, Grafana
●       Revision Control: Git with GitLab
●       Cloud services: AWS EC2 and S3
●       Productivity: Slack, Notion, Google Apps
 
What You Will Do:
●       Find solutions to hardware and software challenges around low-latency and high-reliability video delivery
●       Design and deploy solutions involving hardware, networking and software; develop embedded and/or real-time systems
●       Implement and provide best-practices for maintainable software development, including deployment process, documentation, and adherence to and improvement of coding standards
●       Support and monitor live systems, including on-call rotation for video capture during professional sports seasons
●       Site reliability engineering: metrics, monitoring, incident response, post-mortem analysis
●       Share your observations, learnings and questions with your colleagues
 
What You Have:
●       BSc or MSc in computer science or a related degree, with strong low-level programming
●       3+ years of direct experience in systems software engineering: modern software development practices and tools, concurrent and distributed programming, operating systems, computer networks, database systems
●       Experience with real-time systems
●       Fully proficient in C/C++ and at least two other languages - Python, JavaScript, GO, Ruby, Swift, and Rust (or, if not currently using Rust, an appetite to learn and program in Rust)
●       Familiar with concurrency primitives: threads, locking and mutexes
●       Experience building metrics and monitoring systems, including alerts and escalation practices
●       Able to successfully work independently and as part of a team.
●       Effective ability to straightforwardly communicate learnings and mentor colleagues
 
What Sets You Apart:
●       Expertise in Rust
●       Eager to discover and experiment with languages and technologies outside of your existing areas of expertise. 
●      Proficient with high performance & GPU computing.
●       Familiar with cloud computing.
●       Experienced with Linux systems: internals, kernel modules, kernel tuning, boot loaders.
●       Experienced with embedded systems (note that this position does not involve SOC or FPGAs).
●       Interested in and experienced with camera/video system technologies (PTP2, RTMP, RTSP, SDI, GigE Vision, CoaXPress, GenLock, IRIG-B), video compression (h.264, h.265, VP8, VP9).
 
Our Work Environment and What You Will Benefit From:
●       Flat hierarchy and collaborative management by highly-qualified technical leads
●       Cutting-edge products to work on for major professional sports leagues and teams
●       Team-oriented, start-up mindset, innovative and dynamic environment, which encourages growth and provides opportunities to make an impact
 

As a general approach, we interview for aptitude over specific technologies or languages. Please be prepared to speak to anything listed on your resume or in your portfolio.