Recruitment Room Team

Senior C++ Video Software Developer

Johannesburg – Gauteng
3 weeks ago
Application ends: March 5, 2025
Deadline date:
March 5, 2025

Job Description


ENVIRONMENT:
Our client is a company leading the transformation of security solutions for individuals, homes, businesses, and public spaces. Their mission is to create safe environments where people can feel secure and at ease. They utilize cutting-edge technology to protect communities and enterprises while ensuring privacy and respecting individual rights. Currently, they are seeking a Senior C++ Video Software Developer with a Bachelor’s degree in Computer Science, Software Engineering, or a related field, and over 5 years of experience working on complex, enterprise-level software projects to join their team.
 
REQUIREMENTS:
Fundamentals
  • Bachelor’s degree in Computer Science, Software Engineering, or a related field.
  • 5 + years’ experience as a Software Developer in complex, enterprise-level projects.
  • Strong expertise in Azure Cloud services, Azure Functions, and Azure DevOps.
  • Familiarity with microservices architecture and containerization (e.g., Docker, Kubernetes).
  • Relevant certifications in Azure are a plus.
 
Programming Languages
  • Advanced proficiency in C++ (C++11/14/17/20)
  • Familiarity with scripting languages like Python or Bash for automation
 
Video and Multimedia Libraries
  • FFmpeg: For video processing, encoding, and decoding
  • GStreamer: For multimedia pipeline creation and management
  • OpenCV: For computer vision and video manipulation
 
Streaming Protocols and Networking
  • RTSP, WebRTC, HLS, MPEG-DASH: Real-time and adaptive streaming
  • Sockets Programming: For low-level networking tasks
  • Boost.Asio: For asynchronous I/O in C++
  • Familiarity with HTTP/2 and QUIC protocols
 
Resiliency and Monitoring Tools
  • Prometheus: For monitoring and alerting
  • ELK Stack (Elasticsearch, Logstash, Kibana): For log analysis and visualization
 
Cloud and Distributed Systems
  • Docker or Kubernetes: For containerized deployments
 
Operating System Knowledge
  • Proficiency with Linux (Ubuntu), particularly for server-side applications
 
 ATTRIBUTES:
  • Excellent problem-solving and communication skills. 
  • Strong leadership and teamwork abilities.