Our company was asked to assist the internal team at a company called Prosper.com. Prosper is a peer-to-peer lending site, and is governed by many local and federal regulations. As a result, the systems necessary to support this business are complicated and intricate. Since the site is also very popular, this complication must be able to support a large number of transactions as well.
We assisted the in-house development team by working with them to develop a modular approach to development that would allow the different components to be updated and replaced more easily. This allowed the different development teams to focus on different parts of the business without interfering with each other.
The services were implemented as stand-alone systems using WCF and ASP MVC. Each system was planned and implemented using Microsoft Message Queue so it could be taken down and upgraded at any time without affecting the rest of the system. This provided the network management team excellent flexibility in the way they managed the version rollout process.
By building each module as a stand-alone component, they were also all easily testable, which improved the quality control for the company.
Improved Quality and Uptime
The system design allowed testing of each individual piece apart from the others, so the QA team could more easily focus on what pieces were working and which were broken. It also allowed each piece to be changed without affecting the rest of the application.
Improved Developer Productivity
By using a modular approach for such a complicated site, the developers on the team were able to be much more productive. Each small team could focus on the one piece they were working on, and not get distracted by all the other moving pieces that were changing simultaneously.