Latest Ext JS 7.8 is now available. Learn more

Ext JS Customer Spotlight: eVestment

May 29, 2014 384 Views

eVestmenteVestment provides a flexible suite of easy-to-use, cloud-based solutions, built with Sencha Ext JS, .NET Services, and Elasticsearch, for institutional investment professionals. Through our data and web applications, we help over 2,500 clients identify and capitalize on global investment trends, better select and monitor investment managers and more successfully enable asset managers to market their funds worldwide. Our suite of analytical tools is used by top consultants, institutional investors, traditional asset managers and hedge funds worldwide.

Why We Chose Ext JS

At the beginning of 2012, eVestment acquired two firms with the goal of migrating all clients to a single, global platform and data cloud. We had a desktop-based application, a robust web application built with ASP.NET and a smaller web application written with Ext JS. We decided on a strategy to incorporate the best features from the three solutions into a single web-based platform.

We didn’t have the time to completely rewrite the eVestment platform from scratch, so we decided to reuse our existing business objects, expose them via services and work on a new presentation layer. We evaluated several different JavaScript frameworks and decided on Ext JS for the following reasons:

  • Ext JS offers a robust component library that we could readily use. The grids, buffered scrolling, and drag and drop panels are very slick and are among the many Ext JS controls we have employed in our platform.
  • Ext JS makes it easy to reuse our existing business logic and to integrate third party and existing content and libraries with our new platform.
  • Ext JS also offers compatibility with lots of browsers and browser versions.
  • We value the support and training that Sencha provides.
  • Members of our development team already had experience with Ext JS.

Here are some examples of how we leveraged the Ext JS framework to build the eVestment platform.

Tab Browsing: Our clients often have several investment profiles open simultaneously, and in previous versions of our platform, this required multiple windows to be opened. Users could have only one analysis module open at a time as well. Tab browsing provides clients with a convenient and user-friendly mechanism to quickly switch between multiple profiles or analyses which improves client productivity.

Tab Browsing on the eVestment Platform

Drag and Drop, Events: Our application design allows a user to drag and drop investment strategies to customize a portfolio or the onscreen analysis panels. Each panel on the screen is listening for events and content is immediately refreshed via asynchronous operations. This interface provides a very fluid and interactive experience that our users are very impressed with. Drag and drop is used throughout the platform, including our search feature, which allows a user to drag a target product to open an interactive profile or to augment an existing analysis.

Drag and Drop investment strategy with eVestment Portfolio Builder
Panels listening to events initiated from Drag and Drop
Drag and Drop from Modern Search

Tree Structure: The eVestment platform provides a tree structure in the primary workspace which allows users to organize investment strategies. The structure is collapsible, searchable, and provides a familiar interface that responds quickly, much like a local machine would.

Tree Structure on eVestment Platform

Search: The eVestment platform provides a high performance search feature that leverages a variety of Ext JS components such as drag and drop and charting (see histogram controls).

eVestment High Performance Search Feature

Business Value of Using Ext JS

Using Ext JS at eVestment has helped us on several fronts, including:

  • High performance, responsive user interface: One of the biggest benefits of Ext JS and the single page application architecture is how fast and responsive our platform is relative to the previous version. Our flagship profiles and search features now load with sub-second speed, despite the fact that the user is often searching across hundreds of thousands of products and several thousand data points. We have the most sophisticated financial professionals in the world using our platform and time is money, so speed is extremely important to our users.
  • Time-to-Market: Ext JS has enabled our teams to quickly prototype concepts using mock data — allowing business stakeholders and clients the opportunity to provide feedback that can be easily incorporated into the development cycle. For example, we were able to develop a high-fidelity liquidity simulator concept with Ext JS and mock data during a two day hackathon. The same concept would have taken quite a bit longer with other frameworks we have leveraged in the past. Once our stakeholders green-lighted the concept, we were able to plug in data and launch a new module in rapid order.
  • Developer productivity: The MVC model and use of mock data in the Ext JS stores has also increased efficiency by allowing our development teams to divide project tasks. For example, we can have a team working on the front-end while we have a separate team working on the service layer. Additionally, because the Ext library is so extensive, our team spends less time hand-rolling or modifying custom jQuery and more time focusing on new features and products for our clients.
  • Higher Quality: In the past, we often spent weeks doing styling tweaks, browser testing, and UI bug fixes before launching a new solution. The Ext JS libraries are very tight and well-tested, so we spend a lot less time building user experiences and get higher quality. Using a custom Ext JS theme has dramatically increased the consistency between our modules and solutions.

Our Advice to New Developers

New developers should invest in the training classes available from Sencha, and they should bookmark the Sencha documents. Ext JS is powerful, but given how comprehensive the framework is, developers should expect a learning curve. The training resources are invaluable and worth the time investment. We benefited greatly by having our developers attend the four-day on-site training, as well as the online training. Regardless of whether you take advantage of the training, familiarize yourself with the sample apps and documentation — they are comprehensive and excellent.

Final Thoughts

Using Sencha Ext JS has allowed eVestment to rapidly re-platform our web-based application using current UX/UI patterns. Our team now has a lot more time to focus on functionality for clients instead of spending time on creating and debugging low-level components and frameworks.

Recommended Articles

8 Must-Know Tips for Choosing the Right Web Application Framework for Your Project

Starting web application development on a project can feel like a very difficult task. The abundance of frameworks adds to the confusion. It leaves developers…

Web Application Development | Top 10 Frameworks in 2024

If you are a developer, you must know the role of frameworks in creating amazing applications. Web application development frameworks come with pre-built tools to…

Understanding the Difference: When to Use Ext JS Classic vs. Modern Toolkit

Ext JS is a JavaScript framework for building powerful web and mobile applications. The framework features over 140+ high-performance, fully tested, and customizable UI widgets/components.…

Ext JS 7.8 Has Arrived!

The Sencha team is pleased to announce the latest Ext JS version 7.8 release. Following the 7.7 release, which included numerous quality enhancements in Ext…

How to Work with Ext JS Models and Stores: Tutorial on Managing Data and State

Ext JS is a popular JavaScript framework for creating robust enterprise-grade web and mobile applications. The framework offers a rich set of high-performance and fully-tested…

Discover the Top 07 Architecture Patterns used in Modern Enterprise Software Development

Developing software without an architecture pattern may have been an option back then. However, that’s not the case anymore. Modern software development requires apps to…

View More