generated from aura-ascend/template-service
- update README.md
- setup tls
- update gradle.properties with docker tls ports
- update application.yml
- disable tls in develop
- set docker values
- add default tls values
- add keystore.p12
- setup postgres
- update application.yml with defualt values
- add 000-initizalise.sql
- add postgres dependencies and config
- add docker compose development
- add actuator.http
- add http environment
- update name and readme for service
1.2 KiB
1.2 KiB
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:
- 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.
- 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.