11 Nov
|
Providius
|
Ontario
Providius is looking for a Software Engineer, Test to help build and maintain the automated testing behind our software products.
This is a hands‑on engineering role for someone who enjoys writing code, building automation, investigating failures, and learning how complex software systems behave.
You will work directly with software engineers to automate testing, improve regression coverage, build reusable test tooling, and help make our releases more reliable.
This role sits within engineering. Testing is part of how we build software, not a separate step at the end of the development process.
Position Overview Our software analyzes live network and media traffic in complex, mission‑critical environments. It runs primarily on Linux across physical servers, virtual machines, containers, and cloud environments.
Testing these systems involve more than clicking through a user interface. You may be validating an API response, checking database data, replaying network traffic, investigating a Linux service, or determining whether an unexpected result came from the application or the environment underneath it.
You will help build and maintain automated regression suites and the infrastructure that supports them, including fixtures, test data, captured traffic, mocks, and simulated inputs.
You do not need to come in knowing every part of our technology stack. We are looking for someone with a solid software and test automation foundation who is comfortable learning systems, networking, and deeper testing techniques as they grow in the role.
Our products also include some AI and LLM‑based functionality. AI testing is not the primary focus of this position, but you may contribute to testing these features alongside the rest of the engineering team.
Duties and Responsibilities Write and maintain automated tests across API, integration, UI, regression, and end-to-end testing
Automate repetitive manual tests so they can run consistently as part of regular development
Build and maintain reusable test utilities, fixtures, mocks, and test data
Help maintain automated regression suites and investigate test failures
Add and maintain smoke tests and automated checks in CI/CD pipelines
Test REST APIs, including successful responses, failures, authentication, and edge cases
Help build and maintain Linux, Docker, and virtual‑machine based test environments
Reproduce reported defects and add automated regression coverage where appropriate
Investigate flaky tests and help identify their underlying causes
Validate application behaviour against known inputs and expected outputs
Test integrations such as APIs, syslog, SNMP, webhooks, and email notifications
Assist with performance, load, and longer-running reliability tests
Test installation, upgrade, and migration scenarios
Debug failures across application, database, operating system, and network layers
Work with developers to determine appropriate test coverage for current features
Write clear defect reports with the information needed to reproduce and diagnose problems
Participate in code reviews for test automation and tooling
Contribute to testing AI‑enabled features when required
Tech Stack Our engineering environment includes:
Python, Java, and TypeScript
pytest, JUnit, Playwright, and Cypress
REST APIs
PostgreSQL and TimescaleDB
Linux
Docker and virtual machines
CI/CD pipelines
JIRA and Bitbucket
Network and time‑series data
You do not need experience with every technology listed above.
Required Skills / Experience 1-3 years of experience in software testing, test automation, software development, QA engineering, or a related technical role
Programming or scripting experience, preferably with Python, Java, JavaScript, or TypeScript
Experience writing or maintaining automated tests
Familiarity with at least one automated testing framework such as pytest, JUnit,
Playwright, Cypress, Selenium, or similar
Experience testing REST APIs
Basic experience with Git and modern software development workflows
Comfortable working from the Linux command line
Basic understanding of SQL and relational databases
General understanding of networking concepts such as TCP/IP, UDP, ports, and IP addressing
Strong troubleshooting and problem‑solving skills
Ability to investigate a problem methodically and communicate what you found
Willingness to learn unfamiliar systems and technologies
Strong communication and collaboration skills
Nice to Haves Experience running automated tests in CI/CD pipelines
Experience with Docker or virtual machines
Experience with integration or end‑to‑end testing
Experience debugging Linux services, logs, and processes
Familiarity with networking concepts such as multicast, VLANs, routing, or switching
Experience with performance, load, or soak testing
Experience testing data‑intensive, real‑time, or distributed systems
Experience working with test fixtures, mocks, synthetic data, or simulation
Experience with on‑premise software deployments
Broadcast, media, pro AV, networking, or streaming experience
Experience testing time‑series data, alarms, thresholds, or telemetry
Familiarity with AI or LLM‑based software and how non‑deterministic output differs from traditional software
Experience adding automated test coverage to an existing codebase
Pay 60,000-80,000 per year
Benefits Dental care
Extended health care
On‑site parking
Paid time off
Vision care
Why Join Providius Work on technically challenging software rather than repetitive manual QA
Build real automation and engineering skills
Work directly with experienced software engineers
Gain hands‑on exposure to Linux, networking, distributed systems, automation, and real‑time data
Contribute directly to how our test automation and engineering practices evolve
Take ownership of meaningful technical work as your experience grows
#J-18808-Ljbffr
📌 Software Engineer, Test (Ontario)
🏢 Providius
📍 Ontario