Desktop App Interoperability: On the Front Lines with RBC and OpenFin

Anthony Malakian spent several weeks with RBC Capital Markets and OpenFin to see how desktop app interoperability works in motion.

Kim Prado

Serendipity can strike at any moment. Whether it’s finding your true love, a new best friend, or finding a $10 bill in an old pair of pants the day before payday, for some reason, things sometimes just fall into place. In the world of technology, serendipity tends to come after a problem occurs. 

For RBC Capital Markets, the catalyst for change came in 2015 when senior executives were traveling and couldn’t connect to Salesbook, the company’s internal order management system (OMS). 

As Kim Prado, global head of client insight, banking and digital channels technology for RBC Capital Markets, remembers it, one of the execs emailed her one night while on the road, saying that he couldn’t get the application to launch. The reason was simple enough—he was trying to run it in Internet Explorer, but for a remote login, you needed to use Chrome. It was clear that they had a problem that needed to be addressed immediately. 

“That’s when the lightbulb went off—we needed something that would enable us to be browser agnostic,” she recalls. 

Salesbook was originally rolled out in 2011 using the .NET framework, before moving over to the Windows Presentation Foundation (WPF) graphical subsystem, which became ubiquitous at banks for rendering user interfaces after it was released in 2006. Prado and her team had realized that several key issues were hampering the system. First, they couldn’t deploy updates and new tools quickly: “We were not nimble, and it took so long to make simple changes,” she recalls. Second, training new employees was a “nightmare,” she says. There were 50 or so blotters that essentially cover the needs of every salesperson who ever worked at the bank, and there were plenty of knowledge gaps among users as to how each one worked. Support was also a challenge because, again, no one knew how each blotter interacted with the others.

Yet, the big problem was that they couldn’t deploy upgrades in a browser-agnostic way. Prado says that for a brief moment they tried to switch from WPF to HTML5 internally, but they didn’t have the necessary expertise to make the change and that existing off-the-shelf software wouldn’t work. “Deploying into a [traditional] browser is not scalable or sturdy enough,” she says.

So, the problem persisted—and then serendipity struck. 

One of Prado’s colleagues, Sung Juhng, went to a Bloomberg conference and found a potential solution to the challenge they were facing. “He called me up and said, ‘Kim, I met a vendor called OpenFin—you need to see this,’ and that’s how we found them,” Prado recalls. 

In April, RBC allowed WatersTechnology to sit in on the planning session and standup calls for a two-week sprint to build out search functionality for Springboard, the application that allows the bank to launch Salesbook. It sits above Salesbook, which is wrapped in the OpenFin container. 

Desktop app interoperability is becoming increasingly important among the biggest banks and asset managers in the capital markets, as these firms want to both make their employees more efficient, and be able to experiment with new fintech companies, data delivery and analytics software. OpenFin, which was launched in 2010, is largely considered to be the first to successfully use containerization techniques to build a browser specific to the needs of a financial institution. This space is growing rapidly, though, with the likes of ChartIQ’s Finsemble, Glue42 and others entering in recent years. 

This technology will be one of the bigger Wall Street tech battlegrounds over the next decade. But the purpose of this article is to show how desktop app interoperability works in real life. It’s an example of how RBC Capital Markets is working with OpenFin, along with a smaller case study looking at the specific Springboard sprint. 

RBC OpenFin
Timothy Fadek

Stand and Deliver
On an early April morning, RBC developers from London, New York, and Toronto called in using the Cisco Webex portal to plan the next Springboard sprint, which for RBC is a two-week development cycle that has clearly defined parameters. London-based Preeti Bhudia, serving as scrum master, was essentially the traffic cop, moving proceedings along and keeping things orderly. Will Shotton, the product owner for this particular sprint, Matthew Ash, David Leung, and Amit Kumar listened in, as did Sundeep Dadlani, director of client insight, banking and digital channels technology. 

The group listened as Shotton read a “story,” which serves as a descriptor of a particular piece of development that needed to be accomplished during the two-week sprint. The members then scored the story by assigning a number based off the Fibonacci sequence of 1, 2, 3, 5, 8, 13 or 21, which represented the amount of effort necessary to complete the task, with “1” being easy and straightforward, and then progressing up the scale from there. Each person gives a score and, based on the feedback, Bhudia would give a final score; if everyone agreed on the number, they would move on to the next story.

There were laughs. There were cordial disagreements and lots of pregnant pauses. At the end of the grooming session, the sprint was set to begin. 

This particular sprint was aimed at adding a global search feature into Springboard. From the platform’s toolbar, users would be able to launch a text-search input box where they could enter the name of a person or company, which would yield federated search results populated by all known information on that subject, across every app wrapped in the OpenFin container via the Salesbook platform. Right now Springboard supports RBC’s internal apps, though in the future it will add third-party applications.  

