SlideShare a Scribd company logo
1 of 12
Download to read offline
Breaking up the Monorail 
Payments & Service Oriented Architecture 
stella@indiegogo.com 
github.com/stellacotton 
@practicecactus
Breaking up the Monorail 
(aka Fun with Architecture in an Agile 
World) 
● Where we are now 
○ a Monorail 
● Where we want to be 
○ An app of decoupled services 
● How we’re going to get there 
○ Hard work and a can-do attitude?
Where We Are Now 
● Legacy Payments code
Making a Contribution
...wait for it...
...and done (sort of)
Where We Are Now 
● Difficult to monitor 
● A tightly coupled architecture slows down 
innovation and growth 
○ No one wants to break Payments!
Where We Want to Be 
● Client request (Indiegogo.com) 
def create 
PaymentService.charge(@contribution) 
end
Where We Want to Be 
● PaymentsService Response 
{ 
"response": { 
"timestamp": "2014-08-13T16:50:07.131-07:00", 
"200": "Success" , 
} 
} 
or 
{ 
"response": { 
"timestamp": "2014-08-13T16:50:07.131-07:00", 
"404": "WHOOPS!" , 
} 
}
How to Get There 
● Modularize current payments code 
● Create internal, versioned API 
● Build PaymentService gem for the main app 
to integrate client side API code 
● Write contract tests to keep us honest
How to Get There 
● Break apart the databases 
● Work with DevOps to separate deploy 
● Monitor the hell out of everything
Thank you! 
Stella Cotton 
stella@indiegogo.com 
github.com/stellacotton 
@practicecactus

More Related Content

Similar to Breaking the Monorail: Payments & Service Oriented Architechture

Angular Illumination
Angular IlluminationAngular Illumination
Angular Illumination
Bryan Arbelo
 

Similar to Breaking the Monorail: Payments & Service Oriented Architechture (18)

Knative Intro
Knative IntroKnative Intro
Knative Intro
 
Liti Solutions Portfolio - July 2015
Liti Solutions Portfolio - July 2015Liti Solutions Portfolio - July 2015
Liti Solutions Portfolio - July 2015
 
Shift Money 2019 - The New Economic Paradigm - Mel Gelderman (Monolith)
Shift Money 2019 - The New Economic Paradigm - Mel Gelderman (Monolith)Shift Money 2019 - The New Economic Paradigm - Mel Gelderman (Monolith)
Shift Money 2019 - The New Economic Paradigm - Mel Gelderman (Monolith)
 
Cheetah solver breakthrough in geometric constraints modeling
Cheetah solver   breakthrough in geometric constraints modelingCheetah solver   breakthrough in geometric constraints modeling
Cheetah solver breakthrough in geometric constraints modeling
 
Evolving compositional user interfaces
Evolving compositional user interfacesEvolving compositional user interfaces
Evolving compositional user interfaces
 
Introduction - Rakuten Payment Platform team
Introduction - Rakuten Payment Platform teamIntroduction - Rakuten Payment Platform team
Introduction - Rakuten Payment Platform team
 
Mucon 2018: Heuristics for Identifying Microservice Boundaries By Erich Eichi...
Mucon 2018: Heuristics for Identifying Microservice Boundaries By Erich Eichi...Mucon 2018: Heuristics for Identifying Microservice Boundaries By Erich Eichi...
Mucon 2018: Heuristics for Identifying Microservice Boundaries By Erich Eichi...
 
Gwt create2013 Frankfurt: How we built a million dollar business with GWT
Gwt create2013 Frankfurt: How we built a million dollar business with GWTGwt create2013 Frankfurt: How we built a million dollar business with GWT
Gwt create2013 Frankfurt: How we built a million dollar business with GWT
 
Oracle Developer Tour Latam Nowadays Architecture Trends, from Monolith to Mi...
Oracle Developer Tour Latam Nowadays Architecture Trends, from Monolith to Mi...Oracle Developer Tour Latam Nowadays Architecture Trends, from Monolith to Mi...
Oracle Developer Tour Latam Nowadays Architecture Trends, from Monolith to Mi...
 
