Giter Site home page Giter Site logo

cc_2017_10_php's Introduction

Craft-IT Coding Challenge "Exchange Rates"

Weekend, Oct 14 to Oct 15 2017

Receive €150 for a weekend of programming!

All the best selected submissions receive the money.

Scope and Goal

The scope is to show basic understanding of API interaction with caching.

The challenge this time is to interact with a RESTful API endpoint with PHP! This time we are programming an exchange-rate retrieval.

The Goal is a frontend/backend that lets a user see the EUR/USD for a given date.

On the Frontend-Side

There should be one input for a number, then a selection if its EUR to USD or USD to EUR, and a Date-Picker. The frontend should then automatically retrieve the right value for the date and display it to the user. browser_mockup

It should be visually "appealing", the usage of a Frontend-CSS Framework is recommended.

On the Backend-Side

Your Backend should be written in PHP. You can choose to make it either a RESTful service between a SPA with a frontend-framework such as Angular/Vue/React/... or you just make static pages and let a backend-framework handle the view rendering. Usage of a Framework such as Zend/Laravel/... is recommended. Additionally it should cache exchange rates, so that it's not necessary to retrieve the same exchange rate for the same date again. data_flow

Minimum Requirement:

  • Connect to the API from openexchangerates.org
  • Provide a frontend where USD/EUR rates can be calculated
  • Caching using any Database System you want
  • Show proper handling of exceptions/sanitizing/escaping/...

Bonus:

  • Usage of frontend/backend tools like bower/webpack/npm/browserify/composer/...
  • Make all Currency Pairs available (by fetching them from the API)
  • Make that user-based - users can login and see their exchange-query-history
  • Visual Comparison between two exchange rates (two different dates)

Rules to get the bounty

The following is a requirement:

  • Publish your work somewhere on github
  • Do it on your own - this is not a group task
  • and submit it not later than Oct 15, 23:59:59 CEST and notify [email protected] and add tomw1808 to your github/bitbucket!
  • When your code is selected as one of the winners, you have to come in and prove it during a code review
  • Be (at least) open to a fulltime/parttime position in our team and take part in an interview. You receive the bounty no matter if you are really becoming a team-member or not.
  • You are not working for us and you have not participated in any of our coding challenges before
  • By participating you accept that sending out invitations on submissions is at Craft-IT’s solely discretion. No submissions will be accepted later than the deadline given above!

Rules to get an awesome Job

  • Deadline: Oct 15, 23:59:59 CEST
  • Same rules as above: Do it on your own, make it work, prove it in a code-review

Where to start / What to expect?

The challenge takes a seasoned developer around 3-4 hours of work, until a meaningful result is achieved.

You can use any framework/library you feel is suitable, be it backend/frontend you want. Bonus is it runs inside the vagrant given in this directory (should make your life easier actually).

We are looking into your code the following week/weeks and get back to you as soon as possible. We are all just humans here, so please add any documentation/instruction in a way that we understand it. If it's too complicated to install: consider it a fail.

Recommended Software

  1. Install Vagrant
  2. Install VirtualBox
  3. Go to a shell/terminal/Cmd/gitbash and type vagrant up inside this directory.

And work with your favorite IDE inside the ./www directory.

Point your browser to 127.0.0.1:8080 to get the output of ./www.

type vagrant ssh to enter your virtual machine.

This diretory is mounted inside the virtual machine in /vagrant.

Make sure nothing else is running on port 8080 or edit the Vagrantfile accordingly.

About us

Craft IT is a small boutique web development company located in Graz, Austria. We are passionate full-stack developers and serve international clients, with a focus on financial and analytics applications. We do work with a number of APIs from e.g. cloud accounting providers. We mostly do very custom tailored software which (more often than not) exceeds the possibilities of existing frameworks and libraries.

We are looking for new team-members who love hands-on, enjoy great teams, long term projects, a fun work-environment, tabletennis and coffee (not a must, we also have tee).

If you are looking for a job, this is the kind of work you can expect with us. If you want to join us, here's your chance (or send us your CV)!

cc_2017_10_php's People

Watchers

Thomas Wiesner avatar 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.