A consistent product interface starts with reusable building blocks that make it easier to maintain UI quality as an application evolves.
At Majoo Teknologi Indonesia, I worked on an internal Flutter design-system package and contributed to the redesign of the Point of Sale application. My work focused on building reusable components, maintaining a clear package structure, and helping the mobile team apply shared UI standards across the product.
Building reusable components
I collaborated with the team to define the structure and architecture of the design-system package, with an emphasis on reusable, maintainable, and understandable code. The package provided shared UI components that other developers could use when implementing application features.
Applying the design system
I helped implement a new design for the POS application by adopting the latest internal design-system package. This brought the interface in line with the company's design standards and supported a more modern, consistent visual experience.
Maintaining code quality
Alongside implementation work, I participated in code reviews across the mobile team to identify potential issues, maintain code quality, and encourage development best practices.
What this taught me
A design system is more than a collection of UI components. Its value comes from how well those components are structured, understood, and adopted by the team. Building reusable foundations and applying them consistently helps connect individual development tasks to a more cohesive product experience.