Going realtime with Socket.IO
Going realtime with Socket.IOGoing realtime with Socket.IO
Going realtime with Socket.IO
 
Milestones, SHUV, Roadmaps - Oh My!
Milestones, SHUV, Roadmaps - Oh My!Milestones, SHUV, Roadmaps - Oh My!
Milestones, SHUV, Roadmaps - Oh My!
 
Milestones, SHUV, Roadmaps - Oh My!
Milestones, SHUV, Roadmaps - Oh My!Milestones, SHUV, Roadmaps - Oh My!
Milestones, SHUV, Roadmaps - Oh My!
 
Master Planning Cities (with the help of CityEngine) (Elliot Hartley, Garsdal...
Master Planning Cities (with the help of CityEngine) (Elliot Hartley, Garsdal...Master Planning Cities (with the help of CityEngine) (Elliot Hartley, Garsdal...
Master Planning Cities (with the help of CityEngine) (Elliot Hartley, Garsdal...
 
E secure transaction project ppt(Design and implementation of e-secure trans...
E secure transaction project  ppt(Design and implementation of e-secure trans...E secure transaction project  ppt(Design and implementation of e-secure trans...
E secure transaction project ppt(Design and implementation of e-secure trans...
 
I Know It Was MEAN, But I Cut the Cord to LAMP Anyway
I Know It Was MEAN, But I Cut the Cord to LAMP AnywayI Know It Was MEAN, But I Cut the Cord to LAMP Anyway
I Know It Was MEAN, But I Cut the Cord to LAMP Anyway
 
WRK -The Mini Job App (Draft)
WRK -The Mini Job App (Draft)WRK -The Mini Job App (Draft)
WRK -The Mini Job App (Draft)
 
Angular Illumination
Angular IlluminationAngular Illumination
Angular Illumination
 
Building Mobile Apps with a Mobile Services .NET Backend
Building Mobile Apps with a Mobile Services .NET BackendBuilding Mobile Apps with a Mobile Services .NET Backend
Building Mobile Apps with a Mobile Services .NET Backend
 

Recently uploaded

Recently uploaded (20)

Oauth 2.0 Introduction and Flows with MuleSoft
Oauth 2.0 Introduction and Flows with MuleSoftOauth 2.0 Introduction and Flows with MuleSoft
Oauth 2.0 Introduction and Flows with MuleSoft
 
Using IESVE for Room Loads Analysis - UK & Ireland
Using IESVE for Room Loads Analysis - UK & IrelandUsing IESVE for Room Loads Analysis - UK & Ireland
Using IESVE for Room Loads Analysis - UK & Ireland
 
IESVE for Early Stage Design and Planning
IESVE for Early Stage Design and PlanningIESVE for Early Stage Design and Planning
IESVE for Early Stage Design and Planning
 
Working together SRE & Platform Engineering
Working together SRE & Platform EngineeringWorking together SRE & Platform Engineering
Working together SRE & Platform Engineering
 
Designing for Hardware Accessibility at Comcast
Designing for Hardware Accessibility at ComcastDesigning for Hardware Accessibility at Comcast
Designing for Hardware Accessibility at Comcast
 
Intro in Product Management - Коротко про професію продакт менеджера
Intro in Product Management - Коротко про професію продакт менеджераIntro in Product Management - Коротко про професію продакт менеджера
Intro in Product Management - Коротко про професію продакт менеджера
 
Easier, Faster, and More Powerful – Notes Document Properties Reimagined
Easier, Faster, and More Powerful – Notes Document Properties ReimaginedEasier, Faster, and More Powerful – Notes Document Properties Reimagined
Easier, Faster, and More Powerful – Notes Document Properties Reimagined
 
State of the Smart Building Startup Landscape 2024!
State of the Smart Building Startup Landscape 2024!State of the Smart Building Startup Landscape 2024!
State of the Smart Building Startup Landscape 2024!
 
Your enemies use GenAI too - staying ahead of fraud with Neo4j
Your enemies use GenAI too - staying ahead of fraud with Neo4jYour enemies use GenAI too - staying ahead of fraud with Neo4j
Your enemies use GenAI too - staying ahead of fraud with Neo4j
 
WebRTC and SIP not just audio and video @ OpenSIPS 2024
WebRTC and SIP not just audio and video @ OpenSIPS 2024WebRTC and SIP not just audio and video @ OpenSIPS 2024
WebRTC and SIP not just audio and video @ OpenSIPS 2024
 
Syngulon - Selection technology May 2024.pdf
Syngulon - Selection technology May 2024.pdfSyngulon - Selection technology May 2024.pdf
Syngulon - Selection technology May 2024.pdf
 
How we scaled to 80K users by doing nothing!.pdf
How we scaled to 80K users by doing nothing!.pdfHow we scaled to 80K users by doing nothing!.pdf
How we scaled to 80K users by doing nothing!.pdf
 
Where to Learn More About FDO _ Richard at FIDO Alliance.pdf
Where to Learn More About FDO _ Richard at FIDO Alliance.pdfWhere to Learn More About FDO _ Richard at FIDO Alliance.pdf
Where to Learn More About FDO _ Richard at FIDO Alliance.pdf
 
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...Integrating Telephony Systems with Salesforce: Insights and Considerations, B...
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...
 
Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...
Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...
Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...
 
Portal Kombat : extension du réseau de propagande russe
Portal Kombat : extension du réseau de propagande russePortal Kombat : extension du réseau de propagande russe
Portal Kombat : extension du réseau de propagande russe
 
TEST BANK For, Information Technology Project Management 9th Edition Kathy Sc...
TEST BANK For, Information Technology Project Management 9th Edition Kathy Sc...TEST BANK For, Information Technology Project Management 9th Edition Kathy Sc...
TEST BANK For, Information Technology Project Management 9th Edition Kathy Sc...
 
TopCryptoSupers 12thReport OrionX May2024
TopCryptoSupers 12thReport OrionX May2024TopCryptoSupers 12thReport OrionX May2024
TopCryptoSupers 12thReport OrionX May2024
 
1111 ChatGPT Prompts PDF Free Download - Prompts for ChatGPT
1111 ChatGPT Prompts PDF Free Download - Prompts for ChatGPT1111 ChatGPT Prompts PDF Free Download - Prompts for ChatGPT
1111 ChatGPT Prompts PDF Free Download - Prompts for ChatGPT
 
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
 

Breaking the Monorail: Payments & Service Oriented Architechture

  • 1. Breaking up the Monorail Payments & Service Oriented Architecture stella@indiegogo.com github.com/stellacotton @practicecactus
  • 2. Breaking up the Monorail (aka Fun with Architecture in an Agile World) ● Where we are now ○ a Monorail ● Where we want to be ○ An app of decoupled services ● How we’re going to get there ○ Hard work and a can-do attitude?
  • 3. Where We Are Now ● Legacy Payments code
  • 7. Where We Are Now ● Difficult to monitor ● A tightly coupled architecture slows down innovation and growth ○ No one wants to break Payments!
  • 8. Where We Want to Be ● Client request (Indiegogo.com) def create PaymentService.charge(@contribution) end
  • 9. Where We Want to Be ● PaymentsService Response { "response": { "timestamp": "2014-08-13T16:50:07.131-07:00", "200": "Success" , } } or { "response": { "timestamp": "2014-08-13T16:50:07.131-07:00", "404": "WHOOPS!" , } }
  • 10. How to Get There ● Modularize current payments code ● Create internal, versioned API ● Build PaymentService gem for the main app to integrate client side API code ● Write contract tests to keep us honest
  • 11. How to Get There ● Break apart the databases ● Work with DevOps to separate deploy ● Monitor the hell out of everything
  • 12. Thank you! Stella Cotton stella@indiegogo.com github.com/stellacotton @practicecactus