views:

423

answers:

3

Testers suppose to write test plan, write test cases, file bugs, and verify bug fixes. A senior tester should do things beyond that. Here are things I can think of that a senior tester should do:

  1. Mentor other testers.
  2. Create the test strategy for the whole team.

What are the other responsibilities of a senior tester that you can think of?

+13  A: 
  • Work with the Architect to design tests
  • Evaulate and test Testing frameworks/harnesses
  • Testing research and be a SME on testing in general
  • Act as testing "tech lead" for testing group
  • Continually refactor existing testing processes to improve automation and reduce testing times
Dave Swersky
why also not to develop/design testing frameworks? :)
Mihail
I'd say a "senior tester" is primarily interested in consuming existing frameworks. That same senior tester would certainly be able to contribute to open-source or private framework development efforts, but the majority of testers wouldn't (and shouldn't) reinvent the JUnit/NUnit/XUnit wheel.
Dave Swersky
+7  A: 

I have an open job specification for what we call a Senior Test Engineer - our requirements are the following. Some are quite general, some are specific to our particular environment...

  • Lead the overall testing effort, periodically directing other test engineers
  • Work closely with developers, business stakeholders and act as an integral part of the software development team using an iterative development process.
  • Create Test Strategies and/or Test Plans.
  • Provide test estimates and maintain testing schedules.
  • Develop test cases, test procedures; and create test data sets. Use automation and other testing tools, as appropriate.
  • Perform the various types of testing using both black and white-box testing techniques:

    Integration testing Functional testing Qualities attribute testing (e.g.; Usability, Scalability, Performance, Compatibility, etc.) User Acceptance Testing assistance as needed, with business partners

  • Identify, research, report, track and verify software defects proactively and comprehensively. Participate in root-cause analysis of defects

  • Measure software complexity, size, stability, and quality; compute and analyze metrics to identify trends, test coverage, cause-and-effect relationships, etc.

  • Adopt a rigorous, quantitative approach to measuring and delivering software quality

  • Follow (Company) Testing Policies, create and track CT high risk change applications completing all required artifacts

  • Manage the test environment including controlling builds into the environment. Proven ability to multitask, manage concurrent global project efforts, and work under pressure with minimal supervision in a team environment.

Alan Moore
+1 for a real-deal open req!
Dave Swersky
+4  A: 

+1 for Dave, nice answer.

Something I greatly miss on most QA teams (which is why I tend to call them testing teams instead of QA teams...) is involvement throughout the entire project lifecycle. I think it's important for QA to be involved as early as requirements gathering, partially to help ensure quality of the requirements (Are they complete? Are they consistent? Will IT be able to understand them?) but mostly to ensure that QA really understands the system they are supposed to test. I have been on too many projects where QA gets some software dumped in their lap quite close to ship date and doesn't really know how to properly test the system because they don't know much about exactly how it's supposed to work.

I would expect that a Senior Tester (QA Engineer) would push for early involvement in the project to prevent that type of problem.

Eric J.