“Today, if you want information across the fragmented systems that we’ve put in front of them, you really have to go hunting and pecking for the information that you’re looking for, even if you know the context to be the same,” says Dadlani, who joined RBC about 15 months ago from Bank of America. 

So, if you want to search for Boeing, you have to minimize and maximize different screens for three, four, or five applications, and then copy and paste the information you need. “This is a much more proactive way of engaging the user, versus the way that they have to go looking for information today,” he says.

Shotton, who was poached from Algomi and started working at RBC in May 2018 as head of front-end tech for the client and banking group, says that while Salesbook as a single application on the desktop underpinned by OpenFin was very useful, “it made sense that more applications could use the same paradigm.” 

He continues: “So we created this extra layer on top of Salesbook that allowed us to have multiple applications within a single desktop launcher, and that’s where Springboard came from. Once we got that far, it kind of made sense that you would have numerous windows open from different applications at the same time. Whenever that happens, what you really want to do is search across all of those applications so that they all reacted to the same search term at the same time, allowing you to get that holistic view of whatever it is that you were searching on.”

As RBC was building out functionality for Springboard, OpenFin was in the process of moving offices and closing out its latest round of funding.

Mazy Dar
Timothy Fadek

The Same Language
In mid-April, a few days before the sprint was set to end, OpenFin CEO Mazy Dar was sitting in the vendor’s WeWork office on the ninth floor of 25 Broadway in New York’s Financial District. The company was preparing to leave and move into its new digs down the road at 80 Broad St, which will be dedicated to OpenFin’s operations. It’s part a testament to the company’s growth and part due to the need for extra privacy as potential competitors seem to be sprouting up left and right. 

Dar and Chuck Doerr, the vendor’s president and COO, are alumni of derivatives broker Creditex Group, and moved over to the Intercontinental Exchange Group (ICE) after it bought Creditex in 2008. Starting at the turn of the century, Creditex developed a desktop app as a trading application for credit default swaps (CDS) that could be installed on desktops at all the major dealers. It started to hit a pain point, though—“It’s just a very onerous task to install an app on a desktop that’s locked down and managed by IT security,” Dar says. Before the desktop app, the platform ran in a web browser—go to creditex.com and you were basically good to go. But the problem there was that traders didn’t like to work in a web browser—latency and security concerns were the main reasons.

It was a catch-22: Creditex needed that multi-window, interactive experience of an app; but an app wasn’t agile enough to deliver new features and functionality the way a web browser could. As the firm added more and more additional applications, it slowed the process even further. And this was not a problem unique to CDS—every asset class was experiencing the same roadblocks. “Everybody had this problem; that’s what led us to start OpenFin,” Dar recalls. 

Dar and Doerr started thinking about this problem in earnest in about 2007, and OpenFin was launched in 2010. They were originally going to build their product using .NET or Java, but as 2011 rolled around they started to realize that HTML5—the newest open software solution stack that was first released to the public in 2009—was the way forward, though it took the capital markets a few years to come to the same conclusion

So, OpenFin was able to develop point solutions that tackled security concerns using a desktop container that would connect applications, while still providing a browser experience for rapid updates. Something else was needed, Dar says. It was around 2017 that the vendor really started to realize that what it was building was the basic communication mechanism to enable desktop interoperability. But it was only halfway there.

“When you think broadly about the ecosystem and how you get an entire ecosystem of apps to be able to talk to one another, you need more than just the communication mechanism, right? You need the standardization.”

That led to the Financial Desktop Connectivity and Collaboration Consortium (FDC3), an initiative created in 2018, led by OpenFin and formed by some of the largest banks, asset managers and vendors in the capital markets, including RBC. Its objective is to create a consistent developer experience using standardized verbs to instruct other apps to take an action.

Basically, as long as everyone is talking the same language, the container—the browser—is the ecosystem, but anyone can join and plug in, so long as they speak that language. It’s why Apple’s iPhone, through the iOS operating system, proved to be such a revolution in the mobile device sector—apps can seamlessly (at least in theory) talk to one another. OpenFin needed FDC3 to help get the banks, asset managers and vendors caught up to what they were trying to do individually with clients.

RBC’s Prado was impressed from the get-go. “When I tell you that this thing just worked, I mean it just worked. I handed it to my dev team and in two days they had something wrapped in OpenFin for me.” But the bank had to figure out its ultimate strategy, hire new talent—such as Dadlani and Shotton—who could help with this change, and train up the DevOps team. 

Dar says the FDC3 initiative is speeding up progress because the playing field has been leveled and, with a common standard, everyone knows where the starting line is. 

“[In 2017], we knew generally that there was an interest in modernization and using HTML5 and our technology, but I think it took time for RBC to really formulate their strategy, and then working with them, we realized over time that the key part of this strategy is incorporating fintechs and new apps, and having the community into what they’re doing,” Dar says. “We also saw this pattern at other banks, and that’s where standards would become really critical.”

