automate your way to sanity in the chaos of mobile app development

41
W2 Session 4/15/2015 10:00 AM "Automate Your Way to Sanity in the Chaos of Mobile App Development" Presented by: Josh Anderson Dude Solutions Brought to you by: 340 Corporate Way, Suite 300, Orange Park, FL 32073 8882688770 9042780524 [email protected] www.sqe.com

Upload: techwellpresentations

Post on 02-Aug-2015

44 views

Category:

Software


0 download

TRANSCRIPT

Page 1: Automate Your Way to Sanity in the Chaos of Mobile App Development

 

W2 Session  4/15/2015  10:00  AM  

     

"Automate Your Way to Sanity in

the Chaos of Mobile App

Development"  

Presented by:

Josh Anderson

Dude Solutions      

     

Brought  to  you  by:    

   

340  Corporate  Way,  Suite  300,  Orange  Park,  FL  32073  888-­‐268-­‐8770  ·∙  904-­‐278-­‐0524  ·∙  [email protected]  ·∙  www.sqe.com

Page 2: Automate Your Way to Sanity in the Chaos of Mobile App Development

Josh Anderson

Dude Solutions Josh Anderson loves software. A beat-up TRS-80 changed his life, and Josh now spends almost every moment that he is away from his family figuring out how to better the craft of software. Solving hard problems and sharing those solutions with the community fuel his passion. Josh spent the past fifteen years in the trenches, learning how to build and lead effective and efficient software engineering teams. In an effort to pass his learnings on to others, he now co-hosts a podcast with fellow agile evangelist Bob Galen. You can find Josh at @nosrednAhsoJ (personal) and at @metahyphencast (podcast).  

Page 3: Automate Your Way to Sanity in the Chaos of Mobile App Development

4/6/15

1

Automate Your Mobile Development Ecosystem

Josh Anderson - 04/15/2015 @nosrednAhsoJ #MobileDevTest

What does that title really mean?

Page 4: Automate Your Way to Sanity in the Chaos of Mobile App Development

4/6/15

2

Agenda 1. Who is this dude? 2. Who we are and why we do it 3. The problems we ran into 4. Our solutions 5. Success stories 6. Take aways

How I ended up here…

Page 5: Automate Your Way to Sanity in the Chaos of Mobile App Development

4/6/15

3

My roots

Team work

Page 6: Automate Your Way to Sanity in the Chaos of Mobile App Development

4/6/15

4

My mission

Make the craft of software better for future generations.

The Business Case Why people gave us money

Page 7: Automate Your Way to Sanity in the Chaos of Mobile App Development

4/6/15

5

App-As-A-Service

Decent scale BUH-ZILLIONS 3,000,000,000 ADS 2,000,000,000 PV

60,000,000 UNIQUES

Page 8: Automate Your Way to Sanity in the Chaos of Mobile App Development

4/6/15

6

Answer The

BIG

question

Eyes wide open...

Page 9: Automate Your Way to Sanity in the Chaos of Mobile App Development

4/6/15

7

Now do it hundreds of times

Our Problems Yes, we had a few...

Page 10: Automate Your Way to Sanity in the Chaos of Mobile App Development

4/6/15

8

Our prioritization strategy

Why so much fear?

Page 11: Automate Your Way to Sanity in the Chaos of Mobile App Development

4/6/15

9

Frag men

ta tion

Page 12: Automate Your Way to Sanity in the Chaos of Mobile App Development

4/6/15

10

Screen Resolutions

Page 13: Automate Your Way to Sanity in the Chaos of Mobile App Development

4/6/15

11

Stale OS versions

Page 14: Automate Your Way to Sanity in the Chaos of Mobile App Development

4/6/15

12

Desig

ned

by e

ngine

ers

A peek under the covers

Page 15: Automate Your Way to Sanity in the Chaos of Mobile App Development

4/6/15

13

Digging deeper

How it affected our

team

Page 16: Automate Your Way to Sanity in the Chaos of Mobile App Development

4/6/15

14

How it affected our product

Page 17: Automate Your Way to Sanity in the Chaos of Mobile App Development

4/6/15

15

Our challenge

Our Solutions Leading ourselves around the bear.

Page 18: Automate Your Way to Sanity in the Chaos of Mobile App Development

4/6/15

16

We started here

Page 19: Automate Your Way to Sanity in the Chaos of Mobile App Development

4/6/15

17

Tools to the rescue!

Page 20: Automate Your Way to Sanity in the Chaos of Mobile App Development

4/6/15

18

Page 21: Automate Your Way to Sanity in the Chaos of Mobile App Development

4/6/15

19

Continuous Integration

Step One

Enforcement

Page 22: Automate Your Way to Sanity in the Chaos of Mobile App Development

4/6/15

20

We still had some work to do

Does Not Equal Flexible

Simple

Page 23: Automate Your Way to Sanity in the Chaos of Mobile App Development

4/6/15

21

CI version 2.0

Page 24: Automate Your Way to Sanity in the Chaos of Mobile App Development

4/6/15

22

Plugin matrix of pain

= BFFs +

How to succeed with Jenkins

Page 25: Automate Your Way to Sanity in the Chaos of Mobile App Development

4/6/15

23

Our Jenkins setup

Automating beyond master

Page 26: Automate Your Way to Sanity in the Chaos of Mobile App Development

4/6/15

24

Our test automation" journey begins

Framework Version 1.0

Page 27: Automate Your Way to Sanity in the Chaos of Mobile App Development

4/6/15

25

Option #1

Option #2

Page 28: Automate Your Way to Sanity in the Chaos of Mobile App Development

4/6/15

26

Option #3

Forging our own solution

Page 29: Automate Your Way to Sanity in the Chaos of Mobile App Development

4/6/15

27

Challenges remained…

The Proof

Page 30: Automate Your Way to Sanity in the Chaos of Mobile App Development

4/6/15

28

Dogfooding

Page 31: Automate Your Way to Sanity in the Chaos of Mobile App Development

4/6/15

29

Google saves the day!

Page 32: Automate Your Way to Sanity in the Chaos of Mobile App Development

4/6/15

30

Submission Process The final frontier…

Taming the beast

Page 33: Automate Your Way to Sanity in the Chaos of Mobile App Development

4/6/15

31

The Clone Army

Our “solution”

Page 34: Automate Your Way to Sanity in the Chaos of Mobile App Development

4/6/15

32

We put the “agile” in

A blood oath

Page 35: Automate Your Way to Sanity in the Chaos of Mobile App Development

4/6/15

33

Google Play Developer API FTW

Success Stories More pudding.

Page 36: Automate Your Way to Sanity in the Chaos of Mobile App Development

4/6/15

34

The sub-24 hour release cycle

Quality FTW

Page 37: Automate Your Way to Sanity in the Chaos of Mobile App Development

4/6/15

35

Smaller, predictable releases

1 > 6

Page 38: Automate Your Way to Sanity in the Chaos of Mobile App Development

4/6/15

36

Take-aways Do this, don’t do that.

Don’t wait!

Page 39: Automate Your Way to Sanity in the Chaos of Mobile App Development

4/6/15

37

Start tiny

Page 40: Automate Your Way to Sanity in the Chaos of Mobile App Development

4/6/15

38

Page 41: Automate Your Way to Sanity in the Chaos of Mobile App Development

4/6/15

39

@nosrednAhsoJ

nosrednAhsoJ