Ellie Mae Encompass
About Encompass
Encompass by Ellie Mae is a mortgage loan auditing software package designed to facilitate the loan origination process so that both the originator and the borrower can meet specific government guidelines including proper underwriting necessary to reduce risk on the loan originated. Another very important part of the Encompass software is to speed up the whole origination process. As of November 2017 loan origination took on average about 43 days to close.
It is the goal of every lending company to reduce the number of days as close to the government mandated minimum as possible. Which will greatly increase the revenue possible for lenders and investors. Another very important aspect of speeding up the lending process is so that borrowers can close on their purchases faster enabling them to enjoy the fruits of their efforts.
Working for Academy Mortgage I leverage the Ellie Mae Encompass platform in my development efforts. This includes customized plugins and SDK development that improves and increases the speed to lending for loan Academy including the speed at which a loan can be purchased by a third party investor.
Encompass is a .NET application and runs on the Windows operating system and includes custom SDK and UX/UI development components. Writing custom plugins allows the augmentation of the Encompass application and supports custom Win Form development and customized event driven logic to be executed as needed. Through the SDK almost every aspect of the application’s data can be inspected or manipulated in one way or another. In effect the SDK is flexible enough that a whole new application could be implemented without requiring the Encompass Application at all.
Through customized SDK development data sync pipelines have been implemented that allow transferring of information through automated processes in a bidirectional manner. This gives us the ability to leverage data in house creating rich reporting for our data analysts and provides us with the ability to update loan data in bulk in an on demand way.
Encompass Plugin Development
When creating plugins for Encompass it is important to note that they should be developed as a windows class library. Once complied the DLL is uploaded through a plugin import utility and the Encompass service saves the DLL in a cache folder on the Ellie Mae servers. When the Encompass application launches it looks to this public cache folder for any customizations and files that were uploaded. Each client application that launches will download the updates, replacing any older versions with the latest and loads said customization through reflection. The primary advantage of plugin development is the ability to customize the UX/UI experience of the loan officers and company employees as they use Encompass. It also allows us to leverage event driven trigger logic to handle data changes on the fly as the user is directly accessing and leveraging the client. Lastly, no specialized connection context needs to be created when using plugins. The active plugin executes within the context of the Encompass Client and active user's credentials.
Some of the Technologies utilized:
- C#.NET
- WinForms
- Reflection
Encompass SDK Development
SDK Development outside of plugin code is handled a little differently. The primary difference is creating a standalone executable application that is launched natively instead of being complied as a DLL and executed through reflection from within the Encompass desktop client. When establishing a connection context to Ellie Mae’s server, the SDK handles the majority of the connection process except that the developer must reference the correct Encompass hosted server URI and user credentials of the dedicated service account that grants access to interact with Encompass resources. Once this connection is established front and back end connection contexts can be created allowing for direct interaction with Encompass data objects or remoting calls directly to the server.
Some of the Technologies utilized:
- C# .NET
- DocuSign API
- Entity Framework, IUnit of Work, Repository Model
- Console Service Application
- SQL Server
- Web API / REST
Encompass Platform Products and Services
As of this writing Ellie Mae is on version 20.x and has been and currently developing a new RESTful API based on their Encompass platform. Ellie Mae's new API suite is called Developer Connect. Developer Connect is a RESTful based API set that provides an interface for developers to configure, customize, and administer loan information. I have not currently used the entire suite of APIs available from Ellie Mae, however, there are some very nice enhancements using Developer Connect that provide a great deal of flexibility and just in time functionality that makes moving over to Developer Connect from the older ESDK very appealing. In using their API I discovered some areas of improvement to their API suite and created my own fork of their code for a while so that I could make changes and propose improvements to their API. However, it appeared that they were not interested in those changes. I have since abandoned my fork and left it as is.
More recently I discovered a new client interface to the Encompass Developer Connect from a third party open source developer called EncompassRest Library. EncompassRest came into being due to the lack of active development by Ellie Mae in their own encompass-developer-connect API client suite and is a far more robust client with active contributors. Hands down I currently recommend this client suite over the existing official Ellie Mae Client.
Some of the Technologies utilized:
- C# .NET Core
- Web API / REST
- Developer Connect