Title:                           Senior Quality Assurance Engineer

Function:                   Quality Assurance

Reports To:               Manager, Quality Assurance

Location:                    Toronto


Role Description
The Senior Quality Assurance Engineer is responsible for performing and managing the processes required by Exchange Solutions to deliver defect free solutions on both the core technology platform and client application development projects.

The Exchange Solutions Quality Assurance team provides functional, regression and performance testing, the creation of test cases, documentation of error and the management of remediation processes. This position is a part of the Exchange Solutions Technology Development and Operations team of technology professionals who provision solutions for clients and the Exchange Solutions product suite. These solutions must be re-useable, scalable and consistent with our development framework and technology roadmap.

The Senior Quality Assurance Engineer is responsible for developing, defining, managing and ensuring compliance with Exchange Solutions’ testing methodologies, practices and processes. They will be required to participate on and serve as a role model for a team that has the direct purpose of being creatively destructive. They will assist and coach other Quality Assurance Engineers to produce the desired level of assurance and project deliverables and they are accountable for leading the planning and implementing of testing strategies to mitigate risk.


Primary Responsibilities

  • Responsible for the quality of the end product by facilitating improvements in the QA engineering process and technology.
  • Review and update quality standards and ensure policies and procedures are enforced on all projects.
  • Define/review and updates templates for testing documentation.
  • Create detailed test plans, test cases and coverage matrices for projects involving both manual and automated processes.
  • Analyze the test results and provide readiness recommendations for specific projects within project’s life cycle.
  • Provide feasible work estimate for all QA activities related to a particular project or individual assignments.
  • Provide input into (and occasionally lead) test plan and test case reviews for assigned projects and participate in required review sessions.
  • Provide peer review for test plans and test cases created by other team members.
  • Act as a liaison between the technical and business sides of the project team.
  • Participate on test teams to plan and implement testing strategies to mitigate risk to production systems and communicate this to the Technical Solution Architect and project team.
  • Full responsibility for the viability of the lifecycle of issues/bugs being recorded, tracked, resolved and closed.
  • Communicate effectively with others both on a technical and a business level and be persuasive in addressing findings.
  • Report project status on a timely manner and track and overall progress against test plan and coverage model.
  • Adapt to various workloads and deadlines as appropriate.
  • Actively participate in the overall business, operations and culture of the company.
  • Evaluate and make recommendations on new testing tools and methodologies; provide architectural guidance on test framework.


Capability Requirements – education, skills & experience

  • University degree in Computer Engineering/Science or equivalent knowledge/ capability from other university disciplines and/or work experience
  • 5+ years of progressively responsible experience in software development in at least one or more of the following languages: Java, C, C++, Python
  • 3+ years of experience with software quality assurance and prior experience in creating automation frameworks.
  • Expertise in performance and load testing of web and backend systems using JMeter, Gatling or similar
  • Well versed in web services paradigms and protocols such as REST and HTTP
  • Thorough understanding of, and experience with, testing methodologies and Issue/Bug tracking tools
  • Ability to test in white, black, and gray box environments
  • Extremely organized and detail oriented.
  • Experience with one or more automated test frameworks (i.e. Robot, Selenium, QA Runner, etc.)
  • Complete understanding of configuration and release management
  • Able to plan and develop test cases for full requirement testing coverage
  • Experience with bug detection, reporting, tracking and triage and project / management reporting of defect rates, quality measures compliance etc.
  • Able to persevere – willing to ask the right questions with the tenacity to ensure an answer is provided and take the initiative to ensure project completion
  • Must have the enthusiasm for the quality assurance process in a development environment and approach QA from the end-user perspective
  • Able to assist QA Manager in leading projects and adapting to change
  • Fast learner
  • Strong verbal and written communication skills
  • Must have well developed interpersonal skills to enable flexibility and tactful negotiation in resolving issues and ensure fixes and recommendations are acted upon
  • The ideal candidate will be familiar with some or all of the following:
    • SQL, Oracle, PL/SQL, UNIX/LINUX/Windows Server
    • AWS, Oracle Cloud or Azure
    • Databases, Data warehouse, OLAP etc.
    • Java / J2EE / C# / VB.NET / JavaScript
    • Read and understand Database schema’s, application specifications and functional requirements
  • Proficient in UNIX/Linux environments and shell scripting.
  • Proficient in basic SQL operations such as joins and views.
  • Experiences with JIRA, Confluence, Jenkins, Bamboo a plus.
  • Experience using Git, CVS or other source code management systems.
  • Comfortable in AGILE development environments and team structures.


About Us

Exchange Solutions is a cloud-based marketing technology company that delivers personalized loyalty solutions to retailers enabling them to build deeper and more profitable engagement with their consumers. With more than 20 years of experience in the industry, Exchange Solutions transforms loyalty programs and promotions from being costly applications to productive and profitable capabilities for clients across various verticals in the US and Canada. Current clients include Harry Rosen, Esso™ and Mobil™, Well.ca, Sobeys Inc., Rexall Pharmacy Group, Lowe’s, Indochino, and Today’s Shopping Choice.

Why join us?

At Exchange Solutions, we share a company-wide commitment to hiring remarkable people.  We are a high-energy company where individuals are driven to succeed and empowered to perform at their best. Our environment combines teamwork, vitality and enthusiasm with a casual, flexible approach. Our talented team members share a dedication to creativity in developing innovative ideas and together we are powering the future of advanced customer engagement and loyalty.

If you share a love for everything about software design and if using technologies like Docker, Kubernetes, Chef, Mesos, Gradle, ReactJS, Kafka and AWS tickles your fancy, then you might just speak our language.  Do you bring a big thinking approach and a curious mind that is not afraid to ask hard questions? Do you have a passion to translate focused research into actionable implementation decisions?  How about working on high transactional systems that handle billions of transactions per month with sub-second response times?

We’re a Java shop environment using agile methodologies and on a learning path towards mastering continuous delivery.  We have a high performing collaborative team of software development professionals driven by their mutual passion for innovation and a desire to keep pace with leading edge technologies.  We walk the talk through our commitment to challenging work and internal programs, such as Innovacations (a week dedicated to experimental exploratory work), and Developers Learning Things at Lunch (DLTAL) all while having a fun work hard/play hard balance … and of course, free Java ;)