Cloud-agnostic solution to store and retrieve files
Submission format:
- You can use any preferred programming language or technology to write the API. However, we prefer C# or Java as the choice of programming language.
- The candidate should submit the working code and screenshot of API responses also
- The candidate should submit a complete document also that should explain the solution and steps to execute the code as well like payload & URL etc
- Candidate must submit the API execution proofs like POSTMAN collection or SOAPUI project etc. Well prepared payload to execute the API with any tool will be much appreciated.
Developer Guide:
- Write a RESTful API that can be consumed by any application. This API should have appropriate operations to upload and download the files from cloud storage.
- API should support the programmatic access to desired cloud services.
- API should follow standard security guidelines while connecting to cloud services
- For uploading the files, API should allow only authorized users
- Authorized users can obviously always download the files.
- The application can allow some guest users who need only temporary access to some stored files.
API should be capable to provide temporary access for a limited time interval also to access a particular file. For example a guest user is providing a dedicated file name. The API should return a temporary URL from which the user can access the required file for a limited time interval.
Evaluation Criteria:
- Concept and solution design has major weightage in evaluation criteria
- Candidate must complete all 3 mentioned uses cases i.e. upload, download and download with temporary access
- At least 2 cloud providers must be utilized in the solution. Preferably AWS and Azure should be used in the provided solution
- In the provided solution, appropriate handling of sensitive keys and information is expected. So any submission having proper handling of sensitive information will get more weightage
- Any submitted code having compile-time error will not be accepted
A smart BOT
Submission format:
- Code and recordings for the solution flow for the scenarios covered
Developer Guide:
– Steps/Instructions for a developer to work on the problem that can help them
There are no specific guidelines for Bot development. Below are use cases that should be covered in this
- The bot should be able to read metadata on the HTML page and can tell the user what needs to be done on the current page since it would be a question/answer or survey sort of a page
- The bot should be able to provide links to documents as reference guidelines for the user in case more clarity is required
- An automated way of making the bot intelligent and not manual
Evaluation Criteria:
- How correct Bot is able to read metadata on the page and able to provide suggestions
Create a solution for Appointment Scheduling and Routing
Submission format:
- System Design document
- Pseudocode for Algorithm written to try various permutations and combinations and get the shortest possible route
Developer Guide:
Prerequisites
- Use Visual Studio 2017 or above
- Develop using .Net Core 3 or above SDK
- Access to Google Map APIs will be required
- Access to Git to upload code and documents
API
- Build a Restful API in .Net Core to provide Cross-Platform support
- API must accept the input JSON in the form body and traverse through the list of addresses
- In case it is required to use a database to store output result set, you may go with any SQL or No SQL databases
- Program should have an error logging mechanism to capture the invalid locations or any kind of failure
- Add proper comments to the code and follow standard naming conventions for the variables declared
Front End
- Build a basic reusable component to display the result using Angular versions 4 or above
Evaluation Criteria:
Evaluation Criteria - System should work on different list that will be used for evaluation
Scoring Weightage
- API to provide output based on input JSON - 70%
- Google map integration to show addresses along with route and drive time - 20%
- UI to show output in angular component- 10%