Giter Club home page Giter Club logo

beyond-coding-challenge's Introduction

Beyond Code Challenge

What to do (summary)

  1. Read this entire README -- you should have the full picture before you start.
  2. Plan your time a little bit. Don't spend a long time on the challenge.
  3. Build your solution.
  4. Check in your code to a GitHub repo -- don't be afraid to continually commit code, some history can be cool to see.
  5. Either make your repo public, or add me as a viewer (ask me for my email).

The challenge

In this challenge, a client will retrieve some data from a server, which returns the data from a static CSV file. The client does some processing of the data to show a couple of helpful insights from the data.

This challenge is broken up into a few small chunks:

  1. Creating an API to serve some data
  2. Consuming the API to fetch the data
  3. Parsing the data into a manageable format
  4. Getting some insights from the data

How you approach the challenge is entirely up to you.

Data

There is a data set in CSV format for you in the data directory -- this is what we'll work with. This is an open data set from Kaggle.

It's a simple CSV file with data about various Instagram influencers. It's pretty self explanatory, but if anything is unclear, you can ask.

Requirements

  1. Need to use TypeScript. All other tech choices are up to you.
  2. Need to create an API endpoint which reads from the static data file and returns the data in some way.
  3. Need to create a script that consumes the API endpoint
  4. Need to create some output which gives some insights back to the user. How it's executed, and how it's presented is up to you.

Insights

Your client should give the following insights from the data:

  1. Who are the #1 top influencers per category, by followers?
  2. Who are the #1 top influencers per country, by engagement avg?

Skeleton code

I've provided some skeleton project structure in this repo, BUT feel free to ignore it if you want. You have the freedom to build how you see fit.

Watch out!

  1. Some of the numbers are in millions (M) and some are in thousands (K)
  2. What if the data set grew 10x? 100x?

Not much time

You should aim to cap your time at around 2 hours. You've got your life to live. The solution doesn't need to be perfect, but you should aim to get the main stuff working, and include a README explaining what you'd do next, how you'd improve it if you had more time, and any assumptions you made.

2 hours probably isn't enough time to create a really elegant solution for this challenge. Part of the test is to see how you handle a limited time budget. So it's totally expected that things may not be fully complete, and even a little scrappy in places.

To that end, I'd recommend planning your time a little bit and pretending you're already working in a startup.

Deliver

You should check in your code to a GitHub (or similar) repo. Feel free to commit regularly -- can be cool to see the history. When you're ready, share it with me. You can either make it public, or just add me as a viewer โœŒ

Help!

If anything needs clarifying, feel free to ask! You won't be judged negatively. It's a great thing to ask for clarification when needed.

Reach me at shane#1096 on Discord.

beyond-coding-challenge's People

Contributors

rafuka avatar sneub avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.