In mid-May, OpenFin announced that it had closed its Series-C funding round led by Wells Fargo, which raised $17 million. The latest round brings the firm’s overall venture funding to $40 million. In addition to Wells Fargo, Barclays participated in the round for the first time, as well as existing investors JP Morgan, Bain Capital Ventures and Pivot Investment Partners.

Scrum
Josephine Gallagher

Continuous Development 
The most challenging part of the global search sprint was the user interface (UI) element, as the user experience (UX) team, while happy, gave detailed feedback on areas that could be improved, Ash says. So, while nothing that was scored at the original planning scrum was kicked to the backlog, some UI improvements were added to the list. This is standard for any kind of software development—the UX can always be tweaked. 

Ash adds that while most things can be addressed and handled by the RBC team directly, the newer a piece of functionality is, the more back-and-forth is needed with the OpenFin team. 

So, for example, this Springboard sprint also included the ability for app windows to essentially connect together (snap-and-dock) and to have the same set of windows relaunch when the browser is closed and reopened (sit-and-restore). These were new features recently added by OpenFin. As a result, the snap-and-dock functionality of Springboard global search introduced a bug into the debugging system, ironically enough. While it didn’t affect the eventual software, it did make it difficult to work with, Ash says. He reached out to OpenFin support, which responded within two hours with a workaround for the issues until it could be fixed. 

From there, the RBC team ran integration testing then completed the sprint and released that update into quality assurance. They also have to make sure that whatever they produce or change passes muster with various regulators, so that will often involve an audit of some sort.

Another key piece of the development process for RBC involves ensuring they stay consistent with the FDC3 standards, Dadlani says. 

“What you don’t see on the desktop is the OpenFin bus and infrastructure that underpins Springboard and allows us to make sure that as long as we all speak the same nouns and verbs, which in this case is the FDC3 standard that drives product and customer definitions, we can ensure that we can bring the desktop alive and have any applications that sit in this umbrella animate based on the information that is published,” he says. “The applications can be built by anybody—as long as they speak the same language, we can communicate and interoperate across the board.”

After two weeks, the first iteration of Springboard global search was running, though it wasn’t yet ready to be released across the organization. The daily standup calls went off without a hitch, and at the end of the process, nothing was needed to be put back on the storyboard—though there are plenty of times where a sprint will end, and something gets put on the backlog. 

Dadlani says it’s important to stay consistent with the principles of Agile development and maintain discipline, rather than rush to meet a somewhat arbitrary deadline. The key is to make sure that every two weeks, there’s a release that is “meaningful and substantial from a user perspective.”

Scrum
Timothy Fadek

Paradigm Shift
These integrations are never as smooth as Oban scotch with a couple of drops of water, and there are always people chiming in from the peanut gallery saying that things aren’t improving fast enough or that they don’t like the new features. Curmudgeons who don’t like change exist in every corner of a large organization. The key is to stay focused on the goal line ahead. 

But for Prado, who will have been at RBC for 13 years this August, this project has been unique.

“What’s been really different about this project is that I am retiring my own platform,” she says with a laugh. “This is the fourth generation of the platform. I’ve had the luxury of seeing things evolve, but I’ve also had the luxury of seeing people criticize it at the same time.”

In May, RBC Capital Markets officially began rolling out Springboard. With the right people in place and the bank now able to iterate and advance quickly, it’s kind of like a sled going downhill—at first it requires a push, but then it starts picking up speed on its own. 

Desktop app interoperability—specifically around the changes taking place in the vendor community today, both through cooperation and competition—represents a paradigm shift. If all of these pieces of software that are being created, both internally and among cutting-edge fintech firms, can just work and communicate together in a single browser, then it will allow human traders, sales personnel, compliance officers and risk managers to be more efficient. It will also allow organizations to bring in best-of-breed analytics platforms and products that are delivered via an as-a-service model—this means they can experiment more and fail faster. The savings in operations costs can allow a bank or asset manager to be leaner and to invest in new products, services, geographies and people. 

It’s still early days. But the fact that so many vendors, consortiums and initiatives are joining OpenFin in this market—and the fact that all the biggest banks and asset managers are investing people and money in these programs—shows just how potentially invaluable and competitive this space could be in the years to come. 

For Prado and her team, they’re all in. “We really buy into this next-generation strategy of fintech for Wall Street,” she says. “This is important and, frankly, it’s exciting.”

Scrum
Timothy Fadek

  • LinkedIn  
  • Save this article
  • Print this page  

You need to sign in to use this feature. If you don’t have a WatersTechnology account, please register for a trial.

Sign in
You are currently on corporate access.

To use this feature you will need an individual account. If you have one already please sign in.

Sign in.

Alternatively you can request an individual account here: