Do you want to help shape the future as our business expands? Do you love making technology that changes lives? At BARBRI, we believe that advances in the behavioral and learning sciences, coupled with emerging technology, offers a chance to create amazing learning opportunities for the students we serve. Our technology team is a group of top-tier professionals, passionate about building the learning technology of the future
For over 50 years, we have helped aspiring lawyers pass the bar exam, and do better in Law School. Every student deserves the most effective educational experience possible. With your help, we can make that happen.
The QA Test Automation Engineer is responsible for monitoring every phase of the software development process to ensure design quality, making sure that the software adheres to agreed-upon standards. The QA Test Automation Engineer will ensure that new applications function properly before they are released to the customers. A person in this role must be self-motivated with a proven track record of delivering results. This is a full-time employee position.
Roles and Responsibilities
- Take ownership of improving the software quality practice at BARBRI. Introduce and champion best practices spanning tooling and process changes.
- Partner with Cloud Architect, Systems, and Operations teams to select and introduce a new automated UI testing toolset. Train testing and development teams.
- Improve existing testing processes. Identify appropriate tests for execution in build and deployment process to span local development workflow, build and deployment pipelines.
- Identify troublesome and critical code in application through monitoring and developer feedback. Coordinate with development and test teams to ensure appropriate test coverage. Work with IT Systems team resources to implement alerting for possible production failures.
- Lead the development of automated web service tests that execute locally and as part of the CICD pipeline.
- Develop and implement a comprehensive performance testing strategy to ensure the system operates effectively while serving many simultaneous users.
- Introduce static analysis tools to identify potential code quality issues to span both the developer workflow (IDE plugins, CLI build tools) and within the CICD pipeline.
- Make analytics visible - including code quality metrics, coverage, test pass rate, etc. Push metrics to existing dashboard/monitoring tool (Dynatrace).
Required Experience and Skills
- Experience in developing unit and integration tests for RESTful web services developed using Java, C#, NodeJS, Typescript or similar, and having those test execute in a CI/CD pipeline such as Azure DevOps
- Excellent written and verbal communication skills to understand system functionality that may not be well documented through conversation with the development team and stakeholders.
- Mastery of automated UI tests using a tool such as Cypress, Appium, or Selenium where test behavior was executed across multiple browsers (both mobile and desktop).
- The candidate must have experience with developing and executing load tests, with related experience monitoring and identifying potential system bottlenecks.
- Skilled in C# and/or Java and has knowledge of related test frameworks.
- A history of working efficiently and effectively with remote teams both state-side and abroad
- Must be able to work in the US without company sponsorship.
Preferred Knowledge and Skills
- A confident, consultative approach
- Experience in automating compliance checks for ADA, WCAG, or other accessibility standards (highly desired)
- Has utilized BDD tools such as Cucumber, , or similar
- Has implemented UI testing with an AI-driven testing tool such as
Future Coworker Wish List
We asked our team members what they wanted in a new coworker. We feel this gives a potential candidate a feel for our team and ensures our team has a voice in the process. Here is what they said, word for word:
- Hunger for knowledge and striving to find elegant solutions to complex
- Flexibility, and the ability to adapt to new circumstances and
- The ability to teach and mentor other team members in areas in which they
- Ideally, they have personal projects they work on that demonstrate that they stay up to date with new techniques and
- The ability to maintain professionalism in stressful
- Effective and frequent communication with team members and project stakeholders.
- Being a quick learner.
- Self-motivation – someone who can get things
- Stays positive, and wants to see the whole team
- Hunger to grow and