- Check programming skills.
- Check experience of known-technologies and libraries, and and the speed of understanding new.
- Check quality of the code and reusability of solutions.
- Check unit testing knowledge.
The project is online store vinyl records. No auth required. Docker-compose to start environment.
All APIs should be declarated with GraphQL.
category (has 0 or many disks) {
id
name
}
disk (has one or many categories) {
id
name
}
category_disk {
category_id
disk_id
}
node(id) // get record by id (globalized id should be presented as` base64(‘Type:database_id’)`)
categories // with pagination
disks // by category id or all, with pagination
add category
change category name
delete category
create disk
change disk name
delete disk
add disk to category
remove disk from category
- MacOS/Linux
- PostgreSQL 9.3
- Node.JS 8
- express
- sequelize
- graphql
- graphql-relay
- docker
- docker-compose
- yarn
- jest (nice to have at least some tests to show understanding, very good will be tests of graphql queries and mutations)
- flow // static code check
- babel // to compile/run from Flow sources
- eslint // code style
- makefile // (optional)