Key Information

Register
Submit
The challenge is finished.

Challenge Overview

Challenge Objectives

  • As part of this challenge, you need to implement all endpoints related to member search, skills and financial data.

Tech Stack

  • NodeJS

  • DynamoDB

  • ElasticSearch

  • Docker

  • Swagger

Code Access

Repo: https://github.com/topcoder-platform/member-api

Branch: develop

Project Background

In this series of challenges, we’re building the new Member V5 API that will replace our existing Member V4 API.

Detailed Requirements

Endpoints in scope

The following endpoints from the Swagger definition are in the scope of this challenge:

  • GET /members/{handle}/skills - Skills get inserted by another service. You need to create a script that inserts data into the database.

  • PATCH /members/{handle}/skills

  • GET /members/{handle}/financial - Financial data gets inserted by another service. You need to create a script that inserts data into the database. You need to create a new table for this in Dynamo.

  • GET /members - This is not defined in the swagger. You need to combine the logic from the /members/_suggest/{term} and /members/_search endpoints into a single endpoint (/members) that gets query parameters to search for members. The search must be performed in ElasticSearch and not in DynamoDB.

Unit/E2E Testing

You need to cover all new code with unit and E2E testing. You need to create both positive and negative test scenarios.

Important notes

  • Follow the best practices for creating Node.js APIs.

  • Use Standard.js for linting.

  • Update the provided Swagger file to reflect any changes made during development if needed.

  • Both the Swagger file and your code should comply to our V5 API Standards (PDF attached on the challenge forum).

  • Entity IDs should be omitted in the bodies of POST/PUT/PATCH calls unless they’re referring to a child entity.

  • Performance and stability are very critical.

Submission Deliverables

Submit a git patch for the latest commit in the develop branch.

 


Final Submission Guidelines

Please read above

ELIGIBLE EVENTS:

2020 Topcoder(R) Open

REVIEW STYLE:

Final Review:

Community Review Board

Approval:

User Sign-Off

SHARE:

ID: 30116382