DMer Sabbatical: Engineer Writes New Quality Assurance Testing Framework

DMer Sabbatical: Engineer Writes New Quality Assurance Testing Framework

Penny Curich, Quality Assurance EngineerSabbaticals are common practice in the academic world, but just 5 percent of companies provide paid sabbaticals, according to the Society for Human Resource Management’s 2015 Employee Benefits Survey. At Digital Measures, we’re among the fortunate few, with a paid month-long sabbatical for every seven years of service. When Penny Curich, Quality Assurance Engineer, passed her seventh anniversary as a DMer, she set out to design a project for her sabbatical.

After considering several topics of interest to her, Curich developed a plan and took her sabbatical in April. During her month away, Curich authored software designed to make quality assurance testing more efficient. She recently shared her insights on planning and managing a sabbatical.

Q. How did you approach your sabbatical?

A. It’s been a long time since I worked on my own thing—since college. So I wanted to pursue a programmatic interest rather than my regular, prescribed work. Sometimes we have to quell our curiosity at work in order to get something important done, or reach a fixed goal or deadline. So I wanted to pursue something that struck my curiosity.

It had to be interesting, but also a surmountable challenge in a month, and actually useful. If it’s not useful, just pure theory, I’m not interested. One topic I considered had a lot of practical application for Digital Measures, but I didn’t want to put research and development pressure on a sabbatical project. Also, I wasn’t enthusiastic about the math behind it. I set that idea aside because there would have been too much to learn, without a stitch of execution. I love coding, so I wanted to do that.

Q. What project did you choose, and why?

A. In Quality Assurance, our de facto tool was falling short—it was an issue for the whole Digital Measures QA team, as well as the wider QA community. There’s a bottleneck because we run a fairly sophisticated suite of tests through a framework that uses the wrong paradigm. I went to a conference this spring and the topic came up. “We have all these suites to run, they take a couple of hours each. In the cloud, you could parallelize the processing and complete testing in a fraction of the time.” So I set out to solve the problem of how to get this suite to run quicker. It was a straightforward problem, and as an engineer, I have the skill set to solve it. So that became my sabbatical project.

Q. How did you plan your time away?

A. We’re always working toward deadlines, so it’s hard to say that the pursuit of a sabbatical is more important than the work in front of us. It’s a full month off, so I had to plan at least a quarter in advance. It affects projects as well as team members.

I’m a coder and engineer first, but joined Quality Assurance when John Kieffer, Quality Assurance Lead, was brought on to test and also to put an automation suite in place. I felt I could help write the code needed to identify bugs. My sabbatical project didn’t have an “aha moment.” It was more like serendipity. It was pretty obvious that we could improve what we had, given an opportunity. My sabbatical provided that opportunity.

Q. What was it like to work on a self-directed project?

A. I found out I’m hard on myself as a boss! Laughs. Even though I did a fairly good job of scaling the project down to a manageable scope, I spent the first two days going crazy trying to get stuff done. And I had to toss it all out, then take a different approach. I quickly discovered that working eight hours a day on a project like this is unrealistic—for this project, five to six hours a day worked best. And I missed talking to people.

Q. Describe the outcome of your efforts.

A. I wrote an enterprise-level framework using Java that allows us to leverage multi-threading to speed QA testing. My initial goal was to publish three modules, but I scaled back my project as I worked. It’s now an open source project, and the end goal was to get a core module published by the end of my sabbatical.

The module that I completed is used in a prototype that can test our software more quickly; at the same time, this framework can generate load against the system, so our testing now accomplishes more, and with no additional development effort. Now that I’m back, QA team members are publishing more open source modules to improve on the prototype.

Q. Any advice to share for others planning a sabbatical?

A. Don’t be afraid to fail—you’ll learn something in the process! And have three different goals: a minimal goal that must get done, a nice to get done, and a goal that you’ll perhaps get to or follow up on after the sabbatical. It takes the pressure off. I picked a project, but needed to reshape my scope and expectations as I went. In the end, I completed a piece of software that solves a really practical problem. I’m excited about being an open source author. I’m also considering speaking about it at a future conference.

Leave a Reply

Your email address will not be published. Required fields are marked *