Coder Social home page Coder Social logo

java_backend_sample's Introduction

Endava Technical Interview

Project Setup

  • Fork the repository and clone it to your local machine. For documentation on how to do this, please visit: https://docs.github.com/en/get-started/quickstart/fork-a-repo
  • Open the project locally
  • Create a new branch in the newly forked repo using the naming convention yourFirstName_yourLastName. This is where your work should be saved.
  • Run the project from the WorkSampleApplication class
  • The application will start on http://localhost:8080
  • To better understand the workflow process, view this video on how to fork a repository, and open a pull request to merge branches within a forked repository

Existing State

This is a simple REST application for serving a blog.
It uses Spring Framework, Maven, Java 11, Lombok and data is stored in a Mongo database.

Currently the application has 2 endpoints:

1) To add a blog post - Post at /blog/post
2) To get a blog post by id - Get at /blog/post/{id}

Task

Your task is to add a commenting feature.

You should add two new endpoints.

1) Post at /blog/post/{1}/comment - which should create a new comment for a post with passed {id}

2) Get at /blog/post/{1}/comment - which should return all comments for a post with passed {id}

Under the resources folder are example json files for both a Blog and a Comment.

Feel free to modify existing files or create new files. You may add new dependencies if you choose. Please follow the conventions in place throughout the project.

Please spend no more than 4 hours on this task

Resources

You may use any internet sources to aid your implementation.

Below are a few links to documentation that may be helpful:

Spring - https://docs.spring.io/spring-framework/docs/current/reference/html/index.html

Mongo - https://docs.mongodb.com/guides/server/install/ : https://docs.mongodb.com/guides/

Maven - https://maven.apache.org/guides/getting-started/maven-in-five-minutes.html

Lombok - https://projectlombok.org/features/all

Junit - https://junit.org/junit5/docs/current/user-guide/

Mockito - https://site.mockito.org/

Submitting Your Work (IMPORTANT)

When you are finished:

  • Create a Pull Request in Github for the forked repository.
  • This Pull Request should compare your created branch on the forked repo to the main branch on your forked repo.
  • Email the link to your Pull Request to [email protected] at least 24 hours prior to your technical interview

Again, please make sure your Pull Request is comparing the new branch you created on your forked repo to the main branch on your forked repo. The initial repository you forked off of should NOT be referenced.

java_backend_sample's People

Contributors

mikefahrnerlev avatar thetamigill avatar sara-altman avatar wedunsto 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.