Back to jobsnetworkoptix
Software Development Engineer, C++
Multiple locations hybrid full time mid Apr 7, 2026
About this role
Network Optix (Nx) is a global powerhouse in video software development, driven by a mission to empower the creation of intelligent video-based solutions and products capable of converting video into actionable data. Over a decade in the making, the Network Optix Enterprise Video Operating System helps innovative organizations rapidly and affordably build world-class, custom-tailored, enterprise-scale video products and solutions.
Nx is headquartered in Walnut Creek, California, with additional locations in Burbank, California, Portland, Oregon, Belgrade, Serbia; Hague, Netherland; Taipei, Taiwan, and regional teams distributed across the globe. Recognized on the Inc. 5000 Fastest Growing Companies list for 9 years running, we are committed to expanding our teams cross-functionally and globally.
Network Optix aims to power the world’s most intelligent video solutions, with the ultimate goal of carving a path toward revolutionizing the landscape of video technology and transforming how we perceive the world around us.
About the Team
Our team is responsible for a large part of the server-side development — camera integration and support. We work with a wide variety of camera manufacturers, each using different protocols (IP-based, TCP/UDP, HTTP, SOAP, ONVIF, and various proprietary text and binary protocols).
The integration team investigates and supports these protocols, often performing reverse engineering. A significant part of the work involves debugging issues on local and remote devices using tools like Wireshark.
Our software runs on a wide range of hardware and operating systems. We build efficient, portable solutions using modern C++ (C++20/23), along with CMake, Conan, and Git.
What You’ll Be Doing
Examine various camera APIs and develop plugins for different vendors
Add support for new cameras and devices (NVRs, DVRs, intercoms, IP speakers, etc.)
Implement support for new camera features and capabilities
Maintain and improve camera support on the server side
Collaborate with the core server team to enhance camera-server interaction
Investigate Wireshark logs and server logs to diagnose and resolve issues reported by technical support
Troubleshoot complex problems, including server crashes and device-specific issues
Interact with device manufacturers to improve and stabilize integrations
Refactor existing code and increase unit and functional test coverage
Participate in code reviews
Assist the Support team in analyzing complex field issues
Domain / Areas of Work
Each integration typically involves working across multiple protocols and includes:
Camera discovery
Capability detection
Configuration management
Device control
Media stream handling
Video analytics data processing
Camera Features You’ll Work With
Audio/video sources and encoders
PTZ (pan-tilt-zoom)
Advanced hardware features (wipers, heaters, etc.)
Speakers and IO ports
Security features (doorbells, locks, alarms)
Advanced Video Analytics
Event detection (line crossing, loitering, etc., 50+ types)
Object tracking and classification
Recognition (license plates, faces, etc.)
Analytics configuration (regions of interest, rules, etc.)
What you bring
Experience
Experience working with large codebases and maintaining existing systems
Strong experience in C++17/20, including multi-threaded and asynchronous programming
Experience with Windows and Linux C++ toolchains
Experience analyzing network traffic (e.g., Wireshark)
Solid understanding of OOP and software design patterns
Strong debugging and problem-solving skills
Experience writing unit and functional tests
Experience with web services, SOAP, and ONVIF (desirable)
Experience with Qt 6 (desirable)
Technical Skills
Ability to write efficient, portable C++ code in a multi-threaded environment
Strong understanding of asynchronous programming
Ability to work with and evolve an existing codebase
Experience with CMake and Git
Basic system administration skills
Experience working with issue tracking tools (e.g., Jira)
Knowledge
Strong knowledge of C++17/20 and STL (C++23/26 is a plus)
Understanding of algorithms and data structures
Knowledge of concurrent programming
Solid understanding of memory management (low-level and high-level)
Understanding of Windows and Linux internals
Deep understanding of OOP and design patterns
Strong understanding of networking fundamentals and HTTP
Nice to Have
Cross-platform development experience (Windows/Linux, including embedded systems)
Familiarity with Boost
Understanding of device-level integrations and video systems
Experience working with analytics from vendors (e.g., Uniview, Vivotek)
Familiarity with modern AI-assisted development tools (e.g., code generation, static analysis, or developer productivity tools)
What we offer
Competitive compensation
Paid time off
Flexible working hours
Hybrid work in our brand-new comfortable office
Employer-sponsored health coverage
Working with top industry experts in our international team
The position is ideally a hybrid role in one of our offices located in Taipei, Taiwan; Hague, Netherlands; Burbank, CA; Walnut Creek, CA and Portland, OR; Belgrade, Serbia.
Please note: We do not accept unsolicited resumes from third-party recruiters or staffing agencies. Any unsolicited resumes sent to our employees or submitted to our careers page or job postings without a formal agreement in place will be considered property of Network Optix, and no fees will be paid in the event that candidate is hired by the company.
Network Optix is an equal opportunity employer committed to diversity and inclusion in the workplace. We celebrate the diversity of our workforce, which includes people of all cultural, national, racial, gender identities, and those who have served in the military. We strive for an environment where creativity and collaborative growth thrive. If you have a disability or special need that requires accommodation, please let us know.
https://www.networkoptix.com/ccpa-disclosure-notice Offices: Den Haag, South Holland, Netherlands (EU - Netherlands - Hague); Belgrade, Belgrade, Serbia (EU - Serbia - Belgrade); Taipei, Taiwan (Taiwan - Taipei); Burbank, California, United States (USA - Burbank); Walnut Creek, California, United States (USA - Walnut Creek - HQ);