Key Information

The challenge is finished.

Challenge Overview

Our client, General Electric (GE) provides Predix - The platform for Industrial Internet of Things (IIoT), which helps to develop, deploy, and operate industrial apps at the edge and in the cloud. It securely connects machines, data, and analytics to improve operational efficiency. Among other services, Predix powers CityIQ - An open and interoperable IoT platform enabling developers and partners to build applications that drive new city services, optimize operations and improve citizens’ quality of life.

GE wants the Topcoder community to work with Predix and to create sample applications that emulate various devices interoperating with Predix services over the network. This challenge is a part of a series of Predix contests with the total prize pool over $10,000. We hope you will take time to register for Predix, read about the services they provide, and configure your environment. Other challenges in this series may use different technology stacks and approach very different problems, but all of them will utilize Predix account and different services provided by the platform.

UPDATE: The prizes on this challenge have been incremented to $1400 / $700 / $200 / $200 / $100 to warm up your interest to compete ;)


If you have not registered already, go to and join Topcoder Predix Community. Fill out the registration form and confirm your email address. Once completed, you will receive community welcome email with a link to register your Predix developer account.

During registration of the Predix dev account use the personal account type. Be aware that approval of the Predix account can take a few days at the Predix side. To facilitate the process, please message in the challenge forum your Topcoder Handle / First and Last Name / Email that you have used for registration of Predix account. We will pass these data to GE Predix team to speed-up the process.

Eligibility: As of now, residents of the following countries are not allowed to register in Predix, hence they won’t be able to participate in this challenge: China, Cuba, Iran, North Korea, Russia, Sudan, Syria.

Challenge Scope

In the previous challenge we have developed the backend for a simple proof-of-concept application, that cobmines together services provided by CityIQ (Pedestrian, Traffic, Parking and Environmental data), Predix (Assets and Cloud), and City’s Open Data (Special Events and Construction) to solve (in a naive way, for now) the following problem:

Imagine, you are an organizer of a special event (e.g. a big birthday party, a festival, 10k walk/run, or other indoor/outdoor activity), looking for the optimal date, time, and location in the town. Among other things you have to pay attention to in evaluating potential possibilities, you would want to know:
  • Where would be the best location of the event based on the vehicle / pedestrian flow on a similar day? Will it be easy to find parking for attendees?
  • Are there any other events, or major road constructions already scheduled nearby?
  • In case of an outdoor event, what is the microclimate at the potential site (temperature, humidity, noise, etc.)
The NodeJS backend developed in the previous challenge provides the endpoints to:
  • Make the search of potential event locations, provided approximate area for the search (the central point and radius around it); and optional parameters allowing to narrow down the search (assumed amount of guests, outdoor and/or indoor event, etc.).
  • Proxy the retrieval of relevant information from CityIQ / City’s Open Data, converting it to the format convenient for injestion by the frontend.
In this challenge we want you to develop a simple but clean and functional frontend that will expose and demonstrate that functionality. It should be a one / two pages app, that feature a map, where relevant data from underlying services are shown (i.e. once it is loaded we already can show to the user the places where some construction works / events / high traffic, etc. are expected in the nearest future, or in the time range specified by the user), and which can be used to search the potential event locations. Also it should feature a table with past queries / results, to rapidly display them on the map / perform a new search with the same parameters.

Technically, you can go with ReactJS or Angular 2+ framework to implement this, following the best practices and common sense on the way. Reviewers will judge it subjectively, giving 60% priority to the look / feel / functionality of the resulting app; 20% to the technical apects of your code, and 20% to the documentation provided.

Do not hesitate to ask for clarifications in the challenge forum. Also in the forum you will find the winning sumbission from the backend challenge.

Final Submission Guidelines

Submit the source code, along with verification instructions and a brief demo video. The code and documentation should include the complete package of backend and frontend and describe how the configure and deploy them together, both for local and remote testing.


2018 Topcoder(R) Open


Final Review:

Community Review Board


User Sign-Off


ID: 30060518