Very small/quick java spring boot project – Virtual Assistant job

The following is Spring boot project, almost no business logic but the idea is i need to step up the basic dev tool together ( spring boot, mysql database, docker, etc..)

Please let me know how long it takes to get it done ?

Create a Java Spring Boot Web Application(gradle bases) that does the following
1.      Has a Cron Job / Scheduler that
         a.      Generates a random number every 10 seconds
          b.      Saves the number to a database table that has two
                     columns (unique id, random number)
         c.       Pushes a JSON string to a queue (that has the unique id and the random number)

2.      Has a JMS Listener that
        a.      Pulls the JSON string from the queue
        b.      Multiplies the random number by two
        c.       Saves the result in another table (use the same unique id
                       and the result of the multiplication)

You’ll have one web application, a database with two tables; one table will have unique id and random number; other table will have the same unique id and the result of the multiplication.

3- Create a docker file that will spin up a docker container. The container will run Spring Boot App where the web app will run, RabbitMQ for the queue, and MySQL database for the database.

4- Check in all your code in a repository.

5- Create a Pipeline such that every time code is checked into the master branch, it triggers the build.

I need to demonstrate the following:
Use of core Spring Boot concepts such as Dependency Injection, annotations, etc.
•        Error handling
•        Gradle Build Process
•        Incorporating a simple Unit Test as part of the Gradle Build Process
•        Setting up of docker container
•        Setting up pipeline

Posted On: April 26, 2024 09:55 UTC
Category: Back-End Development
Skills:MySQL, Docker, GitHub, RabbitMQ, Automated Deployment Pipeline, Java, Spring Boot

Country: Egypt

click to apply

Similar Posts

Leave a Reply

Your email address will not be published. Required fields are marked *