Andrew Craver, Developer in Los Angeles, CA, United States
Andrew is available for hire
Hire Andrew

Andrew Craver

Verified Expert  in Engineering

Automation Engineer and Developer

Location
Los Angeles, CA, United States
Toptal Member Since
June 8, 2020

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.

Portfolio

MedChat
Enterprise, SQL, Software, Healthcare, Startups, Integration Testing...
GoFundMe
Enterprise, SQL, Software, BrowserStack, Startups, Integration Testing...
Psychemedics Corporation
Software, Integration Testing, Quality Assurance (QA), Git, MySQL...

Experience

Availability

Part-time

Preferred Environment

Git, SQL, Jenkins, Appium, Selenium, JavaScript, Java

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.

Work Experience

Senior QA Software Engineer

2018 - PRESENT
MedChat
  • 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.
Technologies: Enterprise, SQL, Software, Healthcare, Startups, Integration Testing, Quality Assurance (QA), JavaScript, iOS, Git, MySQL, REST API Automation, Microsoft SQL Server, BrowserStack, Azure DevOps, Appium, Selenium, Java

QA Manager (previously Lead Automation Engineer)

2015 - 2018
GoFundMe
  • 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.
Technologies: Enterprise, SQL, Software, BrowserStack, Startups, Integration Testing, Quality Assurance (QA), JavaScript, iOS, Git, REST API Automation, MySQL, Docker, PHP, Sauce Labs, Jenkins, Appium, Selenium, Java

Software QA Automation Engineer

2014 - 2015
Psychemedics Corporation
  • 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.
Technologies: Software, Integration Testing, Quality Assurance (QA), Git, MySQL, REST API Automation, C#, SQL, Jenkins, Selenium, Java

Software/Test Engineer

2011 - 2014
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.
Technologies: Integration Testing, Quality Assurance (QA), MySQL, Software, Perl, SQL

QA Web Application and Portal

A Java-based, Spring web application built for internal, company-wide use. It featured helpers and tools to be utilized by both development and QA teams to increase the speed and efficiency of testing efforts. It also included documentation related to QA and automation, test results reporting, and the ability to initiate integration test runs.

QA Slackbot

A Java-based Slackbot application and service. It was utilized in the company's Slack workspace to report test results and allow for the triggering of test builds and pipelines in the CI environment. It was also used for the tracking of releases and individual tickets through integrations with issue-tracking software.

QA Microservice

An internally deployed microservice for QA-related tasks that are utilized by multiple company repositories for data setup and verification. It's also used for the complete integration testing of a webhook service to mimic realistic customer use cases.
2006 - 2010

Bachelor of Science Degree in Electrical Engineering

Pennsylvania State University - State College, PA, United States

Tools

Postman, Jenkins, Git, WebdriverIO, BrowserStack, Cucumber

Frameworks

Selenium, .NET, Appium

Paradigms

Automated Testing, Cross-platform, Test Automation, Continuous Integration (CI), Azure DevOps, Microservices, REST

Platforms

Windows, MacOS, iOS, Android, Docker

Industry Expertise

Healthcare

Languages

Java, SQL, JavaScript, PHP, C#, Perl, TypeScript

Storage

MySQL, Microsoft SQL Server

Other

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

Collaboration That Works

How to Work with Toptal

Toptal matches you directly with global industry experts from our network in hours—not weeks or months.

1

Share your needs

Discuss your requirements and refine your scope in a call with a Toptal domain expert.
2

Choose your talent

Get a short list of expertly matched talent within 24 hours to review, interview, and choose from.
3

Start your risk-free talent trial

Work with your chosen talent on a trial basis for up to two weeks. Pay only if you decide to hire them.

Top talent is in high demand.

Start hiring