Friday, July 23, 2010

ServiceMagic - Software Quality Assurance Analyst

At ServiceMagic, the Software Quality Assurance team is committed to research, development, documentation and execution of testing efforts to successfully deliver strategic initiatives for our business. We test to ensure our web applications are in proper working order to provide an exceptional user experience and drive revenue for the company.

This person will be responsible for both testing and driving efforts to develop a more automated test capability that makes our test and release cycle faster and more effective. This is NOT strictly an automated tester role * we are looking for someone who can and will develop tools within or outside our current test automation toolset.

Therefore we prefer a candidate with a passion for test who also has some development experience, who has a deeper-than-normal-tester understanding of how code gets built, the ways it can fail and how to work with developers in a collaborative fashion to achieve our common goals.

Effective communication, collaboration and team work in a fast-paced, technical culture are essential for success. A track record of positive relationships with Product, Development, QA, Release and other team is essential.

Duties:
* Develop tools and assist in test automation efforts: review existing manual testing process; make recommendations and help automate repetitive steps (ex: spoofing hosts file for test environments, scraper for SM Session Dump tool, etc.)
o Build tools to support, improve and speed-up QA manual and automation testing for run time, smoke, performance/load and functional regression testing, performance and web security testing.
o Participate in automation team meetings and help drive assigned project areas within automation vision.
o Develop code review checklist and perform code reviews with other testers for new scripts.
o Review existing tools for functional regression and performance testing; research and make recommendations for additional coverage increase.
o Build up automation for search engine optimization (SEO) checks and help with regression scripting for functional coverage.
o Come up with a test approach for regression testing for infrastructure changes; integrate and drive test planning with Systems team scheduling.
o Organize and optimize reporting results (e.g., unifying all test execution reporting into OBI)

* Test web site and web application components for production release: review assigned open development items, create and execute test cases based on business need
o Test to learn more about the business and help test specific components for weekly releases.
o Work closely and collaboratively with developers while researching how to test a particular item or automate functionality.
o Analyze and research system error reports relating to application function. Escalate items that should be brought to business* attention, such as: high volume of errors that consistently seem to show up; or items that indicate a painful user experience; or where a quick, low-risk fix would be feasible.
o Analyze test execution trends and call out trends that indicate performance problems

Required Skills
* 2-4 years of experience testing multi-tiered web applications: black-box & gray box including thorough knowledge of web-based applications, concepts and technologies.
o Understands test strategy and planning, test case development, test case deployment and execution, test data, defect tracking, and test automation.
o Understands and can apply a variety of manual and automated testing techniques.
o Understands and can explain in detail web application infrastructure to include articulating in detail how to automate testing various web pages.
o Experience with XML, API*s, and SQL.
o Knowledge of various open source testing tools like cooxie, jMeter, http Watch, RESTClient or others.

* Technical programming skills from work or freelance experience that includes at least 1 year in any of the following: VB script, java, C#.net, C++, Perl and Unix shell scripting.
o Be able to create an automated test process using one of the above from scratch.

* Experience working in an Agile development setting with staged development, test and release processes
o After hearing a description of our development process/release cycle, be able to articulate the conditions under which a particular enhancement requires a re-test.

* Can navigate a relational database schema (Oracle, MS SQL Server, DB2) and can, when provided table and key structure, write SQL from scratch to retrieve a defined set of data.

* Can act as *customer advocate* when investigating defects found in production

* Team player; able to collaborate with others to achieve end-to-end product and process quality

* Able to work independently on multiple projects in a fast-paced setting

* Able to work under pressure with a high degree of professionalism and flexibility