Role Description
Are you passionate about solving problems and delivering next-generation software to enhance the Internet experience? Join a global leader creating software for broadband service providers. We are looking for a Junior QA Software Engineer in British Columbia. This role is ideal for those who have a passion for a career in quality assurance within the high-tech industry.
As a QA Software Engineer, you will build on your current expertise by demonstrating core competencies as a bright and hardworking individual who thrives on challenges in developing new and contributing to existing test methodologies in our Engineering Department. Projects include:
-
Creation of automated tests, focused on JUnit and Playwright development.
-
Contributing to sets of fully automated tests in the field of networking and distributed computing.
-
Working on some of the newest technologies.
-
Finding fast and effective testing solutions.
Role and Responsibilities:
-
Design, implement, and maintain automated test suites using Junit and Playwright.
-
Continuously refactor and optimize test code to improve readability, execution speed, and coverage.
-
Collaborate with developers to identify test gaps and add coverage for new features and bug fixes.
-
Monitor test execution results, analyze failures, and provide actionable feedback to development teams.
-
Design and execute performance tests using containerized environments.
-
Collect and analyze performance metrics (response times, throughput, resource utilization).
-
Identify bottlenecks and provide recommendations for optimization.
-
Ensure performance tests are repeatable and scalable across environments.
-
Containerize test frameworks to ensure reproducibility and portability.
-
Build and maintain Docker images for test environments, including dependencies and browsers.
-
Optimize container usage for performance testing scenarios.
-
Validate and confirm ML models for various data types and sources.
-
Standardize playbooks, roles, and variables to ensure consistency and maintainability.
-
Stay current with emerging tools and frameworks in test automation, configuration management, and containerization.
Qualifications
-
Post-secondary degree majoring in Computer, Information Technology or Engineering or 3 years or more of relevant working experience.
-
Strong competency and experience in writing code in Java.
-
Strong knowledge of TCP/IP networking on Linux, Unix.
-
Experience using JUnit and understanding of TDD (Test Driven Development).
-
Good understanding of Linux/Unix environments and troubleshooting them.
-
Good understanding of Eclipse, GIT and Databases.
-
Good analytical and problem-solving skills.
-
Willingness and aptitude for finding and reporting software problems.
-
Team player that is proficient and productive in producing test scenarios.
-
Ability to work productively with limited supervision but capable of asking for help when appropriate/needed.
-
Demonstrate excellent communication skills (in English, both written and verbal).
-
Though this is a remote role, you must be able to work out of your home office in British Columbia.
Requirements
-
The salary range for this role is $55-65,000 CAD.
Preferred Specialized Qualifications
-
Experience in scripting (e.g., Python, Shell).
-
Experience working with CI/CD pipelines such as Jenkins.
-
Experience working in a cloud environment (AWS, GCP, etc).
-
Experience working in a Telecom provider.
-
Experience working with MongoDB.
-
Experience working with ClickhouseDB.
-
Experience working with Ansible and Docker.
-
Knowledge of DSLAMs, CMTSs, and devices: (TR69, cable modem).
-
Experience working with multi-tiered or multi-threaded applications.
-
Experience in methodologies for GUI Testing.
-
Experience in Test methodologies involving Big Data applications.
-
Knowledge of network hardware: routers and switches.
-
Experience in testing Machine Learning/AI algorithms.