Professional Portfolio Web Applications and Software I made for others
2010-2011 & 2014: Forex Broker Management Software
Ruby on Rails, Javascript, CakePHP, PHP, MySQL, MetaTrader 4, SalesForceSummary
This management software helps Forex Brokers deal with all their day-to-day tasks, and provides a front-end for their customers to manage their accounts.
Customers fill in all their information, upload documents to verify their identity and address, deposit money into their trading accounts automatically using one of several payment options, request withdrawals, transfer money from one account to another, etc.
The system creates and maintains trading accounts automatically, deposits and withdraws funds from them when requested, monitors trading, pays commissions to affiliates, bills customers for services when necessary. All automated to save time for the broker's staff.
It has a huge amount of features, too many to list here; read about the most important below:
Highlights
- Reliable: Has managed money movements for over $100 million USD to date, for more than 10 thousand customers, without ever misplacing a penny. Also has many internal consistency checks, so when money pops up in an account unexpectedly, or pretty much anything goes wrong, it immediately warns the admins. Finally, it keeps an audit trail of everything that happens, for later verification.
- Automated: Automatically creates trading accounts, deposits, withdrawals, commissions, VPS server instances, etc. This saves admins enormous amounts of time compared to other brokers who normally do these manually.
- Multi-platform: Supports several different trading platforms. More importantly, the platform-specific details are subclassed and abstracted away from the core logic, so that adding new platforms to the system is a matter of days.
- Highly Configurable, Multi-lingual and Whitelabel-able: Everything that the user sees, from content to the types of accounts offered, email templates, plus a considerable amount of system behavior is configurable. In fact, right now the software is working for 2 completely different brokers with the same exact codebase, and is currently being offered to other brokers without modification to the code.
- Affiliates System: Has a very sophisticated affiliates system, allowing the broker to calculate and pay commissions in several different ways, and allowing affiliates to offer different commercial conditions to their customers.
- Automatic Billing: Customers get billed monthly for different services that the broker offers. This billing is fully automated, based on usage of these services.
- Salesforce Integration: Tight integration with the Salesforce API, to keep sales and support people up to date on everything that happens with a customer.
- Payment Processors: Integrates with several different payment processors giving customers more options to fund their accounts.
- Performance: I had a 2-year hiatus in this project, during which another company maintained it and added features. When I went back, one of my main jobs was getting performance back to an acceptable level. This was done mainly by improving access patterns to both database and trading servers, doing few large queries instead of thousands of small ones. On average, this resulted in a 40x improvement in speed, and a 250x reduction in the number of queries, and batch processes going down from over 10 hours to a few minutes per run. This improvement was vital in the case of trading servers which were getting swamped with queries to the point that their main functionality was being impaired.
What the client said about my work
"As a financial solution provider we outsource a great deal of our development work. Our relationship with Daniel Magliola is without a doubt the best outsourcing experience we have ever had.
Daniel, unlike other providers, will take the time to review and analyse each project with us, often pointing out issues and considerations that would have cost us a lot more had they come up during the development. He is dedicated to meeting his deadlines and makes himself available at all hours to support and manage any unexpected problem that arise. I would recommend Daniel to any company in search of a reliable, long term software development partner."
Back to Professional Portfolio