About the TeamOur 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 WorkEach 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 bringExperience- 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.
Base pay range
$180,000-$250,000 USD