0% found this document useful (0 votes)
13 views

Back End Intern Assignment

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
13 views

Back End Intern Assignment

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 3

Convin Assignment

Please read carefully.


● You need to submit the assignment within 48 hours of receiving it.
● The assignment needs to be submitted on [email protected]
● In the mail kindly mention “Backend Intern Task”
● Also send your resume & portfolio along with the assignment.
● We will revert back with the result within 15-20 days.
● Any sort of further communication can be done over the above mentioned
mail.
● Kindly revert back with the doubts and queries(if any) on [email protected]

Assignment: Daily Expenses Sharing Application

Objective:

Design and implement a backend for a daily-expenses sharing application. This


application will allow users to add expenses and split them based on three
different methods: exact amounts, percentages, and equal splits. The
application should manage user details, validate inputs, and generate
downloadable balance sheets.

Requirements:

User Management:
✓ Each user should have an email, name, and mobile number.

Expense Management:
✓ Users can add expenses.

Expenses can be split using three methods:


1. Equal: Split equally among all participants.
2. Exact: Specify the exact amount each participant owes.
3. Percentage: Specify the percentage each participant owes. (Ensure
percentages add up to 100%).

Expense Calculation Examples:


1. Equal:
Scenario: You go out with 3 friends. The total bill is 3000. Each friend owes
1000.

2. Exact:
Scenario: You go shopping with 2 friends and pay 4299. Friend 1 owes 799,
Friend 2 owes 2000, and you owe 1500.

3. Percentage:
Scenario: You go to a party with 2 friends and one of your cousins. You owe
50%, Friend 1 owes 25%, and Friend 2 owes 25%.

Balance Sheet:
✓ Show individual expenses.
✓ Show overall expenses for all users.
✓ Provide a feature to download the balance sheet.

Deliverables:

Backend Service:
Design the backend service to handle user and expense management.

API Endpoints:
User Endpoints:
✓ Create user.
✓ Retrieve user details.

Expense Endpoints:
✓ Add expense.
✓ Retrieve individual user expenses.
✓ Retrieve overall expenses.
✓ Download balance sheet.

Data Validation:
✓ Validate user inputs.
✓ Ensure percentages in the percentage split method add up to 100%.

Documentation:
✓ Include setup and installation instructions.
✓ Write clear and concise code comments.

Evaluation Criteria:
1. Correctness: Functionality meets the requirements.
2. Code Quality: Code is clean, readable, and maintainable.
3. Documentation: Clear and comprehensive documentation.
4. Innovation: Creative and efficient solutions.

Bonus Points:
✓ Implement user authentication and authorization.
✓ Include error handling and input validation.
✓ Optimize performance for large datasets.
✓ Add unit and integration tests.

Submission:
Submit your project as a GitHub repository link.
Include a README file with instructions on how to set up and run the project.

Good luck! We look forward to seeing your creative and technical skills in action.

You might also like