Most of the programmers like to start from scratch. No one likes to support legacy(even his own) code. But we understand, that software is a capital investment, and it's unlikely that it will be throw out.
Our company could take on the support duties(improvement, bug fixes) for the finished or semi-finished applications if contact with the previous vendor were lost or terminated.
There are many standard and protocols around us. Unfortunately, not all of them are well implemented by the third-party vendors. For example, your current trading system is waiting for the market data in the format X, but the source is streaming it in the Y. To answer such challenges we can create service to normalize or convert real-time data streams as well as static files or databases.
We have hands-on experience in market data normalization when ticks are coming in from the different sources in various formats, but the output format remains unchanged as well as the aggregation by price with book maintenance.
A similar approach can be extended on the trading sessions, where several traders(human or algo) should trade through the single connection.