Why we released the kraken

29
Why we released the Kraken Cristiano Betta PayPal

description

My talk at Devoxx UK 2014

Transcript of Why we released the kraken

Page 1: Why we released the kraken

Why we released the Kraken

Cristiano Betta PayPal

Page 2: Why we released the kraken
Page 3: Why we released the kraken
Page 4: Why we released the kraken
Page 5: Why we released the kraken

A story of technical debt

Page 6: Why we released the kraken
Page 7: Why we released the kraken

C++ Java

Page 8: Why we released the kraken

Production Prototype

Page 9: Why we released the kraken
Page 10: Why we released the kraken
Page 11: Why we released the kraken

BYOF!!!!Build your own framework!!!

Page 12: Why we released the kraken
Page 13: Why we released the kraken
Page 14: Why we released the kraken
Page 15: Why we released the kraken

Jeff Harrell!@juxtajeff

Bill Scott!@billwscott

Page 16: Why we released the kraken
Page 17: Why we released the kraken

C++!XML

Java!JSP

Page 18: Why we released the kraken

C++!XML

Java!JSP

NodeJS!JS

Page 19: Why we released the kraken
Page 20: Why we released the kraken

C++ Java Node

Dust

Page 21: Why we released the kraken

C++ Java Node

Dust

Page 22: Why we released the kraken

PPaaS!PayPal as a Service

Page 23: Why we released the kraken

Moved away from good old java

Page 24: Why we released the kraken

Changing the way we work

• CSS, HTML and even JS in Java

• Later replaced by JSP for templating

• Open Source Stack

• Bootstrap for frontend

• JavaScript templating via Dust

• Project Delorean: V8 in PayPal’s C++ stack

• Rhino: JS for PayPal’s Java stack

Page 25: Why we released the kraken
Page 26: Why we released the kraken
Page 27: Why we released the kraken

Lusca

Kappa Adaro

Makara

Page 28: Why we released the kraken

Results• Team sizes decreased

• Doubled requests per second

• 35% decrease in average response time

• Lines of code shrunk by factor 3 to 5

• Increased development pace

• Full stack JS investment

Page 29: Why we released the kraken

Thank you!for not killing me @cbetta