The problem
- The app ran on AngularJS and Ionic with aging Cordova plugins, and was being rebuilt on modern Angular and Capacitor.
- Payzer had committed to an April 30, 2025 release, with payment features, customer history, financing, location tracking and native card-reader and check-capture support still to build.
- At the current pace, the date was in doubt, and the team needed engineers who could be productive in an unfamiliar codebase at once.
What we found
- Before the engagement, a technical assessment measured the app's velocity against the backlog.
- Hitting the date would take three full-time Angular engineers and two native mobile engineers.
- There was no end-to-end test automation, and one shared routing file caused frequent merge conflicts.
What we did
Productive on day two
The team started on January 13, 2025 and opened its first pull requests on day two.
Took the critical features
Briebug engineers delivered stored payment accounts, record payment, customer history and send-by-email or text. Our native engineers completed the iOS and Android work for card-reader payments and check capture.
A safety net while shipping
We set up Cypress with Cucumber in Payzer's GitLab pipeline, built shared mocks and utilities, and trained the QA team. Cypress exposed a race condition in the app's global loading service, which we fixed before release.
Left the code healthier
We moved routing to feature-based files to cut merge conflicts, and gave Payzer a prioritized plan for state management, story sizing and testing.
The result
- Every release feature was complete by April 21, 2025, nine days before the deadline.
- In early May, the new app was released to its first customers.
- Cypress and Cucumber run in GitLab CI, and Payzer's QA team is trained to use them.
- Payzer kept Briebug on after release to build new features.
[CLIENT QUOTE: Payzer]