Client's record
Turned years of accumulated technical debt into a sustainable structure.
This is a consulting review of Bagstrap, which moved an app that was in danger of being discontinued to the latest environment and created a structure that could be operated again.

Bagstrap · Outstanders
IT consulting · Technical debt reliefFirst story
Hello. I am Jiwoo Lee, the CEO of Outstanders, which operates Bagstrap. We are providing a service through a mobile app, and as several developers were replaced during the initial app building process, technical debt accumulated and we faced serious problems.
CEO Lee Ji-woo · Bagstrap · Outstanders
Project background
The reason I started again
- 01
During the process of building early mobile apps, libraries and dependencies were poorly maintained for several years due to frequent changes in developers. Flutter remained out of date, and the libraries it was using were either deprecated or had security vulnerabilities discovered. In the end, we received distribution rejection warnings from the App Store and Play Store, making normal updates difficult.
- 02
Hyunje first analyzed the existing code base and library compatibility and then proceeded with the Flutter version upgrade step by step. At the same time, code written inconsistently by multiple developers was standardized and the architecture was redesigned to improve maintainability.
- 03
As a result, deployment rejection warnings and security issues were resolved, and we switched to a library compatible with the latest Flutter version. By resolving technical debt accumulated over several years and establishing a long-term sustainable structure, we can now operate our services with confidence again.
Our experience together
Crisis of accumulated technical debt
Developers change frequently and libraries and dependencies have not been maintained for years. Over time, Flutter versions became outdated, and some libraries became deprecated and had security vulnerabilities. As the App Store and Play Store issued warnings about distribution rejection, the work could no longer be postponed.

Our experience together
Previous Flutter version
First, we upgraded Flutter to the latest version. This was a complex migration task that required addressing numerous compatibility changes rather than simply changing version numbers. We proceeded step by step, carefully checking the compatibility of each library with the existing code base, and even unexpected errors were quickly found and resolved.

Our experience together
Systematic structural improvement
The entire app has been reorganized along with the version upgrade. We standardized code written in different ways by different developers and clarified state management and data flow. By redesigning the architecture with a focus on reusable components, we created a code base that can be quickly understood even if the next developer takes over.

Our experience together
Reliable stable deployment
After the migration and structural improvements were completed, the app could be distributed normally again. Deployment rejection warnings and security issues have been resolved, and libraries have been updated to fit the latest Flutter environment. By documenting the work process, we have established an operational foundation that can lead to future handover and maintenance.

Final evaluation
Thanks to Hyunje, we have been able to resolve technical debt accumulated over several years and run the app stably in the latest technology environment. I really appreciate you going beyond simply solving immediate problems and creating a long-term sustainable structure.
Daum Consulting Review

