A Q&A With QA Managers
A Spotlight on Kenneth Macalino, Leaf Group
By Janna Sokolow
This time on our software QA Manager Series, we are focusing the spotlight on Kenneth Macalino. He works as a Quality Assurance Manager at Leaf Group, an Internet media company that creates broadcasting platforms for both media and commercial outlets. Their client base includes the likes of major media companies such as eHow, Society6, and LIVESTRONG.COM.
Ken is the Scrum Master of a team of ten QA testers and fifty developers channeling their efforts on a multitude of projects at any given time.
What are the main challenges you’re dealing with at the moment?
Our main challenges are creating better monitoring for all our verticals [media channels] and maintaining automated tests.
Is there anything you do to keep your test management skills sharp? – What blogs/websites do you read? What conferences have you attended or plan to and can recommend?
I read blogs from Saucelabs, Netflix, and Amazon. In terms of conferences, I highly recommend the Selenium Conference. Conferences like this one really help you learn from other people in the field of Selenium automation and feature hands-on workshops to learn a new skill or two. It’s a good place to start to see what other people are doing and what their test processes are. You can also get a good feel for how they use the tools out there for testing.
What is your balance of manual vs. automated?
Our testing operation is comprised of about 80 percent automation and 20 percent manual.
What kinds of testing do you do?
We do a combination of all types – regression, exploratory, security, usability, and stress testing.
Which method/tools do you use for each kind of testing?
For regression and daily sanity checks on the UI side, we use WebDriverio and Appium for mobile apps. The front end is working with TDD with Cucumber and Karma. For the API side, we use Mocha, Chai, and handwritten tools to test JSON responses. For Stress/Load tests, we use Apache Benchmark and Vegeta.
Do you test all browsers? If not, which ones? Do you check both mobile and web apps?
We test on all browsers. Since we are a Media Company, and our clients’ readers could be using any sort of device, we check both Desktop and mobile.
What is the size of the development team?
We currently have 50 developers on our team.
Is your QA operation integrated into the development, or they work separately?
Our QA team is fully integrated into development. As a team, we are in charge of quality assurance, Release Management, and Monitoring.
Agile or Not?
“It’s crucial that every developer has to buy into this concept.”
Does your company work in agile development? If so, please explain the process, and how your company integrated it in the first place.
The QA team works in an Agile style of development – in terms of writing features, stories, and tools for our automated tests. We have a planning meeting at the beginning of the sprint where we add points to the stories in the backlog and then add them to the sprint. We also do daily stand-ups, which keep meetings quick and concise, to see if there are any blockers, [obstacles to the tasks at hand] and then continue on with our tasks. At the end of our sprint, we have retrospectives where we state what we did well and what we could improve upon, followed by action items. I am the Scrum Master and help out wherever the team needs help.
The Back End Team follows the same routine as the QA team.
Front End Team does more of a kanban style [which creates limits on the amount of work in progress to reduce bottlenecks].
Can you describe any unique processes or self-developed tools you use in your testing operation?
All our API tests are handwritten and maintained by the QA team. The QA team is also in charge of Release Management and Monitoring of our apps. Our QA members all know how to write code and since we are all on a common platform (NodeJS) we all help out in terms of updating, maintaining tests.
What are you most proud of in your testing operation?
Most proud of? I’m most proud of how many tests we have on every level. Unit, Integration, and End-To-End. This really allows us to implement Continuous Integration for all of our apps.
“Most proud of? I’m most proud of how many tests we have on every level.”
In terms of strategy – how would you like your company’s testing methods to evolve down the line?
Down the line, I would like us to have a Common QA Platform that anybody can use from any Business Unit inside the company. To do this, we’ll need to make sure tests are happening at every level of development which is why it’s crucial that every developer has to buy into this concept.
So, when you’re not managing your test team, what are you up to?
If I’m not managing my test team, you could probably find me hanging out with my family and working on getting better at my hobbies – which include Brazilian Jiu Jitsu and working out at the gym.
Sounds cool! Last question, what was the biggest, most important bug you ever caught – or didn’t catch?
The most important bug that I caught would be a Front End memory leak that wasn’t uncovered until it hit our Master Branch Staging Environment. The memory leak wasn’t caught because the feature branch environment was not getting enough traffic from the exploratory tests we do. So when our Saucelabs Tests started to run after the branch was merged into our master staging branch, it had enough load to catch the leak. Luckily this was our staging branch which is a replica of prod.
Thank you so much to Kenneth Macalino from Leaf Group for allowing us to interview you!