Enterprise Management System
Tomaho Soft needed a unified interface for accounting, warehouse, and operations instead of scattered tools. I contributed to a React-based enterprise platform that brings these workflows into one place with consistent UX and reusable components. Improved day-to-day operations for staff and reduced context-switching. Built with React, Redux-Saga, Styled Components, Formik, and Yup.

The Problem
Staff were switching between separate accounting, warehouse, and operations tools with inconsistent UX, which slowed down routine workflows and made training new staff harder.
Challenges
- Bringing three previously separate workflows into one consistent UI without breaking users' existing habits
- Handling complex async flows (multi-step approvals, stock updates) predictably across the app
- Building a shared component library while the product was still actively evolving requirements
Key Decisions & Trade-offs
Redux-Saga for async orchestration
Warehouse and accounting flows involve multi-step, conditional side effects (e.g. stock check → approval → ledger update); sagas made those sequences explicit and testable compared to thunk-based ad-hoc chains.
Formik + Yup for all forms
Consistent validation UX across accounting and warehouse forms reduced the amount of custom validation code duplicated per module.
Results
- Reduced context-switching for staff by consolidating three workflows into one consistent interface
- Reusable component library shortened the time to ship new modules later in the project
Lessons Learned
- Investing early in a shared component library paid off once the product scope expanded — retrofitting consistency later is much more expensive
- Redux-Saga is powerful but has a real learning curve for teammates; clear conventions for saga structure mattered as much as the library choice itself