Miscellaneous / Behavioral Flashcards
Do you have a desire to learn any new technologies?
I’m always excited to learn new technologies for either learning purposes, or to increase productivity.
Definitely if I discover a new tool that makes me more productive in something I’ve already been doing (like perhaps SoapUI instead of manually packaging and collecting API requests via Postman), I’m a happy person.
I have my favorite languages and tools. In my personal projects I do mostly full stack web development, using Ruby/Rails, JavaScript, HTML and CSS.
I’ve built a few small projects that I’m always looking to add functionality to. I also have a big project that I am building from scratch. I use git/BitBucket mostly for version control.
I use a few services personally just to get more familiarity with them: administering my own mongodb replicate sets, running local Teamcity, integrating AWS (S3, EC2) into my Rails projects, standing up my own Apache web servers using vagrant/trusty-ubuntu (base box), writing Bash scripts, I’ve done some iOS development (wrote a really simple game back in Xcode 5 with Objective-C and cocoas2D, and a simple messaging app over Bluetooth).
I’ve been getting into penetration testing with Kali Linux and Python. I’m going through the W3C tutorial for a flappy bird clone in JavaScript.
Basically, there’s always something to get better at and to work on, and they all contribute to my overall understanding of distributed systems and web technologies.
I’m on Coursera a lot, PluralSight, Railscasts.
What helps you learn and grow as a QA engineer?
The general idea of QA as “Operational Efficiency”
Leading professionals - James Bach, Cem Kaner, Michael Bolton, James Whittaker, Noah Sussman, Janet Gregory, Lisa Crispin, Brian Marick, etc.
How Google Tests Software was an eye opener.
SQLite’s code base is a nice example of well-tested software.
Jason Gorman’s “Hype Free Software Design” is a great book.
Twitter feed for current trends
Indeed for keyword searches in a 50 mile radius
Books: Lessons Learned in Software Testing, Context-driven testing, Developsense, Session-based testing, How Google Tests Software
“Test-opcies” Michael Bolton term for anthropologically dissecting a testing session. How to optimize? Get better, improve process…
“Rapid Software Testing” by Bach and Bolton — a good idea of what testing is really like in the industry, context-driven and done under a variety of constraints.
You seem to come from a non-traditional background. How did you go from English and Classics to technology?
I’ve always been interested in computers and technology. I grew up with the rise of the PC as a real consumer product. My first computer was one that worked out of the box — Gateway 2000.
I did QBasic and Visual Basic as a teenager, wrote a couple apps for AOL. Got into telecommunications. Followed the Kevin Mitnick saga.
But literature and language has also always been a passion of mine, so when I forced to choose a major I pursued that, with the goal of becoming a professor.
Throughout my education and my relationships with my professors, I got really turned off by the education “industry” — competitive tenure-ships, funding restrictions and student engagement requirements, etc., and with the way the humanities departments were turning. Less rigorous in general, less about original research and ideas. I studied literature and language a bit more rigorously than most folks — semantics, logic and mathematics, philology and philosophy.
Forced to choose a career, I decided law could use the textual reading and critical thinking that I’d been practicing, so I did a year of law school. Again, disappointed with the industry/business/practice side of it.
So all this time, I noticed that a lot of my friends who were computer science and MIS majors were loving their careers, and during a conversation one of them mentioned that they needed a QA intern, and that I should check it out. And I loved using the most recent technologies, and got real excited about the technologies that were really breaking through at the time — Facebook, Twitter, Google…
Well, I fell in love with it, and it re-ignited my interest in programming. So because I was a Temple graduate and had taken the requisite math classes, I went back to Temple while I was interning and took some computer science classes.
The company didn’t offer any tuition reimbursement so when I moved into FTE I had to really concentrate on that, but I took all the requisite classes to get into a CS masters program, which is something I plan on doing at some point in the future.
Since then, see above — side projects and a professional career for the past six years.
What are your strengths? What are your weaknesses?
Example: you’re a perfectionist, could be a strength or a weakness. Trying to deliver the highest quality product possible (attention to detail). Attention to detail, while good, but it can be a weakness, because I spend extra time that is already diminishing in its return.
Why are you looking for other opportunities?
Talk about things that specifically attracted you to this company, and that you don’t have any problems with your current position or team.
Give an example of a time you had a disagreement with a coworker and how it was resolved.
Find a time when you were wrong and were persuaded by your ‘opponent’.
The Director of Development wanted to introduce functional automation for the web app. He wanted me to find a tool that could be easily adopted by the rest of the non-coding team. I suggested Ruby and Selenium.
He insisted on using a Record and Playback tool, and asked me to research and do a CBA of several. I argued with him a bit on this saying that the brittleness of the tests wouldn’t be worth the time spent on doing the R&P. But we both agreed that we wanted the rest of the team to be able to adopt the tool.
We came to an agreement on Selenium Builder/IDE, which used Selenium and was extensible by WebDriver code. It actually helped to teach the team about locating and selecting elements, and formed a nice bridge into using Ruby/Selenium exclusively.