Quality Assurance Developer in Vancouver, BC, Canada
QA Contractor (Test Automation)2017 - 2018nCrypt
Technologies: Selenium WebDriver, Java, TestNG, Maven, Git, TestRail, JIRA
- Built and maintained the entire test automation framework from the ground up using Selenium WebDriver with Java, TestNG, ExtentReports, and Maven.
- Automated web regression test cases.
- Provided a test automation framework demo and test coverage progress reports to stakeholders.
- Performed manual testing on nCrypt's bitcoin and bitcoin cash exchange web application.
Senior QA Automation Engineer2016 - 2017BCAA
Technologies: Selenium WebDriver, Java, TestNG, SQL, Git, SVN, Bamboo, TestLink, Swagger, Postman, pgAdmin
- Automated the regression test suites for an insurance web application.
- Contributed to the development and maintenance of the test automation framework.
- Conducted code reviews for team members and provided feedback.
- Automated RESTful services testing using the REST Assured API for the Personal Information Protection Act (PIPA) project.
- Performed manual web, database, and iPhone testing.
Test Lead2015 - 2016Treasury Board of Canada Secretariat
Technologies: Selenium WebDriver, Python, PyUnit, Git, TestLink, WAVE, Firefox Accessibility Evaluation Toolbar
- Created a test automation framework from scratch using Selenium WebDriver, Python, PyUnit, Protractor, Jasmine.
- Developed automated regression test suites for a government intranet web application built on WordPress platform.
- Wrote the test strategy document for the project. Gathered project and business requirements to outline all the testing approaches.
- Provided QA training to junior testers.
- Created and executed web accessibility (WCAG 2.0) test cases.
Software Test Developer2015 - 2015Ecobee
Technologies: Selenium WebDriver, Python, PyUnit, SVN, Jenkins, TestLink
- Developed automated tests for a web application that allowed users to configure Ecobee's WiFi-enabled thermostat.
- Maintained and troubleshot the automation environments.
- Monitored automation test results daily and fixed bugs as needed.
- Mentored junior automation testers on coding standards.
QA Contractor – Test Automation2014 - 2014Carebook Health Technologies
Technologies: Selenium WebDriver, C#, NUnit, Microsoft Visual Studio, Visual Studio Web Performance Test, Microsoft Test Manager, Microsoft Team Foundation Server (TFS)
- Created the test automation framework from the ground up using Selenium WebDriver with C# and NUnit.
- Developed web UI test automation scripts for Carebook's preventative health management system.
- Mentored offshore QA testers on creating effective and maintainable test suites to provide maximum test coverage for different testing phases.
- Wrote performance test scripts using Visual Studio Web Performance Test.
- Performed functional, regression, web, and mobile testing on Carebook's SaaS platform.
- Analyzed functional specs, requirements, and workflow designs.
Senior QA Analyst2013 - 2014Western Union
Technologies: Microsoft SQL Server Management Studio, HP Quality Center, Trello, Version One, Selenium IDE
- Analyzed the business requirements, UI workflow, and database design to create and execute test cases on a transaction monitoring and alert management system for detecting money laundering patterns for regulatory compliance (PEP, Worldcheck, Dodd-Frank).
- Designed the test plan and test case templates.
- Created the entire regression testing suite.
- Performed black box and white box functional, regression, integration, database, and UI testing.
- Set up HP Quality Center as a test management system to create traceability for releases, business requirements, test cases, test execution results, and defects.
- Provided test coverage and defect summary reports for project releases.
Project Test Team Lead | Senior Quality Assurance Tester2011 - 2013Provincial Health Services Authority
Technologies: Selenium WebDriver, Java, HP QTP, VBScript, HP Quality Center, HP Sprinter, JIRA
- Performed functional, integration, regression, security, and automated testing for a renal patient information management system used across BC renal clinics and hospitals.
- Managed a team of four testers, defined scope of testing, planned and led project testing efforts, established and standardized QA processes. Developed the test strategy. Participated in UAT planning and triaged user feedback.
- Evaluated, recommended, and coordinated the purchase and training of test management, requirements management, test automation, and bug tracking tools. Set up and maintained all QA tools.
- Designed test plan, test case, and defect templates.
- Developed test estimations.
- Determined QA resource needs and participated in the QA hiring process.
Software Tester2010 - 2011The Active Network
Technologies: Microsoft SQL Server, JIRA, Oracle Database Client, Microsoft Network Monitor, Web Accessibility Tool Bar for IE, Wave Tool Bar, Firefox Accessibility Extension, JAWS Screen Reader, IIS
- Analyzed functional specifications, created and executed test cases for point of sale (POS), payment transaction processing, and event registration systems.
- Tested the SQL encryption for payment data transmission from client to server using a Microsoft Network monitor.
- Performed website accessibility testing for ADA compliance.
- Presented demos of new software features to stakeholders and customers.
- Collaborated with offshore developers and testers.
- Implemented hardware testing on cash drawers, receipt printers, validation printers, scanners, and webcams.
Software Developer2010 - 2010SAP Business Objects
Technologies: C++, Visual Studio
- Added and modified installation features to the Business Objects Enterprise application on both Windows and Unix platforms.
Software Developer2008 - 2008Currenex
- Converted all of the embedded test code into JUnit test cases.
- Gathered the requirements, then developed the user interface design, and implemented both front-end and back-end code.
- Wrote SQL database queries.
- Managed the integration into the main application.
- Conducted unit and integration testing.
- Added user group deletion, user filtering, and user search features to the existing application.
Software Engineer2007 - 2007MacDonald, Dettwiler, and Associates (MDA)
- Implemented classes in C++ to build a “bridge” to transport navigation aid data from the database to the front-end layers of the application.
- Building the Entire Test Automation Framework at nCrypt (Development)
As the first QA automation engineer hired at the company, I had the opportunity to build the test automation project from the ground up. I used Selenium WebDriver with Java, TestNG, and Maven. I incorporated Log4J for logging test steps and error stack trace to a log file, and I added ExtentReports for generating a user-friendly HTML report to display the test results.
I automated all the critical and commonly-used workflows in the front-end web application, and the automation suite was run during regression testing period to reduce manual testing time and efforts. The QA team especially appreciated the fact that the automated tests replaced some of the most tedious and time-consuming manual test cases that involved number calculations and checking for the correct cash, bitcoin, and bitcoin cash balances in the customers' wallets within the application.
- Building an API Test Suite to Test RESTful Web Services (Development)
At BCAA, I was involved in a data tokenization project that required web services API testing. Since no one on my team had done API testing before, I took the initiative to build the test suite from scratch. As we were a Java shop, I used the REST Assured Java framework to test the REST API endpoints.
After creating the testing framework and the initial set of test cases, I mentored another tester on REST services and the programming syntax for writing API tests. The project was a success, and the entire test suite was run on a daily basis in Bamboo, our continuous integration tool.
- Leading the QA Activities for a Brand-new Government Agile Project (Development)
I was hired as a test lead and QA automation engineer for a brand-new Agile project at a government agency. The project's purpose was to redesign and rebuild the intranet so it could function as a collaboration and knowledge-sharing platform for employees.
After some discussions with the development team, we decided to build the test automation project in Python because it was the language that the majority of the developers was comfortable with. I built the test automation framework from scratch using Selenium WebDriver and automated the tests for all the new features that the developers produced in each sprint.
In addition to building the entire test automation framework, I also mentored junior testers, set up, and configured test management and defect tracking systems, performed accessibility testing for the hearing-impaired, and created the test strategy document for submission to the senior management.
The Agile project we worked on served as a pioneering example for other departments within the organization, and we frequently had colleagues visit our office to learn how we used the Agile methodology to deliver our project incrementally and successfully.
- Serving as a Mentor in UBC's Computer Science Mentorship Program (Other amazing things)
Since 2006, I have been volunteering as a mentor in the computer science mentorship program at the University of British Columbia. This program allows me to give back to the computer science department while providing guidance to students concerning the direction of their coursework and careers. Not only have I found this experience to be rewarding, I have also made some lifelong friends over the years.
FrameworksSelenium, JUnit, TestNG, Appium, Protractor, Jasmine
Libraries/APIsSelenium API, Selenium WebDriver, WebDriver
ToolsConfluence, Subversion (SVN), REST Assured, Microsoft Test Manager, TestRail, HP Quality Center (QC), Eclipse IDE, Jira, Azure DevOps Services, Zephyr, Postman, TortoiseSVN, Tortoise Git, Bitbucket, Jenkins, Microsoft Visual Studio, Git, Maven, Microsoft Team Foundation Server, Phabricator, pgAdmin, Perforce, HP QuickTest Professional (QTP), Bamboo, Xcode
ParadigmsSoftware Testing, Functional Testing, Unit Testing, E2E Testing, Scrum, Testing, Mobile Testing, Automated Testing, Test Automation, Manual Testing, Agile, Automation Testing, User Acceptance Testing (UAT)
PlatformsAndroid, iOS, TestLink, WordPress
OtherWeb Service Testing, Test Automation Frameworks, Smoke Testing, Web Services Testing, White Box Testing, Regression Testing, Automated UI Testing, UI Testing, Integration Testing, System Testing, Exploratory Testing, Test Case Execution, Test Case Creation, Test Planning, Software Testing Lifecycle (STLC), Test Management, Automated Tests, Android Testing, Test Analysis, Selenium Automation, Selenium PageFactory, Website QA, QA Leadership, Agile Software Testing, Web App Testing, Website Testing, Web Application Testing, Web-based Testing, Black Box Testing, Manual QA, Mobile App Testing, UI Automation, QA Test Plan Management, QA Automation, Software QA, Software Development Lifecycle (SDLC), Quality Assurance (QA), Test Cases, Selenium Page Object, Team Foundation Server 2013, API Testing, Mobile Device QA Automation, Cryptocurrency, log4j
StorageDatabases, Microsoft SQL Server, JSON
- Bachelor's degree in Computer Science2006 - 2009The University of British Columbia - Vancouver, BC, Canada