pivotal labs lunch talk; 3 infrastructure and workflow lessons learned at an early stage startup

44
rainforest @rainforestqa Rainforest QA Lunch talk: 3 Infrastructure + workflow lessons learned at an early-stage startup

Upload: russell-smith

Post on 22-May-2015

260 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Pivotal Labs Lunch Talk; 3 Infrastructure and workflow lessons learned at an early stage startup

rainforest @rainforestqa

Rainforest QA Lunch talk:!3 Infrastructure + workflow

lessons learned at an early-stage startup

Page 2: Pivotal Labs Lunch Talk; 3 Infrastructure and workflow lessons learned at an early stage startup

@rainforestqarainforest

Rainforest

Human powered QA SaaS

Designed for ‘Continuous QA’

Built for PMs and Developers

Page 3: Pivotal Labs Lunch Talk; 3 Infrastructure and workflow lessons learned at an early stage startup

@rainforestqarainforest

Us

Team of 3 in SoMa

All developers

YC S12

Page 4: Pivotal Labs Lunch Talk; 3 Infrastructure and workflow lessons learned at an early stage startup

@rainforestqarainforest

3 Infrastructure + workflow lessons learned

Page 5: Pivotal Labs Lunch Talk; 3 Infrastructure and workflow lessons learned at an early stage startup

@rainforestqarainforest

#1: Mongo isn’t right for!early-stage SaaS

Page 6: Pivotal Labs Lunch Talk; 3 Infrastructure and workflow lessons learned at an early stage startup

@rainforestqarainforest

(Aside: we 💖 Mongo)

Page 7: Pivotal Labs Lunch Talk; 3 Infrastructure and workflow lessons learned at an early stage startup

@rainforestqarainforest

Why?

Page 8: Pivotal Labs Lunch Talk; 3 Infrastructure and workflow lessons learned at an early stage startup

@rainforestqarainforest

Transactions

Page 9: Pivotal Labs Lunch Talk; 3 Infrastructure and workflow lessons learned at an early stage startup

@rainforestqarainforest

Transactions -> Less junk

Page 10: Pivotal Labs Lunch Talk; 3 Infrastructure and workflow lessons learned at an early stage startup

@rainforestqarainforest

Migrations

Page 11: Pivotal Labs Lunch Talk; 3 Infrastructure and workflow lessons learned at an early stage startup

@rainforestqarainforest

Adhoc queries

Page 12: Pivotal Labs Lunch Talk; 3 Infrastructure and workflow lessons learned at an early stage startup

@rainforestqarainforest

<3 window functions

Page 13: Pivotal Labs Lunch Talk; 3 Infrastructure and workflow lessons learned at an early stage startup

@rainforestqarainforest

Page 14: Pivotal Labs Lunch Talk; 3 Infrastructure and workflow lessons learned at an early stage startup

@rainforestqarainforest

Joins

Page 15: Pivotal Labs Lunch Talk; 3 Infrastructure and workflow lessons learned at an early stage startup

@rainforestqarainforest

#2: QueueClassic > Resque!for simplicity

Page 16: Pivotal Labs Lunch Talk; 3 Infrastructure and workflow lessons learned at an early stage startup

@rainforestqarainforest

Why?

Page 17: Pivotal Labs Lunch Talk; 3 Infrastructure and workflow lessons learned at an early stage startup

@rainforestqarainforest

Less moving parts

Page 18: Pivotal Labs Lunch Talk; 3 Infrastructure and workflow lessons learned at an early stage startup

@rainforestqarainforest

Transactions

Page 19: Pivotal Labs Lunch Talk; 3 Infrastructure and workflow lessons learned at an early stage startup

@rainforestqarainforest

#3: Use your own product!(aka dogfooding)

Page 20: Pivotal Labs Lunch Talk; 3 Infrastructure and workflow lessons learned at an early stage startup

@rainforestqarainforest

Find your users’ pain!before they do

