Join us as the first Quality Assurance (QA) engineer at Magical! This is a unique and exciting opportunity to establish and lead the QA function in our growing team. As the first QA engineer, you will have the chance to shape our approach to testing and build a strong foundation for our software's quality.
The opportunity
You will be involved in both manual and automated testing of our software products. Your work will be crucial in ensuring the high quality of our software, reducing the number of bugs that make it to production, and helping us understand the overall quality of our product.
You'll have the opportunity to work across teams, helping wherever the need is greatest. You'll be embedded with a team as features are being worked on and tested, ensuring that we catch any issues before they reach our users. And, if time permits, you can assist in other areas, like helping to find steps to reproduce user-reported bugs and other high priority issues.
Your main responsibilities
You will be responsible for manual and automated testing of our software products. The role involves the following responsibilities:
Own the QA function, shaping how testing is conducted and integrated into our planning and engineering processes
Work with engineers to write up test plans together after the product spec review
Write up detailed bug reports with version number, steps to reproduce, expected results, and actual results, while providing feedback on usability and accessibility of the product
Manually verify changes as requested
Write automated tests when possible
Simulated load testing, end-to-end tests, performance tests
Organize and maintain test backlog and overall quality scores
Look for patterns of similar bugs and host bug prevention workshops with the engineering team in an effort to prevent these classes of bugs from reoccurring
Build out automated tests that can prevent these class of bugs from reoccurring, where possible
Develop a quality dashboard that tracks key indicators such as defect density, defect rate on a per-feature basis, and per-feature quality scores to provide a real-time view of the project status.
Join standup and other team meetings and participate on Slack
Exploratory testing around new features, top sites, and new workflows
The presence of this role does not replace the need for engineers to write automated tests of features they are working on.
We understand that some features are not testable until they reach the “bug bash” date, which may be the day before the build cut. We hope to find any production bugs between this “bug bash” date and when we have ramped the roll out of the new feature to 20% (note, we can ramp features at a different rate than the release).
You’re perfect for this role if you have
Proven experience in a similar software testing role.
Experience in automated testing tools and scripting.
Passion for breaking things
Sharp-eyed with attention to detail
Strong knowledge of software QA methodologies, tools, and processes.
Experience working in an Agile/Scrum development process.
Excellent problem-solving and communication skills.
Experience with TypeScript
Experience working with one of the following automation frameworks: Cypress, Selenium WebDriver, or Playwright
Be able to deal with ambiguity being the first person in this role
Minimum 3 years of work experience in an automated testing role.
Bonus points for
Experience working with browser extensions
Cross-functional team working experience
Tools you will use
JavaScript and TypeScript
Jest
GitLab
Shortcut
Notion
Location
We are looking for qualified candidates in the Greater Toronto Area.