Testing Engineer’s Career
Path
gaoliang@baidu.com
Typical Interview Question
• Do you know programming
• Answer: Yes, a little
• Which language do you know the best
• Answer: I know C a little
• How many lines of code have you written
• Answer : Umm.., about 300 lines
• Do you know Java or .NET,
• Answer : No
• Do you know Linux
• Answer : No
• Do you know networking
• Answer : I installed Windows XP on my PC….
• Ok, you can work for us as testing engineer
Tester’s Dilemma
• Testing is not cool
• Tester is second class when compared with
developer
• Developer using me as servant
• I don’t see I can make difference in our company
• Testers are keep coming, they are young and
better than me.
• 我在吃青春饭, I don’t know where my career
path is
• OK , I need to be a developer and write code!
Top Management's Dilemma
也知道, 在招到好的 工程 是有多你 现 测试 师 难
- 北京研究所副所华为 长 2008
It took Juniper 6 month plus to find a new QA
director
Career Story of Ting
• Graduate at 1990, only job found is the tester at Sun
• Join Cisco as tester in 1993, then test automation
engineer (design Cisco’s automation framework)
• Cisco grows from 2000 to 40000 from 1993 to 1998
• Join Netscreen as the 1st testing engineer at 1998
• NetScreen went to Nasdaq on 2001
• Grow with NetScreen as testing lead, testing manager,
testing senior manager and testing director
• Found Sigma at 2004, served as CEO as today
Lesson
• You may have to stay long enough to be
competitive.
What Is a Career Path Anyway?
• Career path is not a career turn
• Your past experience can help you in your
current position.
• You current position need skills than can only
be acquired though time.
• In your current position, your strength is
other candidate’s weakness.
Enemies on Your Career Path
• Process: What can be managed by process
(standard test case library, all kinds of checklist),
will not be something you can do for a very long
time.
• Machine: Don’t stay very long in a job that can be
done by Machine (functionality test cases
execution)
• Outsourcing: non-core business will be
outsourced
• Every cooperation will use “Process”, “Machine”
and “Outsourcing” whenever possible
Bad Choices on Your Career Path
• Be a developer, start learn to code
Using your weakness to compete with other’s
strength.
If you are not doing well in testing, how do you
know you will do well in coding, or anything?
• Don’t’ know what to do so staying in where you
are for a long time
• Don’t know what to do so keep jumping places on
different roles
• Change only because of Money
• Be a business man, doing trade (you are where
you are for a reason)
Good Choices on Your Career Path
• Doing well in your current position, prove
yourself, then climb the cooperation ladder.
• Doing well in your current position, build
reputation in the community, then wait for the
opportunity to come
Set up Your Career Goals
• You want to be stable, a job that can grow
experience with time, the longer you do it, the
more stable is the job.
• You want to grow, to be challenged. You want
to have bigger achievement in your life
Be Happy As An Engineer: You Can Be
• System and Solution testing engineer
• Build Master
• Release Engineer
• Scripter/QA Architect
Build Master/Release Engineer
• Build master takes the code, builds it into a set of files that can
be utilized in a desktop or on web server
• Write scripts and tools in multiple languages (Perl, Python, Shell,
VBScript, Javascript) fluently to automate very complex
build/release
processes - different tools for different jobs.
• Be the owner of source control management, build and release
process
Design, develop, document and maintain scripts for build and
release processes
Work with Development team for any source code control
activities
Interact with QA on smoke and automation testing
Collaborate with IT for environment, deployment and rollout
activities
Mentor development, QA and IT teams; ensure they follow
defined processes
System and Solution Testing Engineer
• Accumulate customer deployment scenarios
overtime, design highly customer oriented
system end to end level test cases.
• Understand customer’s daily operation needs
• Understand multiple protocols and their
interactions.
• Familiar with multiple companies products,
testing equipments.
• Able to build large scale simulators to
simulate multiple protocols clients
Scripter/QA Architect
• Design automation scripts is as same level as
design a product.
• Design patterns, object oriented all apply.
• Able to design an automation framework
makes you a QA architect.
Responsible for companies overall QA
infrastructure.
• Mastering multiple script language
(TCL/Perl/Python/Ruby) can make you to be
very competitive over time
Climb Up the Ladder: You Can Be
• Testing Management
– Test team manager/Senior manager/Director
• Product QA management
• Release Manager
• Consultant
• Project Manager
Testing Management
• Manage people
• Manage testing process
• Manage testing projects
Product QA Management
• Be responsible for product line QA
• ISO 9000 etc.
Release Manager
• Responsible for software release process
• Work with planning and delivery teams to prepare and publish overall release
schedules, including high level timelines and milestones
„« Proactively monitor progress throughout all stages from scope, analysis
through to testing and sign-off, implementation and post-live support.
• Identify conflicts between projects and releases or variances to plan and work
with individual project and/or delivery managers to ensure timely resolution of
issues and action plans to recover slippage and/or prevent future re-occurrence
• Agree and manage changes to release contents/scope throughout release
lifecycle
• Ensure release communications (e.g. Release Notes) are made available to
internal parties and external clients (via Project/Client Managers) according to
the published timetable
• Oversee internal sign-off and management company acceptance of release
including confidence testing
• Chair release review, release readiness checkpoint and post live issue forums
• Conduct post-live release review to identify root cause of any issues, areas for
improvement and ways to increase release quality
Consultant
• Testing house
• Outsourcing company
• Build your own testing house
• Training and testing consulation
Project Manager
• Managing various projects.
• On time with Quality.
Some People Say…..
Remember:
• Your past experience can help you in your
current position.
• You current position need skills than can only
be acquired though time.
• In your current position, your strength is
other candidate’s weakness.
• Prove yourself before change
Thank you!

