Verified Expert in Engineering
Automation Engineer and Developer
Andrew is a senior automation engineer and SDET (software development engineer in test) with a demonstrated history of successfully working as an individual contributor, team lead, and manager of several projects. With over nine years of experience, Andrew knows the ins and outs of QA and test automation, including having designed, developed, and implemented several test automation frameworks himself. Andrew can learn new tech quickly and enjoys expanding upon previously gained knowledge.
The most amazing...
...project—that was also personally very satisfying—was building out the automation at GoFundMe while getting to see how the product positively affected people.
Senior QA Software Engineer
- Hired as the first automation engineer in a fast-paced, early-stage startup environment.
- Worked closely with executive team and lead engineers to establish company SDLC policies and procedures.
- Designed and architected a Java-based framework to automate a web app and various products at the UI, API, and database layers.
- Automated the testing of native/hybrid iOS and Android applications with Appium.
- Configured continuous integration pipelines in Azure DevOps to streamline deployment processes and regression/smoke testing efforts.
- Leveraged the automation framework and infrastructure to develop internal tools to aid in company-wide product testing.
- Built a Slackbot to run integration tests, trigger DevOps pipelines, monitor, and coordinate releases, and track the status of GitHub issues.
- Created load tests on services and WebSocket connections with JMeter to assess capacity, performance, and breaking points.
QA Manager (previously Lead Automation Engineer)
- Mentored fellow QA team members to provide guidance and to help develop their quality assurance, white-box testing, and automation skills.
- Architected automation frameworks for testing and verifying GoFundMe's services, APIs, UI flows, and data.
- Developed internal APIs/microservices and web apps consisting of helpers, tools, and results reporting for use across all QA and development teams, allowing for quicker and more efficient development processes and testing efforts.
- Configured various CI/CD Jenkins jobs to mitigate the risk of deployments and code changes.
- Automated front-end and data-layer testing, through the use of Selenium WebDriver, PHP/PHPUnit, Java/JUnit, and Bash scripts to verify the correct functionality of the CrowdRise and GoFundMe web applications.
- Wrote data-driven test suites to confirm the correct responses from internal- and external-facing REST APIs and microservices.
- Implemented cross-browser/platform testing via Sauce Labs, BrowserStack, and Appium.
- Contributed to the CrowdRise testing infrastructure by developing new, and improving existing, helper functions/methods and utilities to provide greater test coverage.
- Performed code reviews on merge requests from development and QA teams.
- Troubleshot and debugged the codebase to help determine the source of bugs and defects.
Software QA Automation Engineer
- Wrote test scripts with Selenium WebDriver, Java, and JUnit in Eclipse for the testing of websites and widgets.
- Generated T-SQL scripts, stored procedures, and custom user code modules to be used by test automation to allow for greater flexibility and effectiveness.
- Utilized Microsoft Visual Studio and NUnit for the writing of unit tests to verify the correct output of individual methods.
- Developed failover and behavior-driven integration tests in C# to confirm that a system of Windows services and web services were properly communicating and producing an expected SOAP API response.
- Deployed MS SQL Server schema and data using Redgate tools and application/service updates using Beyond Compare.
- Tested the accuracy of SSRS reports and their associated stored procedures.
- Managed and coordinated the promotion of the software and the configuration of new environments as the QA lead for the Vector project, allowing for internal and external testing.
- Scheduled the periodic execution of automated tests in Jenkins to mitigate unexpected issues.
Westinghouse Electric Company
- Served as software engineer and lead test engineer for several of the world’s first AP1000 nuclear power plants located in China.
- Contributed towards project completion during each phase of the software development life-cycle in an agile/scrum environment.
- Designed SQL queries in Oracle SQL Developer to retrieve data from a repository based upon the Oracle Relational Database Management System (RDBMS).
- Created, reviewed, and modified a number of test procedures and scripts prior to formal testing.
- Performed black-box and white-box testing of software to ensure requirements had been satisfied at the unit, integration, and system levels.
- Demonstrated the functionality of software to the customer during acceptance testing.
- Documented defects to monitor the status of test discrepancies and open issues.
- Built test cases for the regression testing of software based on updated requirements and bug fixes.
- Produced test reports to summarize the results of testing efforts.
- Analyzed Excel spreadsheets through creation of formulas to track project progress.
QA Web Application and Portal
Selenium, .NET, Appium
Postman, Jenkins, Git, WebdriverIO, BrowserStack, Cucumber
Automated Testing, Cross-platform, Test Automation, Continuous Integration (CI), Azure DevOps, Microservices, REST
Windows, MacOS, iOS, Android, Docker
Quality Assurance (QA), Startups, QA Automation, Web Applications, QA Testing, REST API Automation, Integration Testing, Enterprise, Customer Relationship Management (CRM), QA Leadership, Sauce Labs, Software, Webhooks
MySQL, Microsoft SQL Server
Bachelor of Science Degree in Electrical Engineering
Pennsylvania State University - State College, PA, United States