DEV Community

Kudzai Tsapo
Kudzai Tsapo

Posted on

Making an HR software with Spring Boot Part I

So, this other day I decided to start learning Spring Boot, and I really grew to despise the todo list tutorials people made. Of course, for beginners, they are okay. But when you're done, the question will be now what? Hey, at least you know how to make a todo list, right?

We are going to be making an employee management system. Why you ask? Just because!

Anyway, using Spring Boot with MySQL, we are going to build an employee management system. This system will be for managing employees and their leave days, salaries and all of that nonsense. It's also going to be keeping track of all their suspensions, misconducts ... etc.

The technologies we are going to use include but are not limited to:

  • Java (Spring Boot) for the API
  • MySQL (Database)
  • VueJs (for the front-end dashboard)
  • Probably Bootstrap for the UI

Who is this tutorial for? I don't know! I just decided to make a tutorial to show how awesome I am ... or maybe how terrible I am at software development. It's up to you to pick one at the end. By the way, I'm a complete noob when it comes to Vue, so if you know a better way of doing things ...eh ... good for you!

For the lazy ones, the code is available on github, here. And if you see the code incomplete, then hold your horses... it's still a work in progress after all.

So, where do we begin?

First, we'll start by describing a scenario. What problem are we solving, and why? (the why might be a little fuzzy but hey...at least it's there) By the way, all names specified in the scenario are purely fictional (I made them up), and any resemblance to actual people and organizations is purely coincidental (it wasn't planned!).

Congratulations, you've managed to land a job as a software engineer at the Dull Company (Pvt) Ltd. Now, before you came along, the Dull Company was spending millions of dollars annually on a crappy outsourced software called Aware. The system didn't work 99% of the time, and when it did, it was mostly due to a bug. However, because it was recommended by a previous manager, the company stuck with it. The CEO was outraged when he realized that they were spending that much money on a stupid, non-working program. Being the genius that he's not, he told the company to hire a software engineer to develop and manage internal systems. This is where you come in.

We are not going into the details of how you got the job, but after you come in, your first project is to develop a system for managing employees. This software is supposed to replace Aware.

Now, we are not going to go through the entire SDLC, and of course we are going to assume that you're given all the requirements. (Don't ask me why?) Anyway, we are going to jump in head first and develop the darn system for Dull Company (Pvt) Ltd. The first thing we are going to do is to design the database, and we are going to do this in the next article. So, go ahead and prepare your mind, it's going to be a long journey ahead.

Top comments (1)

Collapse
 
rebekahoj profile image
OLOJA OLAMIDE

I can't find the part two, can you help please?

Some comments may only be visible to logged-in visitors. Sign in to view all comments.