My Role: Backend Co-Developer
As a core backend developer within a 7-person team, I collaborated heavily on the application's logic building. I was primarily responsible for creating the database schema and ensuring smooth data pipelines between the Java application and the backend.
Figure: POS Database Schema and Data Flow.
Development & Implementation
What I contributed to the project:
- Database Architecture & Integration: Designed and implemented the MySQL database schema from scratch. I handled the data integration using JDBC, ensuring that information flowed seamlessly and accurately between the Java Swing desktop interface and the database.
- Core Logic & Receipt Generation: Co-developed the foundational business logic of the POS system. A key feature I wanted to implement was engineering the logic for a customized, printable receipt system designed specifically for cashier workflows.
- Version Control & Team Syncing: Acted as a communicative bridge during production. By effectively communicating code changes, database updates, and code pushes to the rest of the team, I helped prevent merge conflicts and ensured a smooth development cycle.
Project Scope & Limitations
To establish clear boundaries for the 3-week development cycle, the project adhered to the following parameters:
- In Scope: Desktop Java Swing interface, JDBC MySQL integration, local employee/admin authentication, sales dashboard with order management, and real-time inventory updates.
- Out of Scope: Mobile/web platforms, multi-branch remote synchronization, hardware integrations (barcode scanners/physical printers), online payments (cash-only system), and advanced authentication (like 2FA).
Results & Insights
This was one of my first major collaborative projects, and it served as my primary introduction to the Model-View-Controller (MVC) architectural pattern. Working with a 7-person team was an incredibly fun and educational experience. While the 3-week timeline was extremely tight and we barely finished in time, our hard work paid off, and we successfully aced the final presentation.
Software Showcase