Back to jobs

Senior Python Developer (System Integration Testing)

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.

Our product is a distributed cross-platform video management system (VMS). The mission of our team is to constantly ensure and maintain the high quality of our product.

We develop large-scale integration tests and make them work robustly, fully unattended. Because our quality standards are high, we have a well-developed infrastructure for integration testing, which we are constantly expanding and improving. We have a great engineering culture and no untouchable legacy code.

We’re looking for engineers with diverse sets of skills to bring a unique experience to the team. We’re interested in candidates with expertise in software design and architecture, Windows or Linux automation, Web interface automation, network programming, and system programming.

We’ve done a lot; our tools fully automate:

  • Creating and running VMs with Windows and Ubuntu
  • Managing ARM-based RPi and NVIDIA Jetson just like with VMs
  • Configuring Windows via via WinRM/WSMan/WMI and Linux via SSH
  • Connecting devices and VMs in networks
  • Configuring SMB and iSCSI network shares
  • Working with physical cameras and running our virtual cameras
  • Installing and configuring the product, connecting its instances into systems
  • Controlling the desktop and mobile client GUI with our own Qt-based tooling
  • Working with our cloud services via API and Web automation
  • Controlling the web interface of the cloud services with WebDriver
  • Video and audio analysis with ffprobe and VLC
  • Collecting product logs, browser logs, OS logs, hypervisor logs, network traffic dumps, crash dumps and backtraces and other diagnostic information

The way we work:

  • Python 3.10+
  • Git (with clean history)
  • Pre-commit reviews (strict sometimes), linters and tests
  • Design reviews
  • Professional growth, continuous learning

Our values:

  • Robust and clear code is more important than doing everything quickly. Our guidelines really work
  • Stability and proper operation are more important than new functionality
  • Understanding business value and common sense is more important than formal performance

Hundreds of tests run for each change into the product in various environments. Thousands run every night. But there’s more to do:

  • Infrastructure development to run more tests and get results faster
  • Cloud services testing and deployment
  • Running tests on macOS
  • Making tests more stable and robust. We solve problems even if they’re hardly reproducible, comb through logs, dumps and backtraces, use strace and procmon, read the docs and apply logic
  • Testing VMS server embedded into cameras
  • New tools for developers of the product, QA personnel and support engineers

What we’re looking for:

  • A high level of computer science and programming knowledge
  • Experience with Python
  • Experience with troubleshooting using logs, dumps, and backtraces
  • 5+ years of full-time commercial experience

Highly desirable (at least one is required):

  • Software design and architecture
  • Windows or Linux administration and automation
  • Network programming
  • System programming

We are offering:

  • Competitive remuneration
  • Working with top industry experts in our international R&D team
  • Paid leaves
  • Flexible working hours

Hybrid

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

 

We are always on the lookout for top talent in the industry. Join our talent community or submit your resume, by applying to this position, and stay connected with us to be considered for future opportunities.

 

Base pay range

$150,000 - $200,000 USD

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. 

CCPA disclosure notice

Apply for this job

*

indicates a required field

Resume/CV

Accepted file types: pdf, doc, docx, txt, rtf

Cover Letter

Accepted file types: pdf, doc, docx, txt, rtf

Select...
Select...

Voluntary Self-Identification

For government reporting purposes, we ask candidates to respond to the below self-identification survey. Completion of the form is entirely voluntary. Whatever your decision, it will not be considered in the hiring process or thereafter. Any information that you do provide will be recorded and maintained in a confidential file.

As set forth in Network Optix’s Equal Employment Opportunity policy, we do not discriminate on the basis of any protected group status under any applicable law.

Select...
Select...
Race & Ethnicity Definitions

If you believe you belong to any of the categories of protected veterans listed below, please indicate by making the appropriate selection. As a government contractor subject to the Vietnam Era Veterans Readjustment Assistance Act (VEVRAA), we request this information in order to measure the effectiveness of the outreach and positive recruitment efforts we undertake pursuant to VEVRAA. Classification of protected categories is as follows:

A "disabled veteran" is one of the following: a veteran of the U.S. military, ground, naval or air service who is entitled to compensation (or who but for the receipt of military retired pay would be entitled to compensation) under laws administered by the Secretary of Veterans Affairs; or a person who was discharged or released from active duty because of a service-connected disability.

A "recently separated veteran" means any veteran during the three-year period beginning on the date of such veteran's discharge or release from active duty in the U.S. military, ground, naval, or air service.

An "active duty wartime or campaign badge veteran" means a veteran who served on active duty in the U.S. military, ground, naval or air service during a war, or in a campaign or expedition for which a campaign badge has been authorized under the laws administered by the Department of Defense.

An "Armed forces service medal veteran" means a veteran who, while serving on active duty in the U.S. military, ground, naval or air service, participated in a United States military operation for which an Armed Forces service medal was awarded pursuant to Executive Order 12985.

Select...

Voluntary Self-Identification of Disability

Form CC-305
Page 1 of 1
OMB Control Number 1250-0005
Expires 04/30/2026

Why are you being asked to complete this form?

We are a federal contractor or subcontractor. The law requires us to provide equal employment opportunity to qualified people with disabilities. We have a goal of having at least 7% of our workers as people with disabilities. The law says we must measure our progress towards this goal. To do this, we must ask applicants and employees if they have a disability or have ever had one. People can become disabled, so we need to ask this question at least every five years.

Completing this form is voluntary, and we hope that you will choose to do so. Your answer is confidential. No one who makes hiring decisions will see it. Your decision to complete the form and your answer will not harm you in any way. If you want to learn more about the law or this form, visit the U.S. Department of Labor’s Office of Federal Contract Compliance Programs (OFCCP) website at www.dol.gov/ofccp.

How do you know if you have a disability?

A disability is a condition that substantially limits one or more of your “major life activities.” If you have or have ever had such a condition, you are a person with a disability. Disabilities include, but are not limited to:

  • Alcohol or other substance use disorder (not currently using drugs illegally)
  • Autoimmune disorder, for example, lupus, fibromyalgia, rheumatoid arthritis, HIV/AIDS
  • Blind or low vision
  • Cancer (past or present)
  • Cardiovascular or heart disease
  • Celiac disease
  • Cerebral palsy
  • Deaf or serious difficulty hearing
  • Diabetes
  • Disfigurement, for example, disfigurement caused by burns, wounds, accidents, or congenital disorders
  • Epilepsy or other seizure disorder
  • Gastrointestinal disorders, for example, Crohn's Disease, irritable bowel syndrome
  • Intellectual or developmental disability
  • Mental health conditions, for example, depression, bipolar disorder, anxiety disorder, schizophrenia, PTSD
  • Missing limbs or partially missing limbs
  • Mobility impairment, benefiting from the use of a wheelchair, scooter, walker, leg brace(s) and/or other supports
  • Nervous system condition, for example, migraine headaches, Parkinson’s disease, multiple sclerosis (MS)
  • Neurodivergence, for example, attention-deficit/hyperactivity disorder (ADHD), autism spectrum disorder, dyslexia, dyspraxia, other learning disabilities
  • Partial or complete paralysis (any cause)
  • Pulmonary or respiratory conditions, for example, tuberculosis, asthma, emphysema
  • Short stature (dwarfism)
  • Traumatic brain injury
Select...

PUBLIC BURDEN STATEMENT: According to the Paperwork Reduction Act of 1995 no persons are required to respond to a collection of information unless such collection displays a valid OMB control number. This survey should take about 5 minutes to complete.