
Software Development Engineer, C++
networkoptix • Taipei, Taiwan • Portland, Oregon, United States
Posted: April 7, 2026
Job Description
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.
Additional Content
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.