open banking, bbva api market · francisco froufe froufe . author: admin-alternativo created date:...

26
Presentation title / 1 Open Banking, BBVA API_Market Noviembre 2018 librecon.io

Upload: others

Post on 25-Aug-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Open Banking, BBVA API Market · Francisco Froufe froufe . Author: Admin-alternativo Created Date: 12/12/2018 3:45:12 PM

Presentation title / 1

Open Banking, BBVA API_Market

Noviembre 2018

librecon.io

Page 2: Open Banking, BBVA API Market · Francisco Froufe froufe . Author: Admin-alternativo Created Date: 12/12/2018 3:45:12 PM

Índice

01

02

BBVA API_Market

Stack & Infraestructure

03 Microservices

Page 3: Open Banking, BBVA API Market · Francisco Froufe froufe . Author: Admin-alternativo Created Date: 12/12/2018 3:45:12 PM

01 BBVA API_Market

Page 4: Open Banking, BBVA API Market · Francisco Froufe froufe . Author: Admin-alternativo Created Date: 12/12/2018 3:45:12 PM

Presentation title / 4

BBVA API_Market is the portal developed by BBVA to offer API products that will be consumed by third

parties.

Our actual catalog consists of:

SPAIN

Customers

Accounts

Cards

Payments

Loans

Notifications

QRPay

Business Accounts

Business Notifications

PayStats

SEL

USA

Customers

Accounts

Cards

Payments MEXICO

Accounts

Loans Auto

01. WHAT IS BBVA API_MARKET?

11 APIs in SPAIN

4 APIs in USA

2 APIs in MEXICO

What is API_Market

Page 5: Open Banking, BBVA API Market · Francisco Froufe froufe . Author: Admin-alternativo Created Date: 12/12/2018 3:45:12 PM

Presentation title / 5

Why APIs?

Accessing internal BBVA services is not an easy task, as it is expected. Complications reside in the

entry parameters for the service, security, language…

What is API_Market

OP3N is born with the idea of opening these internal services

to third parties so BBVA and our clients can benefit from their

data. Through APIs these services are seamlessly

encapsulated in a way that third parties only have to deal with

a very easy to understand and integrate layer. Making the

APIs system the best one for both BBVA and third parties.

Even so, creating an API that points to a BBVA internal service is not the hardest task.

Managing clients, apps, security, make the model scalable, monitoring, access limit and payment

management is much more than just creating the APIs.

How do we manage the APIs?

Page 6: Open Banking, BBVA API Market · Francisco Froufe froufe . Author: Admin-alternativo Created Date: 12/12/2018 3:45:12 PM

Presentation title / 6

Accounts Customers

Cards

Payments

QRPay

Loans

Notifications

Business Accounts PayStats SEL

Funds

Business client Data

What is API_Market

BBVA Spain

Retail client

Page 7: Open Banking, BBVA API Market · Francisco Froufe froufe . Author: Admin-alternativo Created Date: 12/12/2018 3:45:12 PM

Presentation title / 7

Integrated console

1. The logged developer chooses an API service, clicks on switch to console with the

endpoint selected

2. Add or update headers or parameters

3. The console will have all fields already filled. Authentication, headers, URI parameters...

4. If the API requires 3-legged authentication, BBVA Connect process is opened

5. We get the token and it launches the requested API

A developer that is

not logged in could

launch any API call

using test

environment and

it’ll response

hardcoded data, a

useful way to know

what data is

available

What is API_Market

Page 8: Open Banking, BBVA API Market · Francisco Froufe froufe . Author: Admin-alternativo Created Date: 12/12/2018 3:45:12 PM

02 BBVA API_Market Infrastructure

Page 9: Open Banking, BBVA API Market · Francisco Froufe froufe . Author: Admin-alternativo Created Date: 12/12/2018 3:45:12 PM

Stack tecnológico

CI &

D

ep

lo

y

De

v

other

Project management

logs & Monitoring

Front

DB

Page 10: Open Banking, BBVA API Market · Francisco Froufe froufe . Author: Admin-alternativo Created Date: 12/12/2018 3:45:12 PM

Presentation title / 10

★ Microservices are built around

business capabilities and

independently deployable by fully

automated deployment machinery.

★ Containers for reliable deployments.

★ PaaS-based architecture model by

leveraging Open Source

technologies and AWS components:

EC2, ECS, RDS, ElasticCache, etc.

Product development & architecture principles

BBVA API_Market

Infra

Idea or Business opportunity❓

APIs as a product ↩

Code ↩

Microservice ↩

Container ↩

Page 11: Open Banking, BBVA API Market · Francisco Froufe froufe . Author: Admin-alternativo Created Date: 12/12/2018 3:45:12 PM

Presentation title / 11

Switching to microservices architecture...

Amazon ECS

OP3N

Page 12: Open Banking, BBVA API Market · Francisco Froufe froufe . Author: Admin-alternativo Created Date: 12/12/2018 3:45:12 PM

Presentation title / 12

… without figuring out the platform and the dependencies

Amazon ECS

OP3N

