christophpickl / payconiq

backend developer assignment

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

About

Kotlin Travis Issues

A simple "RPC over HTTP" (a.k.a. ReST) application written in Kotlin to offer some basic CRUD operations for stocks.

See full requirements PDF for more details.

Tech Stack

  • Kotlin
  • Gradle
  • Spring Boot 2
  • AspectJ
  • JUnit 5, AssertJ, Mockito
  • Travis CI
  • Postman

How to run

$ git clone https://github.com/christophpickl/payconiq.git
$ cd payconiq
$ ./gradlw bootRun
$ curl http://localhost:8080/api/stocks

In order to see a list of all stocks, upon up your browser and enter the following address: http://localhost:8080

For a more convenient approach to test the API, use the Postman 2.1 collection.

Notes

  • Regarding "Provide us with a merge request to master of this repository", it was decided to split each requirement into seperate pull requests/issues.

Further possible doings

  • Build a Docker image and deploy to PaaS (Dokku, Heroku or AWS free Tier)
  • Use Java 11
  • Add authentication (and authorization) via Spring Security
  • Use Kotlin-DSL for Gradle scripts
  • Support pagination
  • Swagger documentation
  • Run release on Travis (at least GIT tag it)
  • Split up unit and integration tests in separate source sets
  • Split into modules (rest, service, persistence)

About

backend developer assignment


Languages

Language:Kotlin 91.7%Language:JavaScript 6.5%Language:HTML 1.2%Language:CSS 0.5%Language:Shell 0.1%