Sophie Ha·Apr 11The Soft Power of an Architect: When “Done” is Better Than “Perfect”In the final weeks of setting up the bank’s Back Office (BO), I spent more time in meeting rooms than in my IDE.
Sophie Ha·Apr 11The “Shared Package” Dilemma: De-risking Responsibility in a Bank-Scale MonorepoIn a Monorepo, the Shared Package is often viewed as a technical convenience. But in a high-stakes banking environment, it is a Risk…
Sophie Ha·Apr 10The Frontend DDD Trap: Why I Stopped Trying to Mimic the BackendIn the world of software architecture, DDD (Domain-Driven Design) is the holy grail. We are taught that services should be strictly…
Sophie Ha·Apr 10Why I Chose Pragmatism Over “Cool” Tech: A Frontend Architect’s Journey in BankingWhen I was appointed to lead the Back Office (BO) transformation for our bank, I knew I wasn’t just walking into a technical challenge. I…
Sophie Ha·Dec 5, 2025Stepping Into the Unknown: My First Steps in Web Domain Analysis and Back-Office Structure DesignIn July, I joined a group of talented engineers and moved into our company’s subsidiary. Our job sounded exciting — and a little scary. We…
Sophie Ha·Aug 11, 2025Refactoring a Complex Coupon Form — How I Turned Chaos Into ClarityOne of my biggest achievements last year was successfully refactoring our core coupon creation system.
Sophie Ha·Aug 11, 2025Lessons Learned from Redesigning Our Frontend Permission SystemLast year, I was assigned as the PIC for a major permission system redesign for one of our core features — Coupons. This feature allows…
InVue.js DevelopersbySophie Ha·Mar 22, 2019Tooltip Practice: CSS vs JSThis article will analyze the theory of implementing a tooltip in two different ways.A response icon3A response icon3
Sophie Ha·Feb 10, 2019Vue Loading Plugin Design AnalysisThere are three main ways to create a Vue loading plugin: single-file component, instance method, and directive.