generated from aura-ascend/template-service
21 lines
1.2 KiB
Markdown
21 lines
1.2 KiB
Markdown
# Senior Engineer Test
|
|
|
|
### **Develop a service that simulates basic banking operations in a programming language of your choice. This service will manage accounts, process deposits, withdrawals, and transfers between accounts.**
|
|
|
|
### The system should be designed reflecting real-world constraints of a bank.
|
|
|
|
## Requirements:
|
|
|
|
1. A class or set of functions that allow:
|
|
* Account creation: Allow users to create an account with an initial deposit.
|
|
* Deposit: Enable users to deposit money into their account.
|
|
* Withdrawal: Allow users to withdraw money from their account, ensuring that overdrafts are not allowed.
|
|
* Transfer: Enable transferring funds between accounts.
|
|
* Account balance: Provide the ability to check the account balance.
|
|
2. Database:
|
|
* In-memory data storage will suffice, no need to have a database alongside the project, but you can add one at your discretion
|
|
|
|
The word “service” here is used in a “software component/module” rather “deployable unit with an API” sense, no need to provide API for it.
|
|
|
|
## Feel free to take as along as you need to complete the exercise. This will be used as a base for a follow-up pair programming session.
|