Key Information

Register
Submit
The challenge is finished.

Challenge Overview

Challenge Objectives

  • Create a Node.js processor that will listen to kafka topics and will make the appropriate API calls to our Member API.

Project Background

We’re in the process of revamping our platform and adding support to store more information about our users as traits in order to improve the overall user experience in our platform.

Technology Stack

  • Node.js

  • Kafka

  • Docker and Docker Compose

  • AWS

Code Access (for reference)

Example processors:

Member API code:

Identity service code:

Detailed requirement

 

The topics the processor should listen to are:

  • event.user.created

  • event.user.updated

 

Note that those topics should be configurable and the processor should be able to read them from env variables.

 

We don’t have any sample payloads but see if you can pull the structure from “com.appirio.tech.core.service.identity.representation.User”

 

The processor should listen to those topics, receive the payload and make the appropriate API calls to our Member API. You will have to explore the ap-member-microservice code to figure out the correct endpoints to use in each case.

 

Use case:

When a user registers, the identity service will do all its work and invoke the kafka event "event.user.created". Then our processor will be listening to "event.user.created" and based on that will invoke our ap-member-microservice to create a user in dynamodb and ElasticSearch.

 

The name of this new processor should be: member-account-processor

 

Feel free to ask on the challenge forum!

What to Submit

Submit:

  • The processor source code

  • Detailed configuration and deployment instructions (README.md)

  • A verification document



Final Submission Guidelines

Please see above.

ELIGIBLE EVENTS:

Topcoder Open 2019

REVIEW STYLE:

Final Review:

Community Review Board

Approval:

User Sign-Off

SHARE:

ID: 30077549