Page 13: Open Banking, BBVA API Market · Francisco Froufe froufe . Author: Admin-alternativo Created Date: 12/12/2018 3:45:12 PM

Presentation title / 13 Amazon ECS

OP3N

https://twitter.com/adrianco/status/

705637183156125696 BBVAOPEN4U.com

Page 14: Open Banking, BBVA API Market · Francisco Froufe froufe . Author: Admin-alternativo Created Date: 12/12/2018 3:45:12 PM

Presentation title / 14

Gross numbers: EC2 vs. ECS

Amazon ECS

OP3N

1:16

~ 400 EC2 small instances

vs.

4 ECS clusters with 25 EC2 large instances)

80 services

x 4 environments

(dev, testing,

staging, production)

= 400 instances (minimum) + 80 services for HA

tolerance (AZ) &

scale-up on

demand

Page 15: Open Banking, BBVA API Market · Francisco Froufe froufe . Author: Admin-alternativo Created Date: 12/12/2018 3:45:12 PM

Presentation title / 15

★ Amazon EC2 Container Service (ECS) is a fully managed container

management service.

★ Service scales as microservice architecture grows.

★ Shared state, optimistic concurrency system that provides flexible

scheduling capabilities for your tasks and containers.

★ Integration with Amazon CloudWatch for monitoring and logging.

★ Integration with CI/CD services: Amazon ECS lets you launch and stop

container-based applications with simple API call.

Why Amazon ECS (and not Kubernetes)

Amazon ECS

OP3N

Page 16: Open Banking, BBVA API Market · Francisco Froufe froufe . Author: Admin-alternativo Created Date: 12/12/2018 3:45:12 PM

Presentation title / 16

Requirements for Microservices Implementation

Amazon ECS

OP3N

GOVERNANCE (BUSINESS)

GOVERNANCE (IT)

P

L

A

T

F

O

R

M

Load Balancing AWS ALB

HA Tolerance,

Scaling

Task-placement strategies,

Multi-AZ & CloudWatch

Events

Provisioning CI/CD Integration with ECS

API

Service Discovery ECS Service Discovery

Security ECS Security Group,

CloudTrail, VPC Flow Logs

Health ECS Docker Health Checks +

ALB Health

Monitoring CloudWatch Events +

Grafana

Logging S3, CWL Logs, Lambda &

AWS ElasticSearch

Page 17: Open Banking, BBVA API Market · Francisco Froufe froufe . Author: Admin-alternativo Created Date: 12/12/2018 3:45:12 PM

Presentation title / 17

Monitoring - Third party tools out-of-the-box integration with CloudWatch API

Amazon ECS

OP3N

Page 18: Open Banking, BBVA API Market · Francisco Froufe froufe . Author: Admin-alternativo Created Date: 12/12/2018 3:45:12 PM

03 Microservices

Page 19: Open Banking, BBVA API Market · Francisco Froufe froufe . Author: Admin-alternativo Created Date: 12/12/2018 3:45:12 PM

BBVA OP3N Architecture

t ARMADILLO

Datos PayStats

BUSINESS INTELLIGENCE

ETL

RabbitMQ

Amazon

S3

MONITORING

CloudWatch Prometheus ElasticSearch

Datos Sel

Core banking

BBVA

Kibana

MySQL

MICROSERVICES

(Retail, Business, Sel

Notifications…)

(routing, filters,

metrics...)

Page 20: Open Banking, BBVA API Market · Francisco Froufe froufe . Author: Admin-alternativo Created Date: 12/12/2018 3:45:12 PM

Continuous delivery pipeline

Page 21: Open Banking, BBVA API Market · Francisco Froufe froufe . Author: Admin-alternativo Created Date: 12/12/2018 3:45:12 PM

Conway’s Law

In every organization there will

always be one person who

knows what is going on.

This person must be fired !!

Page 22: Open Banking, BBVA API Market · Francisco Froufe froufe . Author: Admin-alternativo Created Date: 12/12/2018 3:45:12 PM

Two Pizza Team

a.k.a

“Pintxo Team”

Page 23: Open Banking, BBVA API Market · Francisco Froufe froufe . Author: Admin-alternativo Created Date: 12/12/2018 3:45:12 PM

As small as possible

but as big as necessary...

Page 24: Open Banking, BBVA API Market · Francisco Froufe froufe . Author: Admin-alternativo Created Date: 12/12/2018 3:45:12 PM

CAP Theorem

Page 25: Open Banking, BBVA API Market · Francisco Froufe froufe . Author: Admin-alternativo Created Date: 12/12/2018 3:45:12 PM

Saga pattern

Event driven Audit pattern

Command Query Responsibility Segregation

Domain Driven Design

Fully asynchronous Deployment

Monitoring

Circuit breaker

Testing

Page 26: Open Banking, BBVA API Market · Francisco Froufe froufe . Author: Admin-alternativo Created Date: 12/12/2018 3:45:12 PM

¿Preguntas?

Thomas Person personthomas

[email protected] www.bbvaapimarket.com

Francisco Froufe froufe