Challenge Overview

Challenge Summary

Welcome to this challenge! In this challenge, we are going to develop the frontend for a new app to manage the Topcoder Talent as a Service(TaaS) offerings from the provided designs.

NOTE: Please note that the timelines for every phase is short than normal challenges. 

Project Overview

Gig Work at Topcoder is part of our “Talent as a Service” or TaaS offering. We are building a new application to manage the TaaS offerings, this will be used for creating new gig work job posting, members applying to the jobs, customers reviewing job applications, and finally assigning members to the jobs and managing feedback from both client and members.

For the development, Topcoder is moving towards the micro frontend frameworks where each app will be developed as a micro app which will be served from one frame app. The TaaS application will be one of such micro-app.

We have developed the prototype using micro-frontend in React JS, now we need to integrate this frontend with TaaS APIs.

Technology Stack

Single-spa, React Js, Javascript, Html, CSS, Rest APIs

Browser Requirements

latest Chrome, latest Safari, latest Firefox, latest Edge

Assets

The assets are shared in the forum.

Individual Requirements

Implement the following pages

  • My Teams API: GET /taas-teams
  • Team Details API: GET /taas-teams/{id}
  • Job details API: GET /taas-teams/{id}/jobs/{jobId}

Refer to the prototype pages listed here.

https://mfe.topcoder-dev.com/taas/myteams
https://mfe.topcoder-dev.com/taas/myteams/1
https://mfe.topcoder-dev.com/taas/myteams/1/positions/12

Other changes

In the UI, currently, we are showing the required skills and other skills. Remove that separation and just consider like all skills of jobs are required. Change the title to Job Skills. More detail https://github.com/topcoder-platform/taas-app/issues/1

General Requirements

  • Follow the best practices from the single-spa.js
  • The lint should be pass
  • There shouldn’t be any error in production mode deployment
  • Code should be easy to follow/understand for a future developer
  • All data should be coming from TaaS API now
  • Fix if there any backend APIs need to be fixed
  • Healthcheck for the app.

Pointer for data creation and verification. (Refer respective swagger doc shared.)

  • POST (create) a v5/project with type talent-as-a-service and get projectid.
  • GET v5/skills and v5/users/skills. Note Down userid and skillsID(s)
  • POST (create) a v5/Job with ProjectID and SkillsID(s) from above. Note Down id (jobid)
  • POST (create) a v5/jobCandidate with above JobId and UserId (from point 2)
  • POST (create) v5/resourceBooking with JobId, userid and projectid, and other details. Notedown (id) resourcebooking id
  • PATCH resourcebooking as assigned

Note :

  • Only assigned resource(s) will be visible for /taas-teams/ and /taas-teams/{projectid}
  • Only customer rates will be visible at the frontend.
  • In TaaS context projectID = teamID

Winner Responsibility

  • The winner has to submit the Pull Request on Github 

  • The winner has to fix the issues found during the review



Final Submission Guidelines

Submit the zip containing

  • Git patch or full integrated source code with detailed readme to setup, deployment.
  • Verification guide
  • Please provide a short video of the app working

ELIGIBLE EVENTS:

2021 Topcoder(R) Open

Review style

Final Review

Community Review Board

Approval

User Sign-Off

ID: 30154890