Chat with us, powered by LiveChat Write a spring boot APIs that each serve a given BIAN Service Domain. The data that the APIs exposed are sourced from Systems - Essayabode

Write a spring boot APIs that each serve a given BIAN Service Domain. The data that the APIs exposed are sourced from Systems

Write a spring boot APIs that each serve a given BIAN Service Domain. The data that the APIs

exposed are sourced from Systems of Record to produce a realtime feed through Kafka. Our APIs are

either written on top of Kafka topics directly using Event Sourcing or we use the traditional approach

of sinking our data from Kafka to a database and write our API on top of the databases.

The purpose of this challenge is to have you work through a problem where the expectation is for you

to produce an API. We have specifically opted to make the problem statement as generic as possible

to allow you to:

The ONLY requirement is that this API MUST BE WRITTEN USING THE SPRING BOOT

FRAMEWORK.

Problem Statement

The Data Feeds

Let’s assume you have the two following data feeds:

Feed 1: The balances

This is a data feed, where each event represents a single balance update for a given account.

A single record looks like this

{"accountNumber": "abc", "lastUpdateTimestamp": "2020-01-01T01:02:03.8Z", "balance": 89.1}

Feed 2: The transactions

This is a data feed representing transactions that are occuring. Each record will be a single transaction

at the bank. Keep in mind that there are two types of transactions: 1. DEPOSIT and 2. WITHDRAW.

A single record looks like this

For a DEPOSIT:

{"accountNumber": "abc", "transactionTs": "2020-01-03T01:02:03.8Z", "type": "DEPOSIT", "amount": 89.1}

Or a WITHDRAW

{"accountNumber": "abc", "transactionTs": "2020-01-03T01:02:03.8Z", "type": "WITHDRAW", "amount": 89.1}

The API [ the actual meat of the assignment 😉 ]

Please write an API that can serve the following queries:

1. Given an accountNumber, return the latest balance.

2. Given an accountNumber and a time range such as: Today, Last 7 days, last Month and the

more general case of a range between date X and date Y. For example, I should be able to ask for all

my transactions between January 8th, 2019 and November 28th, 2020.

3. Repeat 2, but filter for type. I.E. Show me transactions with type WITHDRAW.

Some hints:

1. Make sure that any technical choice you are making is backed up by good reasoning. Meaning,

if you decide to go with event sourcing? Why? If you choose to use a noSQL datbase? Why?

2. Make reasonable assumptions about the problem. If any extra detail is left out, just ride the

wave and make assumptions. There are no wrong answers here.

    Our website has a team of professional writers who can help you write any of your homework. They will write your papers from scratch. We also have a team of editors just to make sure all papers are of HIGH QUALITY & PLAGIARISM FREE. To make an Order you only need to click Ask A Question and we will direct you to our Order Page at WriteDemy. Then fill Our Order Form with all your assignment instructions. Select your deadline and pay for your paper. You will get it few hours before your set deadline.

    Fill in all the assignment paper details that are required in the order form with the standard information being the page count, deadline, academic level and type of paper. It is advisable to have this information at hand so that you can quickly fill in the necessary information needed in the form for the essay writer to be immediately assigned to your writing project. Make payment for the custom essay order to enable us to assign a suitable writer to your order. Payments are made through Paypal on a secured billing page. Finally, sit back and relax.

    Do you need an answer to this or any other questions?