Giter Club home page Giter Club logo

beyond's Introduction

Beyond - NodeJS Back End Test

At Beyond we absolutely love working with the latest technologies and take great care in producing solid apps and user friendly, aesthetically pleasing interfaces for our clients.

Before we get you in for a chat we would love to see you in action so have put together a small task for you to showcase your coding skills. We would like you to implement a simple image processing web API.

Requirements

The application should provide endpoints for creating image objects in a datastore, managing the objects in the datastore and providing new (resized) renditions of existing image objects already present in the datastore.

The technical requirements:

  • NodeJS should be used as the web server.
  • Data should be stored in a NoSQL based datastore.
  • Security aspects should be taken into consideration.
  • The application and the datastore should be deployed as Docker containers.
  • Your submission should include run instructions to bootstrap the containerized application locally.
  • Version control via a git repository.

The functional requirements:

Your implementation should adhere the to OpenAPI 2.0 specification defined in the swagger.yaml file in this repository. This definition can be summarized as follows:

  • As an authenticated user, I should be able to use a create and delete image objects in the datastore.
  • As an anonymous user, I should be able view image objects via a public url.
  • As an anonymous user, I should be able to get a resized rendition of existing image objects via a public url.

Extra credit

If you have the time and inclination, here are some things you could implement for extra credit.

  • Caching of resized image renditions.
  • Add additional image processing endpoints (eg rotate, grayscale, etc)
  • Add pagination to the list image objects endpoint.
  • Write a terraform module to provision an AWS environment to host the application, and a script to deploy the application to the environment.

Resources

Here are some resources which may help get you started.

beyond's People

Contributors

lvnhmd avatar

Watchers

James Cloos avatar  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.