Page 21: Pivotal Labs Lunch Talk; 3 Infrastructure and workflow lessons learned at an early stage startup
Page 22: Pivotal Labs Lunch Talk; 3 Infrastructure and workflow lessons learned at an early stage startup

@rainforestqarainforest

Goal:!Rainforest + Continuous Delivery

Page 23: Pivotal Labs Lunch Talk; 3 Infrastructure and workflow lessons learned at an early stage startup

@rainforestqarainforest

push

Page 24: Pivotal Labs Lunch Talk; 3 Infrastructure and workflow lessons learned at an early stage startup

@rainforestqarainforest

push -> circle

Page 25: Pivotal Labs Lunch Talk; 3 Infrastructure and workflow lessons learned at an early stage startup

@rainforestqarainforest

push -> circle -> rainforest

Page 26: Pivotal Labs Lunch Talk; 3 Infrastructure and workflow lessons learned at an early stage startup

@rainforestqarainforest

push -> circle -> rainforest -> prod

Page 27: Pivotal Labs Lunch Talk; 3 Infrastructure and workflow lessons learned at an early stage startup

@rainforestqarainforest

Rainforest tests fail = no deploy

Page 28: Pivotal Labs Lunch Talk; 3 Infrastructure and workflow lessons learned at an early stage startup

@rainforestqarainforest

Step 1: Built CLI client

Page 29: Pivotal Labs Lunch Talk; 3 Infrastructure and workflow lessons learned at an early stage startup
Page 30: Pivotal Labs Lunch Talk; 3 Infrastructure and workflow lessons learned at an early stage startup

@rainforestqarainforest

Step 2: Put in build process

Page 31: Pivotal Labs Lunch Talk; 3 Infrastructure and workflow lessons learned at an early stage startup

@rainforestqarainforest

#1 - add gem!#2 - add to circle.yml

Page 32: Pivotal Labs Lunch Talk; 3 Infrastructure and workflow lessons learned at an early stage startup

@rainforestqarainforest

Our Extreme Dogfooding rules

Page 33: Pivotal Labs Lunch Talk; 3 Infrastructure and workflow lessons learned at an early stage startup

@rainforestqarainforest

#1 Make it disruptive

Page 34: Pivotal Labs Lunch Talk; 3 Infrastructure and workflow lessons learned at an early stage startup

@rainforestqarainforest

#2 Fix it quickly

Page 35: Pivotal Labs Lunch Talk; 3 Infrastructure and workflow lessons learned at an early stage startup

@rainforestqarainforest

#3 Don’t cheat

Page 36: Pivotal Labs Lunch Talk; 3 Infrastructure and workflow lessons learned at an early stage startup

@rainforestqarainforest

Current state:

Page 37: Pivotal Labs Lunch Talk; 3 Infrastructure and workflow lessons learned at an early stage startup

@rainforestqarainforest

full continuous delivery

Page 38: Pivotal Labs Lunch Talk; 3 Infrastructure and workflow lessons learned at an early stage startup

@rainforestqarainforest

< 20 mins to test

Page 39: Pivotal Labs Lunch Talk; 3 Infrastructure and workflow lessons learned at an early stage startup

@rainforestqarainforest

in 5 browsers

Page 40: Pivotal Labs Lunch Talk; 3 Infrastructure and workflow lessons learned at an early stage startup

@rainforestqarainforest

> 60 people

Page 41: Pivotal Labs Lunch Talk; 3 Infrastructure and workflow lessons learned at an early stage startup

@rainforestqarainforest

~9.5 hours of testing in ~20 min

Page 42: Pivotal Labs Lunch Talk; 3 Infrastructure and workflow lessons learned at an early stage startup

@rainforestqarainforest

we run 5-10 x per day

Page 43: Pivotal Labs Lunch Talk; 3 Infrastructure and workflow lessons learned at an early stage startup

@rainforestqarainforest

Conclusion

Simpler = better

Transactions = better

Use your own product = better product

Page 44: Pivotal Labs Lunch Talk; 3 Infrastructure and workflow lessons learned at an early stage startup

rainforest @rainforestqa

Questions?@rainforestqa

@rhs