I’ve been in the computer industry since 1991, initially as a localization engineer before I moved into QA. During the years I’ve been a tester, I’ve been mostly a Quality Assurance Engineer (or variations on that title, such as Quality Assurance Analyst or Software Test Engineer). More recently, I’ve been an SDET.
My career has included work on Windows, Mac, and Linux machines. In the realm of Windows, I have worked with practically every release of the operating system, up to and including Windows 10. I have been a Mac user since the days of Snow Leopard, and have done testing on that platform for over ten years as well.
Linux-wise, I’m most familiar with Debian as that’s what we run on our household Linux servers. Professionally as well as personally, I’ve also used Ubuntu in multiple iterations.
I have manual test experience on both iOS and Android devices, but no experience yet conducting automated testing on them.
My experience with automation is predominantly in Python and Java. In Python, I worked with BeautifulSoup and Selenium, doing mostly front-end web testing, but with some middle-tier stuff as well, mostly to verify that particular services returned things that agreed with what displayed on the web pages tested. In Java, I have predominantly done service testing, i.e., REST APIs.
Tools I have used to do automation include, most recently, Eclipse and IntelliJ. In Eclipse, I used Pydev to do Python. In IntelliJ, I’ve used both TestNG and Maven to run test suites.
I am familiar with Jenkins for running build jobs, both manual and via cron. I’ve set up Jenkins installs on my own dev boxes, as well as used it in a continuous delivery context for managing builds going to staging environments.
I have recent experience using Docker, and in particular, using it to set up images for doing Selenium testing.
I have experience testing tools built on a Vagrant platform, in conjunction with Virtualbox and Node. While I do not yet have experience actually building a Vagrant VM, I am comfortable with running Vagrant and Node shell commands in order to bring up a VM for testing.
I have about 9 months recent experience writing in Java, including two small BVT suites for testing endpoints on internally developed services and analyzing the JSON payloads that those endpoints provided. Before that, I had about five years of working with Python.
I am comfortable enough with PHP that I can read it, and delve into existing source code for WordPress plugins and themes. I’ve applied fixes to WordPress plugins, and have generated child themes when I haven’t been entirely happy with what a theme can do for me. For example, over on angelahighland.com, I have a commercially purchased theme called “Florence”. But I generated a child theme for it so that I could do customizations that the original theme didn’t allow.
While I do not necessarily call myself fluent in any non-English language, I’ve worked with enough localized products at this point that I’m comfortable testing in any language that involves Roman characters. In particular, since I have studied a lot of French and to a lesser degree German, I can sometimes catch grammatical errors in those two languages. This has proven helpful when I’ve needed to work with localization specialists on previous jobs.
My WordPress experience comes from years of hosting several WordPress blogs on murkworks.net, the tiny ISP my wife Dara Korra’ti and I run. We host several small community neighborhood blogs, one for the Lexington Fantasy Association (a sci-fi fandom group in Kentucky), my wife’s professional music site, and my own professional author site.
As is necessary for self-hosted WordPress sites, we have the usual LAMP stack. This has given me plenty of opportunity to get familiar with the Linux command line, how to run Apache, how to deal with a MySQL database, and how to deal with PHP.