Hilary Weaver - He Doesn't Like You

Post on 22-Apr-2015

414 views 1 download

description

 

Transcript of Hilary Weaver - He Doesn't Like You

He doesn't like you!I don't like you either!

QA and Dev don't have to be enemies!

Why we don't get along, and how we can so nobody loses an arm to a lightsaber!

@g33klady

I am...Hilary Weaver aka

@g33klady on TwitterBlog: g33klady.wordpress.com

@g33klady

@g33klady

TOTALLYNOT HER

FAULT!

@g33klady

BackgroundArt schoolComputer scienceDorkatronBlah blah blah@g33klady

My first meeting with devs

@g33klady

I've only been a QA for a week and I've found so many bugs!

Fast forward...

@g33klady

“Meet Hilary, our QA...” or “Hey you're that awesome QA!”

How did I get here?

@g33klady

●“They don't understand the process”●“They don't even keep up with the industry”●“They're not helpful to me”●“They're jerks!”

What do they mean?

How we can all work together to be the most awesome software development teams in the

world!!!

“They don't understand the process”

@g33klady

●Writing the code●Building the architecture●The overall SDLC

“I need this RIGHT NOW!”

Do you like programming?

● Pair Programming● Code Reviews

● Your Code● Their Code

@g33klady

No interest in programming?

● Learn the basics● ProgrammingBasics.org● Google “learn the basics of programming”

Knowing how the underlying structures work is important!

@g33klady

Gotta know the structures!

@g33klady

Regardless...

● Be more involved in the SDLC● ALL PLANNING MEETINGS!

● Pair testing● Sit as a team

@g33klady

Worst layout ever

@g33klady

Devs

QA

Regardless...

● Be more involved in the SDLC● ALL PLANNING MEETINGS!

● Pair testing● Sit as a team● Review support tickets● On-Call

@g33klady

“They don't understand the process”● Get to know coding concepts● Get to know and understand the architecture of your application● Pair program on their code or yours● Code review their code or yours● Be involved in every step of the SDLC

@g33klady

“They don't understand the process”

● Pair testing● Sit together● Review and learn from support tickets● Be an on-call

@g33klady

<RANT>

@g33klady

@g33klady </RANT>

“They don't keep up with the industry”

@g33klady

“I never see them outside of work”

● Community involvement● User groups● Conferences

Developer user groups

● Learn about latest techniques and technologies the devs are using● Test Invaders● Always go out after!

@g33klady

Get to know devs as “humans”!

Testing user groups

● Solidarity● Broaden your horizons● Create a user group if there isn't one!

@g33klady

Non-testing conferences

● Look for testing tracks● Learn about what your devs learn about● Be a standout

@g33klady

The dreaded... Public Speaking!● Lightning talks● Submit to speak at a conference

@g33klady

If we want things to change, we have to be willing to change

ourselves

“They don't keep up with the industry”

● Keep up with learning new things!● Be a test invader ● Go to, or create, tester user groups● Go to conferences, even non-testing ● Give talks at UGs and conferences● Get uncomfortable

@g33klady

“They're not helpful to me”

@g33klady

No more “it's broken; fix it”. EVER.

● Digging deep● Taking ownership

Code structure = multiple paths

@g33klady

Enter SSN

Check if Past Client

Past Client? DisplayMessage

Otherstuff

Yes

No

@g33klady

Know the ins and outs● All potential points of failure● Architectural structure● Integrations

@g33klady

Be the authority on your application

Learn about your devs● Sloppy devs

● No interest in unit testing● Easy to spot bugs● “job security” bullshit

● Devs with a quality focus● Bugs are harder to find● Digging deep is important

@g33klady

How do I “dig deep”?● Pore through logs● Step through the code with the dev● Use any tools you can

● Fiddler is my go-to@g33klady

Priority and SeverityIf I were this dev, I'd hate QA tooDon't be that guy!

@g33klady

Priority and Severity● Document the definitions and expectations

● WITH devs!@g33klady

Everyone has the same definitions = less likelihood of contentionDon't cry wolf, they'll stop listening

Typo != App Crash

@g33klady

Everyone suffers if you focus on grammar before functionality

Prioritize Testing● Get the more difficult things fixed ASAP● Typo = minutes; Crash >= day(s)

@g33klady

Functionality first means less devs rolling their eyes!

FOR THE LOVE OF ALL THAT IS GOOD IN THIS

WORLD!

Write great bug reports!

@g33klady

It's like your math homework – SHOW YOUR WORK

Good Bug Reports FFS!

@g33klady

Write bug reports as if for memory-wiped future you● What steps did you take?● What doesn't produce the bug?● Screenshots + logs + debugger output● Leave ZERO questions

I'm not supposed to...● “QA” vs tester● Company policies

● Do the devs know?● Do they just think you're lazy?

@g33klady

“They're not helpful to me”● gain insight into your devs and the codebase● pore through logs● walk through the code with the devs● use tools!● Standardize priority/severity

@g33klady

“They're not helpful to me”

● Prioritize your testing● Be legendarily awesome with your bug reports● take ownership and figure it out● Communicate the process

@g33klady

“They're jerks!”

@g33klady

● Tactfulness● And...

Don't be a dick

Help everyone in the organization understand the benefits of testingFocus on quality at every step

@g33klady

Symbiotic relationshipWe are each a necessary evil for the other. @g33klady

“So to sum up:● QA forces me to change my headspace. And I hate it for that.● QA points out my flaws as a developer. And I hate it for that.● QA is necessary and makes software better. And I hate it most of all for

that.”

@g33klady http://codebetter.com/kylebaley/2012/01/30/qa-a-hillbilly-love-story/

How do we foster these relationships?

● Play together● Lunchtime social stuff● Find common non-work interests

@g33klady

But what about THEM?If we want things to change, we have to be willing to change too

@g33klady

“As a man changes his own nature, so does the attitude of the world change

towards him... We need not wait to see what others do.”

-Gandhi

● Get to know programming, and the infrastructure and architecture of your application● Work and play together with your devs● Continue to improve yourself and your craft● Take ownership and dig deep into issues● Be amazing and legendary● Also, don't be a dick

@g33klady

How to be awesome

@g33klady

We CAN all get along, but it has to start somewhere...

@g33klady

Hilary Weaver | @g33klady g33klady.wordpress.com