Who is this for?
This challenge is meant for candidates who wish to intern at Fyle and work with the Web Development team.
- You should be available full-time during the internship program (5 days a week).
- You should be available for 6 months of internship.
Why intern at Fyle?
Fyle is a fast-growing Expense Management SaaS product (learn more about us here). We are a ~40-strong engineering team at the moment. About 60% of our engineers started as interns. Interns at Fyle do extremely challenging and impactful work.
People love working at Fyle. Check out our Glassdoor reviews here. You can read stories from our teammates here.
Challenge outline: Tax Calculator
Design a website that allows for tax calculation based on a users input.


References & Requirements
- The tax calculation works based on this formula -
- Overall income (after deductions) under 8 (≤) Lakhs is not taxed.
- Ex - if Gross Annual Income + Extra Income - Deductions = 6 Lakhs, no tax
- if Gross Annual Income + Extra Income - Deductions = 9 Lakhs, tax
- Income over 8 (>) Lakhs, the amount over 8 Lakhs is taxed at
- 30% for people with age < 40
- 40% for people with age ≥ 40 but < 60
- 10% for people with age ≥ 60
- Example
- Age = 34, Income = 40 Lakhs, no deductions, tax = .3 * (40 - 8) = .3 * 32 = 9.6 Lakhs
- Do not restrict user from entering incorrect values like characters in the number fields
- Highlight a error icon to the right of the input field (shown as an example in above image as a circle with
!). Hovering over it should show the error in a tooltip
- If no errors are present, dont show the error icon
- This should be present in all the number fields
- The age dropdown field should have 3 values -
- <40
- ≥ 40 & < 60
- ≥ 60
- If user has not entered this value and clicks on submit, show a error icon hovering over which should show that input field is mandatory
- Error icons should not be visible in the form by default.
- Clicking on submit should show a modal which would show the final values based on above calculations.
Notes
- The assignment has to be done in HTML, CSS and Javascript. You can use Bootstrap and Jquery but no other library/design system is allowed.
- You're free to make assumptions, please make sure they are mentioned in the README.