Tester career path

  • 1.
  • 2.
    Typical Interview Question •Do you know programming • Answer: Yes, a little • Which language do you know the best • Answer: I know C a little • How many lines of code have you written • Answer : Umm.., about 300 lines • Do you know Java or .NET, • Answer : No • Do you know Linux • Answer : No • Do you know networking • Answer : I installed Windows XP on my PC…. • Ok, you can work for us as testing engineer
  • 3.
    Tester’s Dilemma • Testingis not cool • Tester is second class when compared with developer • Developer using me as servant • I don’t see I can make difference in our company • Testers are keep coming, they are young and better than me. • 我在吃青春饭, I don’t know where my career path is • OK , I need to be a developer and write code!
  • 4.
    Top Management's Dilemma 也知道,在招到好的 工程 是有多你 现 测试 师 难 - 北京研究所副所华为 长 2008 It took Juniper 6 month plus to find a new QA director
  • 5.
    Career Story ofTing • Graduate at 1990, only job found is the tester at Sun • Join Cisco as tester in 1993, then test automation engineer (design Cisco’s automation framework) • Cisco grows from 2000 to 40000 from 1993 to 1998 • Join Netscreen as the 1st testing engineer at 1998 • NetScreen went to Nasdaq on 2001 • Grow with NetScreen as testing lead, testing manager, testing senior manager and testing director • Found Sigma at 2004, served as CEO as today
  • 6.
    Lesson • You mayhave to stay long enough to be competitive.
  • 7.
    What Is aCareer Path Anyway? • Career path is not a career turn • Your past experience can help you in your current position. • You current position need skills than can only be acquired though time. • In your current position, your strength is other candidate’s weakness.
  • 8.
    Enemies on YourCareer Path • Process: What can be managed by process (standard test case library, all kinds of checklist), will not be something you can do for a very long time. • Machine: Don’t stay very long in a job that can be done by Machine (functionality test cases execution) • Outsourcing: non-core business will be outsourced • Every cooperation will use “Process”, “Machine” and “Outsourcing” whenever possible
  • 9.
    Bad Choices onYour Career Path • Be a developer, start learn to code Using your weakness to compete with other’s strength. If you are not doing well in testing, how do you know you will do well in coding, or anything? • Don’t’ know what to do so staying in where you are for a long time • Don’t know what to do so keep jumping places on different roles • Change only because of Money • Be a business man, doing trade (you are where you are for a reason)
  • 10.
    Good Choices onYour Career Path • Doing well in your current position, prove yourself, then climb the cooperation ladder. • Doing well in your current position, build reputation in the community, then wait for the opportunity to come
  • 11.
    Set up YourCareer Goals • You want to be stable, a job that can grow experience with time, the longer you do it, the more stable is the job. • You want to grow, to be challenged. You want to have bigger achievement in your life
  • 12.
    Be Happy AsAn Engineer: You Can Be • System and Solution testing engineer • Build Master • Release Engineer • Scripter/QA Architect
  • 13.
    Build Master/Release Engineer •Build master takes the code, builds it into a set of files that can be utilized in a desktop or on web server • Write scripts and tools in multiple languages (Perl, Python, Shell, VBScript, Javascript) fluently to automate very complex build/release processes - different tools for different jobs. • Be the owner of source control management, build and release process Design, develop, document and maintain scripts for build and release processes Work with Development team for any source code control activities Interact with QA on smoke and automation testing Collaborate with IT for environment, deployment and rollout activities Mentor development, QA and IT teams; ensure they follow defined processes
  • 14.
    System and SolutionTesting Engineer • Accumulate customer deployment scenarios overtime, design highly customer oriented system end to end level test cases. • Understand customer’s daily operation needs • Understand multiple protocols and their interactions. • Familiar with multiple companies products, testing equipments. • Able to build large scale simulators to simulate multiple protocols clients
  • 15.
    Scripter/QA Architect • Designautomation scripts is as same level as design a product. • Design patterns, object oriented all apply. • Able to design an automation framework makes you a QA architect. Responsible for companies overall QA infrastructure. • Mastering multiple script language (TCL/Perl/Python/Ruby) can make you to be very competitive over time
  • 16.
    Climb Up theLadder: You Can Be • Testing Management – Test team manager/Senior manager/Director • Product QA management • Release Manager • Consultant • Project Manager
  • 17.
    Testing Management • Managepeople • Manage testing process • Manage testing projects
  • 18.
    Product QA Management •Be responsible for product line QA • ISO 9000 etc.
  • 19.
    Release Manager • Responsiblefor software release process • Work with planning and delivery teams to prepare and publish overall release schedules, including high level timelines and milestones „« Proactively monitor progress throughout all stages from scope, analysis through to testing and sign-off, implementation and post-live support. • Identify conflicts between projects and releases or variances to plan and work with individual project and/or delivery managers to ensure timely resolution of issues and action plans to recover slippage and/or prevent future re-occurrence • Agree and manage changes to release contents/scope throughout release lifecycle • Ensure release communications (e.g. Release Notes) are made available to internal parties and external clients (via Project/Client Managers) according to the published timetable • Oversee internal sign-off and management company acceptance of release including confidence testing • Chair release review, release readiness checkpoint and post live issue forums • Conduct post-live release review to identify root cause of any issues, areas for improvement and ways to increase release quality
  • 20.
    Consultant • Testing house •Outsourcing company • Build your own testing house • Training and testing consulation
  • 21.
    Project Manager • Managingvarious projects. • On time with Quality.
  • 22.
  • 23.
    Remember: • Your pastexperience can help you in your current position. • You current position need skills than can only be acquired though time. • In your current position, your strength is other candidate’s weakness. • Prove yourself before change
  • 24.