Search jobs > Walnut Creek, CA > Senior developer

Senior C++ Developer (Server)

Network Optix
Walnut Creek, CA, United States
Full-time

Network Optix (Nx) is a 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 Platform helps innovative organizations rapidly and affordably build world-class, custom-tailored, enterprise-scale video products and solutions.

We have locations in Walnut Creek, CA, Burbank, CA, and Oregon in the USA, and distributed teams around the globe (Taiwan, Australia, France, Spain, and Serbia to name a few).

Nx is profitable and actively invests in expanding into new domains. We are growing our teams cross-functionally and across the globe.

We are looking for a Senior C++ software engineer to join our Device Integration Team. We need a developer who has a strong background in multi-threading, network programming, and modern C++.

Our team is responsible for a big part of the server development - camera support. There are various camera manufacturers that have their own protocols to work with devices (ip-based.

tcp / udp-based, http-based, soap-based, onvif-based etc, all kinds of text and binary protocols). The integration team investigates and supports them, often doing reverse engineering.

A sufficient part of the work is investigating bugs on local and remote devices using Wireshark.

Our software runs on all kinds of hardware and operating systems. We write efficient portable code using C++20 (transitioning to C++23), cmake, conan, git.

Key Responsibilities

  • Examine various camera APIs and create camera plugins for different vendors
  • Maintain and improve camera support on a server side
  • Cooperate with core server team to improve camera-server interaction
  • Investigate Wireshark logs and server logs to fix bugs incoming form tech support
  • Interact with device manufactures to improve their APIs
  • Refactor existing code and increase test coverage (UT and FT)
  • Review the code of the other members of the team

Required experience & skills

  • Experience with large codebase and ability to support current codebase
  • Strong background in C++17 / 20 in multi-threaded environment
  • Deep understanding of the network stack and experience in asynchronous network programming
  • Experience in investigating network traffic with Wireshark
  • Experience in debugging and problem solving
  • Understanding of OOP and software design patterns
  • Ability to write efficient and portable code
  • Experiences in implementing unit and functional tests

Nice to have

  • Knowledge of Qt 6
  • Acquaintance with C++23 / 26
  • Cross-platform experiences with Windows and Linux including embedded devices
  • Understanding of Windows / Linux entrails
  • Basic skills in system administration
  • Experience with Web-services, SOAP and ONVIF

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

Hybrid

The position is a hybrid role and the office is located in Walnut Creek, CA. We will also consider candidates in Portland, OR.

The work cannot be completely remote, as it requires interaction with equipment (Cameras, Intercoms, NVRs, IP-speakers).

12 days ago
Related jobs
Promoted
Network Optix
Walnut Creek, California

Cooperate with core server team to improve camera-server interaction. We are looking for a Senior C++ software engineer to join our. We need a developer who has a strong background in multi-threading, network programming, and modern C++. Our team is responsible for a big part of the server developme...

Promoted
Bio-Rad Laboratories
Hercules, California

You will collaborate with software developers, systems engineers, product managers, technical program managers, and firmware engineering teams. This role is a combination of software development and software test engineer. We are looking for a talented and passionate Software Quality Assurance Engin...

Promoted
Wells Fargo Bank, N.A.
San Leandro, California

San Leandro, CA: Software Engineering Manager (Requisition # 001241): Manage a team of individual contributor engineer. ...

Promoted
Intelliswift Software
Dublin, California

Ability to demonstrate expertise in relational database administration including configuration, implementation, data modeling, maintenance, redundancy/HQ, security, troubleshooting/performance tuning, upgrades, database, data, and server migrations. Good understanding of Database Architecture, Perfo...

Promoted
dynamism vc
CA, United States

We’re supporting several fast-growing VC-backed startups, backed by leading investors including Y Combinator, Sequoia, and Accel, to hire ambitious, experienced AI and ML engineers to join highly technical fast growing teams. In the near future, most diseases are expected to become treatable, and dr...

Promoted
Data Intelligence, LLC
CA, United States

Minimum three (3) years of experience (within past seven years) with software engineering that includes software planning, requirements analysis, design, development, integration, testing, debugging, and installing large scale software systems. Data Intelligence, LLC (DI) is seeking for a full time ...

Promoted
Darwin Recruitment
CA, United States

Join a mission-driven, fully remote company focused on developing leading crypto products with a strong emphasis on security, education, and client support.Shape and build our onchain strategy with a focus on liquid staking, and yield optimization.You'll design, test, and deploy smart contracts on E...

Promoted
LHH
CA, United States

Minimum of 7 years in Big Data engineering, covering data ingestion, normalization, and quality assurance. More than 2 years developing data analytics engines and building applications using extensive data sets, preferably with healthcare data. LHH Recruitment Solutions is looking for a Senior Data ...

Promoted
Mathnasium - The Math Learning Center
CA, United States

Understanding of Relational Databases and T-SQL: Thorough understanding of relational databases, T-SQL, scripting, database normalization best practices, and database technologies and concepts. Ownership of Database Design in a Software Development Environment: Responsible for leading and managing t...

Promoted
Bayside Solutions
Martinez, California

Monitor and optimize database performance and respond to system problems affecting the database. Develop, modify, and maintain database models based on logical models, designs, and requirements. Document and communicate changes in database models. Develop standards and preferred methodologies for us...