Skip to main content

University team project · 8 people · 2023 - 2024

Software Technology Internship

An order management and inventory system for a beverage store, built with Spring Boot by an eight-person Scrum team.

  • Java 17
  • Spring Boot 3
  • JavaScript
  • Thymeleaf
  • H2 and MySQL
  • Git
8 Members
Team
Scrum
Methodology

A team project building an order management system that automates procurement and stock logistics. Within the Spring Boot monolith, I designed the relational database schemas, the inventory depletion models, and the role-based access controls.

Problem

The client tracked beverage stock by hand and needed one system for it. The tricky part was modeling the dependencies between live stock levels, expiration dates, and automated reordering, while enforcing strict per-role permissions.

Approach

We built a monolithic Spring Boot application as the central hub. I owned the inventory module: the business logic that flags low-stock items and dispatches procurement orders automatically. The frontend is server-side rendered with Thymeleaf.

Outcome

Delivered a working prototype that digitized the manual workflow, hitting every sprint deliverable on schedule across the full Scrum cycle.

Architecture

A classic Spring Boot Model-View-Controller structure, with Spring Data JPA for object-relational mapping and Spring Security for granular access control separating the warehouse roles.

Highlights

Stock Tracking

Live monitoring of beverage stock levels with automated low-stock alerts.

Procurement Automation

Supplier orders are generated automatically when inventory dips below defined thresholds.

Role-Based Access

Authentication that separates administrative duties from standard staff operations.

Financial Logging

Accounting features tracking procurement costs against internal usage and sales.

Timeline

  1. Requirements

    Analyzed the existing workflow and mapped the logistics processes to model.

  2. Backend

    Built the relational models, depletion engine, and ordering system.

  3. UI and Testing

    Integrated the server-rendered Thymeleaf views and completed the JUnit suites.

  4. Delivery

    Handed over the prototype with all acceptance criteria verified.