Bank Virtually Anywhere, Anytime, with the PNC Mobile App.

Industry
Fintech
Services
Development, Deployment
Business Type
Finance
Timeline
24 Weeks
Sofa in a bright living room
SKAGEN 3-seat · in stock

01 — About the project

On this established project, we took ownership of an ageing codebase and brought it fully up to date migrating every legacy module to the latest versions of Swift and SwiftUI, modernising the architecture along the way, and clearing out technical debt that had been slowing the team down. Beyond the upgrade, we extended the product with new capability, designing and building modules for Rewards Eligibility and Business Accounts that slot cleanly into the refreshed foundation. The result is a faster, more maintainable app that's ready for whatever comes next on the roadmap.

Login
Welcome offer
Category grid
Product detail

Modernising a legacy codebase and building room for what's next

Behind the scenes, every legacy module moved to the latest Swift and SwiftUI, the architecture was modernised, and new Rewards Eligibility and Business Accounts modules slotted cleanly into a foundation finally clear of technical debt.

Our role

Product & development
  • Legacy Code Update
  • New Features Implementation
  • Module Based Architecture
  • Factory Pattern Global DI
  • New Rewards Module Implementation
  • New Main Screen Design & Development
Rollout & deployment
  • Customers Focusing in Canada
  • By Weekly Sprints and Releases
  • Agile Methods for Sprints
  • Heavily Confluence Documents Maintaining Base on New Features.
Furniture showroom interior
Head of Retail Technology
Head of Retail Technology
Nordhem

They worked in a genuinely agile way and built the solution in record time. When the delivery hit a wall, they brainstormed their way around it without moving the date.

Four things it had to do

New UI Upgrade

A brand-new design system, built in Figma, rolled out consistently across every single screen, flow, and component of the app — from onboarding to checkout.

Legacy UIKit To SwiftUI

The new designs weren't built for the legacy UIKit app, so the main goal was migrating the entire UIKit codebase to SwiftUI, plus wiring PDFKit into UIKit so it loads seamlessly inside SwiftUI

Modular Architecture Built on the Factory Pattern

A factory pattern spins up interchangeable components on demand, so new features slot in cleanly without rewriting the core or destabilising anything already shipped.

Deploy store by store

Each location runs its own private network — so provisioning had to work remotely.

BEFORE
AFTER

03 — The solution

Rebuilding the app in SwiftUI without slowing the release train

One design system, every screen. A new typography scale and a deep library of custom components, built in Figma and applied consistently across every screen, flow and state — from account onboarding through payments and transfers

SwiftUI end to end, PDFKit included. The new designs had nowhere to land in the legacy UIKit codebase, so the whole app migrated to SwiftUI. PDFKit was wired through UIKit so documents load seamlessly inside the new views, and full French language support shipped across the app at the same time.

Features that slot in, not bolt on. A factory pattern spins up interchangeable components on demand, so new work drops into place without rewriting the core or destabilising anything already shipped.

Shipping couldn't pause for the rewrite. Bitrise builds straight off Bitbucket and handles delivery end to end, so releases kept landing on a predictable, well-tested bi-weekly cadence throughout the migration.

04 — Impact

What began as a queue-busting kiosk became the layer the merchandising team reads every morning: what sold, to whom, at which store, and what they browsed on the way there.

100%
from legacy UIKit to full SwiftUI release
30%
faster feature delivery post-migration
99%
reusable components in the shared library
More than 1
languages supported end to end
Product team discussing a build around laptops
Ready to build the future ?

The solution is now the retailer's biggest single source of ROI measurement

+SELF-SERVE KIOSK
+CRM SYNC
+OFFLINE-FIRST
WhatsApp
Email
Call