Belvedere’s Buy-In to Open Source: Dev Process, Data, Environment
In the world of trading, a Market Maker is a firm that agrees to provide liquidity by quoting both sides of an asset — the bid and the offer — to uphold a fair, efficient, and competitive market. Market Makers have a continual relationship with the marketplace, contending to provide the customer with the best price.
This competition drives constant iteration, improvement, and vigilance in Belvedere’s technological endeavors. Over the years, BT has pushed our limits of both hardware and software. To accomplish this feat of engineering, we have embraced Open Source software in key areas of our system. Not everything can be built in-house, and there are many incredible Open Source projects that far surpass our capabilities.
It is time to pay the efforts of Belvedere forward and not only solve complicated problems internally, but contribute communally to the Open Source base. Given that there is no overarching “Exchange” to regulate Open Source ideas, the onus is on each contributor, Belvedere included, to build on each other’s inputs, helping to balance the give-and-take community of Open Source.
Belvedere will highlight three areas in which the firm has focused and evolved significantly since its inception: the BT Development Process, Data Persistence, and our Environment. It has been a journey of growing, progressing, failing fast, and iterating further than we thought would be possible. Belvedere has leveraged Linux, Git, Jenkins, Redmine, Puppet, Saltstack, Redis, and Hadoop, to name a few. We have come up against race conditions, missing fields, and build failures. Belvedere will draw from these learning experiences to strengthen our voice in the Open Source community. BT will contribute our unique solutions to everyday problems by sharing out resolutions to process woes and patching bugs found in our usage of Open Source software, while joining in taking responsibility for the state of the Open Source software stack.
Here is a peek of some of the topics into which BT plans to delve:
Belvedere Development Process:
How do we take an idea and get it to production? The Belvedere development process has evolved significantly from its TFS days to an automated software development life cycle. Our integration of Redmine, Gerrit, and Jenkins has significantly increased a developer’s proximity to production, while still having gates to ensure quality.
Data:
Belvedere constantly uses data to improve, with the goal of becoming a more data-driven company at every step in projects. BT’s experience with data and the “best” way to store and retrieve it will definitely feature in future posts.
Environment:
Our current contributions and custom modules in Saltstack as Belvedere migrates from Puppet are just a few of the topics that we will broach. As a firm, BT believes that environment health, upkeep, and amelioration are paramount to excellent software.
This is just the starting point for the Belvedere team, and the list will surely expand. Different BT voices are excited to contribute to areas of her/his expertise, and even comment more broadly on the Belvedere culture.
Please feel free to ask questions or provide any comments by emailing Blog@BelvedereTrading.com.