Senior Quality Engineer

We are looking for an experienced quality engineer to join an organization with good testing practices already and take things to the next level, so we can help change how school districts across the country operate and run every single day. You should have a passion for proper testing practices and technologies and a desire to help engineers across the team test better. If you are tirelessly curious and want to have a huge impact with the work you do every day, we could be a great fit!

What it's like to work here:

Quality Engineering is included from the beginning.

We like our project teams small and nimble, consisting of 2-3 engineers with Quality Engineering embedded within them all. Projects range from real-time search and export tools, database and server optimization, to building our front-end system. Teams rotate regularly so you’ll be working with different people every few sprints.

We believe quality is a team activity that works best collaboratively. You will be a critical part of establishing our quality engineering practice as the first official Quality Engineer. Embedded into project teams and participating in the full project lifecycle, you will help define acceptance test criteria, advise teams on writing more testable code and tools and techniques to best implement test coverage, and be responsible for maintaining the testing technologies and frameworks we use. You will also own and implement end-to-end regression test suites and help establish and collect quality metrics and benchmarks.

We take code quality seriously and are constantly improving our codebase. We have achieved and maintained 100% unit test coverage, with 90+% branch coverage! Every project we work on has dedicated time to address tech debt and we prioritize code quality initiatives on our product roadmap. Oh, and we never ship code without writing a full suite of tests.

We work with a solid set of technologies but are always learning new ones. Our current stack is a mix of Ruby (Rails, RSpec, Capybara) and Javascript (React, Redux, Jest, Enzyme) hosted on Heroku / AWS. We also spend every other Friday as a “hack day” to play around with new technologies, contribute to open source or build tools to improve our workflow.

We strive for light and flexible processes. Each team decides how they’ll get work done, but we try to ensure that working solo, together, remotely or in-office are all equally effective. Daily standups, sprintly retrospectives, pair programming, randomly assigned code reviews, and “mob reviews” of larger changes are some of the practices we use.

We believe that making great products requires collaboration and empathy. Not only do we work closely with our product and design teams, we make it a point to pay regular visits to our customers. To better understand the challenges our customers are facing, every few months we’ll spend a week directly supporting our client success team.

We are focused on creating a great work environment. Most of all, we work hard to make an environment where honest feedback, mutual respect, and personal growth are valued. We want to make sure everyone feels comfortable bringing their whole self to work.

We believe the best Engineering team is one that is diverse and inclusive. We believe that 10X engineers are born out of 10X environments. We have engineers at all levels and each of us come from vastly differing backgrounds, some traditional computer science and some such as classics or architecture. We believe a collaborative environment that values mentorship and teamwork builds a culture where people don’t feel alone and can learn faster and support each other. We support spirited discourse, not fighting over egos and aim to reduce knowledge silos and build more shared understanding so we can all work towards our mission of helping public school districts.

We need someone who will:

  • Help expand and refine our Quality Engineering practices, with an eye towards teaching engineers how to do testing better.
  • Be involved with project teams for the entire project lifecycle. Help teams make their code more testable and provide guidance on tools and techniques for testing the code.
  • Maintain the testing technologies and frameworks we use everyday.
  • Own and implement automated end-to-end regression test suites.
  • Spread your knowledge on testing best practices so you can help us all do better testing. We believe Quality Engineers aren’t the only ones responsible for testing!
  • Develop, collect, and refine quality metrics.
  • Articulate ideas and beliefs clearly to the team. Persuade, listen and guide debates to help reach a consensus.
  • Excel at getting the team to focus on the highest-impact quality initiatives. Lead delivery of major quality initiatives on clear timelines. Be proactive in identifying and clearing roadblocks for the team.
  • Nurture the technical and leadership growth of other engineers. Make others better through code reviews, pairing, documentation, technical guidance, and mentoring.
  • Applicants must be authorized to work for ANY employer in the U.S. We are unable to sponsor or take over sponsorship of an employment Visa at this time.

What you'll bring:

  • Intense curiosity and problem-solving nature — it brings you joy to chew through difficult technical problems and develop simple, clean code and architecture for complex needs.
  • Experience or willingness to be the first Quality Engineer and take good quality engineering practices to the next level.
  • Track record of building automated tests and helping engineers improve their testing practices.
  • Extensive experience with testing frameworks. Ideal if you have knowledge of RSpec and JavaScript testing.
  • Collaborative work style: you enjoy pair programming and learning with and from our team, and sharing knowledge with our team.
  • Ability to balance attention to detail with broader project goals and timelines.
  • Passion for building user-centric products.
  • Experience with testing SaaS enterprise applications is a strong bonus.