Skip to content

Tamara-Sennin/bookstore

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

S24 Bookstore

Interview process

During the on-site interview we will pair together to extend the provided application, fix some bugs and write tests. We kindly ask you to configure all the required tools to make sure "it's running" on your machine, and you are able to make and verify changes.

You don't need to implement any code changes before the interview.

We will focus on the area of the app you are most comfortable with (backend/frontend) and will use one of the languages supported in Scout24:

  • Kotlin
  • Java
  • JavaScript
  • TypeScript

Project skeleton

This folder contains

  1. a backend skeleton for a Kotlin/SpringBoot Maven project and two CSV files.
  2. a backend skeleton for a Java/SpringBoot Maven project and two CSV files.
  3. a basic React frontend app

Prerequisites

You might have to install the following:

  1. Java 17 - make sure Maven points to your Java17 JDK
  2. Node 16+
  3. NPM 8+
  4. IDE of your choice

Running the app and tests locally

Linux and MacOS

  1. Download dependencies
make setup
  1. Run the tests for backend and frontend
# run all tests
make test

# run backend tests
make test-backend-java
# or 
make test-backend-kotlin

# run frontend tests 
make test-frontend
  1. Start both backend and frontend
make run-local-backend-java & make run-local-frontend & fg
# or 
make run-local-backend-kotlin & make run-local-frontend & fg

Open http://localhost:3000 to see the frontend

Windows

  1. Download dependencies
mvnw install
npm ci --prefix frontend
  1. Run the tests for backend and frontend
# backend
mvnw -pl java -am verify
# or 
mvnw -pl kotlin -am verify

# frontend
set CI=true
npm test --prefix frontend 
  1. Start both backend and frontend
mvnw -pl java -am spring-boot:run
npm start --prefix frontend
# or 
mvnw -pl kotlin -am spring-boot:run
npm start --prefix frontend

Open http://localhost:3000 to see the frontend.

Sample problem statement (Backend)

Choose either Kotlin or Java skeleton.

Given the provided bootstrap application, and two CSV data sources:

Please extend the application so that it can be used to do some of the following:

  1. Implement a CSV reader for amazon.csv
  2. Implement a CSV reader for disney.csv
  3. Implement a service to combine both data sources
  4. Implement a REST API for listing all books without duplicates
  5. Implement a REST API for ordering all books by title and/or height in either ascending or descending order
  6. Implement a REST API for finding books by given author and/or genre
  7. Consume the REST APIs in the frontend app and show results in a responsive grid view

Note again, that no coding is expected before the interview. Tasks above are just to give you an idea of what you will be doing during the interview. Just make sure you are able to edit the code and run the tests.

Sample problem statement (Frontend)

Have a look here.

Looking forward to speaking with you!

About

Sample for technical tests

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published