Challenge Overview
Project Overview
This is a simple web application we’re building to help customers convert a spreadsheet file with payroll data into a required .csv file format. The tool will accept an uploaded spreadsheet / text / csv file, match the data to an approved structure, allow the user to confirm the mapping, and provide messages/warnings about errors or inconsistencies.
Competition Task Overview
In previous challenges we have built the API for the app. In this challenge we are going to integrate the prototype with the API to build the final working app:
- Please check the documents we provided in the forum to understand how the app is supposed to work, generally you should follow the flow in the prototype.
- There's one thing we need to note here about the implementation: when the tool is unsuccessful in mapping all 48 columns due to column headers mismatch we will let the users get to the mapping page, and provide a drop down option "Confirm" (similar to current "Not Mapped", "Remove"). In this scenario, the user will drag and drop & "confirm" mapping (that could not be confirmed by the tool due to not being able to effectively match column name). The tool should allow the csv to be created with columns that have "OK" or "Confirmed". In this case the user is responsible for ensuring the column contains the valid data in the "Confirmed" column. Please note this only applies to the case when there are a total of >= 48 columns, having less than 48 columns is still a critical error.
- If the backend api has bugs supporting the frontend, fixing them is in scope of this challenge.
- It's critical for the app to work correctly, any submission that fails to implement the workflow correctly and completely will be scored down severely in Q1.1.1 and will very likely fail review.
- Provide detailed deployment and verification guides.
- Make sure unit tests for the API are not broken in case you make changes to the API code.
- Right now we have an api folder in the code base, please add another folder for the frontend.
- The code must be deployable as Azure Web Services. You need to verify that both your frontend project and backend project can work properly as Azure Web App.
Please register to download the other detailed documents from the challenge forum.
Technology Overview
C# / .NET 4.5 (Required Version)
ASP.NET Web API
Angular 5
Azure
SQL Server / Azure SQL Database
REST
Swagger
Final Submission Guidelines
Submission Deliverables
- Full code that covers all requirements
- Deployment guide
- Swagger documentation that matches final API
- Verification guide