[BIP-55] Funding Proposal for the Balancer OpCo
BalancerAuthoured by: Tristan, Mkflow#7938, Xeonus#4620, Gareth and Tim.
Service Provider / Organisation Name & Overview:
Balancer OpCo Limited (or the “Balancer OpCo”) is a wholly-owned subsidiary of the Balancer Foundation. It is an integral element of the Balancer Foundation 16 corporate structure supporting the BalancerDAO, and is intended to serve two primary functions:
Administrative & Operational
Serving as the operating entity with which third-party Service Providers to the BalancerDAO will contract, submit invoices to, and from which they will be paid whether that be in fiat or in tokens. This role is integral to the decentralized operations of the Balancer ecosystem, and in practice has to be in place for the healthy long term functioning of the DAO and the Balancer Protocol. The Balancer OpCo is also intended to host certain ecosystem-wide shared resources.
Front-End Dev and Engineering Workstream
As a continuation of the effort to thoughtfully decentralise the Balancer Ecosystem, we are proposing that the Balancer OpCo also house the front-end development team for BalancerDAO in the medium term. The Balancer OpCo will employ or contract the Front-End Development Team that will service the BalancerDAO. The Balancer OpCo will hold the software subscriptions for the necessary UI and marketing tools, and will host the Balancer.fi 3 website.
The developers identified to fill these roles are drawn from top talent who have a proven track record performing development for the Balancer Ecosystem via Balancer Labs, and are transitioning over to the more decentralised structure of the DAO. They are passionate about the project and committed to its long-term success. The intention is to recruit additional talent to bolster the team, starting with 5 FTEs and moving to 6 FTEs in Q4 of 2022. There is one part-time contractor included in the headcount below. This is the staffing level determined necessary to maintain and improve the quality of the existing Balancer app, and to continue to expand the scope of the app to support the changes and improvements of the Balancer protocol.
We note for clarity’s sake that this is the proposal mentioned in the Funding Proposal for the Balancer Foundation 16.
Leader(s):
Administrative / Operations
The Balancer OpCo will operate under the direction of the Balancer Foundation, which will oversee / have responsibility for governance, corporate administration and operations. This includes managing software subscriptions and login credentials for the OpCo team and certain ecosystem-wide platforms and social media accounts.
Technical Lead for the Front-End Development Workstream
Balancer OpCo’s front-end development workstream is led by Gareth Fuller (@garethfuller) and by Tim Robinson (@timjrobinson).
Gareth joined Balancer in March of 2021 and quickly rose to lead the front-end team and the launch of Balancer’s V2 app. He has over 10 years engineering experience and previously worked at Bitbond as a Senior Full-stack Engineer where he was involved in full-feature development for the P2P Bitcoin lending platform. In 2019 he played an integral engineering role in launching Bitbond’s STO (Security Token Offering), one of the first in Europe. Gareth has been professionally involved in the crypto industry since early 2017.
Tim joined Balancer in September 2021. He has 15 years of development experience in many different languages, teams and locations. He’s been involved in the decentralization space since 2017 initially focused on decentralized social media. Prior to that Tim was a senior developer at Cloud 9 IDE which was acquired by Amazon in 2016. At Amazon he worked on AWS Cloud9 and AWS Robomaker for 4 years before jumping full time into web3.
How the Front-end team will build the gateway to the Balancer Protocol:
The front-end team ensures Balancer has a high-quality UI available everywhere that allows users to interact easily with the Balancer protocol, as well as providing UI components and software tools for developers to easily build their own UI’s for Balancer related projects. In addition, the UI serves as a branding tool where people can better understand what the Balancer Protocol allows. The team will:
- Build, Improve and Optimize the canonical UI for interacting with Balancer
- The front-end team is responsible for the main Balancer website and application. We aim to provide the best possible experience for users to invest, trade, lock veBAL, vote on gauges, and claim earnings using Balancer.
- We ensure this UI works across all devices including desktop and mobile browsers.
- We will continually work on the stability and reliability of the UI by covering its critical functionality with unit and E2E (End to End) tests.
- We will continually optimize and improve this front-end so users have a great experience no matter how many features or how much data Balancer gains in the future.
- Whenever new features or improvements are made to the Balancer smart contracts we will implement the primary UI for users to interact with them on launch.
- Maintain API and caching services to retrieve Balancer information
- The front-end team maintains the Balancer API at https://api.balancer.fi 2, which provides quick access to Balancer pool and token information, as well as providing a SOR interface that services such as CowSwap use to calculate the best trade routes through Balancer pools.
- This API is hosted on AWS using serverless technology, however it will never be a central point of failure as the front-end can always fall back to using on-chain data. It is also completely open source and deployable via a CDK script so anyone can set up their own API service if they wish.
- Integrate the front-end with other app stores and services
- As wallets and DeFi app-stores (such as Coinbase wallet, Sia Skynet, or the ethOS phone) become a more common way for users to interact with DeFi applications, we will work with providers to ensure Balancer is available in requested and approved locations.
- Provide tools that allow anyone to self-host the Balancer front-end
- As Balancer is about maximizing decentralization and permissionless-ness, we seek to avoid the front-end being a centralized point of failure or control. As such we provide docker images and documentation for users to run the front-end locally using their own data providers. We will continually maintain these and make them easier to use over time.
- Provide documentation, resources and help to allow others to implement their own custom UI’s for their project
- Many projects integrate with Balancer smart contracts, such as Aave, Element Fi, CopperLaunch, Aura Finance, Olympus DAO, Gyro Protocol and more. Many more are constantly requesting integrations. We provide them with the UI elements and tools they need to be able to quickly create their own custom UI for their application, accelerating Balancer’s growth in the DeFi space.
How the Front-end team will measure success
The overarching goal is a world-class experience for Balancer users, which is seamless and always improving. The key metrics that measure this are:
- Minimal errors reported to Sentry
- 99%+ uptime of core features (pools information, investing, trades)
- All new Balancer features that require UI support will be available in the UI within 1 month of launch.
- At least one new version of the front-end will be released to production each week.
Front-end Team’s past achievements
The front-end team has seasoned web-3 qualifications. They built the Balancer Website and Application and all its current functionality from scratch and made it usable with all networks that Balancer has been deployed to. This included:
- Building the Balancer Website, providing an overview of the service.
- Building the core balancer app, providing the ability to invest, withdraw, trade tokens and claim rewards.
- Deploying the balancer app on Arbitrum and Polygon chains.
- Adding integration with Gnosis for gas-free, mev-resistant trades.
- Building a pool creation UI so users can quickly and easily create their own custom pools of any tokens they like.
- Building an API service that Cowswap can use for routing trades through balancer pools, and eventually being a caching service to speed up the front-end.
- Adding the veBAL voting and staking system and all statistics and information related to that.
- Supporting new core Balancer pool types as they are launched such as Boosted pools.
- Adding graphs, APR’s and other information that give users a good indication of earning potential with Balancer.
- Integrating with many new wallets and services such as Coinbase Wallet and Tally Wallet.
- Providing a docker image and information for users to run their own front end + API service. Adding one-click deploy to Digital Ocean for this image.
Front-end Team’s future goals:
We aim to bring Balancer to as many relevant networks and places as possible, make it easier for developers to take UI components to build their own front-ends, and provide better statistics and analytics for our users.
- Separate the logic from the UI in the front-end, and move the logic to the Balancer SDK
- We’re turning common queries into simple functions and classes in the SDK. This will allow other projects to more easily integrate with Balancer using these functions. Other projects can implement the logic they need using the SDK, and take visual components they need from the front-end.
- This will allow the front-end team to iterate faster as we can focus purely on the UI and adding new functionality and speed optimizations while the SDK team handles the underlying logic.
- The front-end team will also be contributing to the Balancer SDK providing improvements, fixes and new features as they are required for the UI.
- Improve the overall speed and experience of using the Balancer App
- After much of the logic is moved to the SDK we plan to make the API use that same code to constantly load and cache the latest pool and token information, then provide an easy, fast API the front-end can use to load all the information it needs. This should decrease page loading speeds by more than 80%.
- For maximum decentralization, the front-end will always have a fallback to using the graph + on-chain data in case this API is ever unavailable.
- We plan to continually refine and optimize the app over time based on user feedback.
- Maintain and improve the Balancer app’s reliability and security
- We plan to cover the app’s critical functionality with E2E tests.
- We will continually add to and improve the app’s unit test coverage.
- We will keep app dependencies as up to date as is reasonably possible.
- Make Balancer work seamlessly across all chains it supports
- Currently the front-end is deployed to a separate domain for each network. We plan to consolidate all of this to app.balancer.fi and allow for network switching within this app.
- Along with this rework we plan to make adding a new chain as easy as adding a new config file, so we can support many different Layer 2’s and other chains quickly and easily.
- Provide better statistics and information to users
- We’ve started improving Balancer APR’s and Graphs to provide more information to our users on past investment performance and how much they can expect to earn. We plan to continually add more features and information to make Balancer a more useful investment dashboard.
- We’re adding support for pools and tokens that generate yield or rebase in different ways, and ensuring all our statistics around them are correct.
- Support all the new features Balancer Ecosystem creates
- There are some features in the pipeline such as single asset investing and withdrawing into boosted pools, managed pools etc. We will continually add new UI’s to support these features and refine them based on user feedback over time.
Pledge to abide by the DAO’s Code of Conduct 1 1 (or link to your own):
Yes.
Pledge to abide by the Accountability Guidelines 3 1:
Yes.
Length of Engagement & Budget:
One year - July 2022 (Q3 FY22) through June 2023 (Q2 FY23) divided into four quarters.
The summary below reflects the proposed budget for these four quarters, to be sent in quarterly payments from the DAO. As per normal, each quarter an update will be provided via Discourse. If budget changes are requested they will go to a snapshot vote. If no changes are requested, this proposal will serve as the governing decision. Any unspent amounts at the end of the period will either be returned to the Balancer Treasury, or offset against the next period’s funding proposal.
We’re starting in July to account for the set-up and legal fees around the Balancer OpCo structure and compliance fees. It is envisaged that staff will transfer into the OpCo in Q4 2022.
Requests for USDC transfers:
Q3 FY22 - USDC 62,219 - actual expenses incurred through the end of July 2022 and forecast for August & September June 2022 - immediate payment requested
Q4 FY22 - USDC 418,691 - for transfer 25 September 2022
Q1 FY23 - USDC 464,068 - for transfer 15 December 2022
Q2 FY23 - USDC 533,217 - for transfer 25 March 2022
Request for BAL transfer:
Q3 FY22 - BAL 116,678.08 - for transfer after the snapshot vote, if successful.
The table below shows the applicable expense categories by quarter, followed by descriptions of their make-up.
People Costs - Engineering
People Costs are comprised of remuneration and employment costs for the developers. Remuneration is currently denominated in USD, AUD, GBP, and EUR. Exchange rate fluctuations against the US Dollar will impact the actual results. We have built a 5% buffer on FX rates and plan to hedge against this where practical by converting USD or USDC into reserves in those currencies.
The Front-end Development team is expected to be onboarded in Q4 with five full-time equivalent engineers, looking to hire one more by the end of Q4 and a possible additional team member in Q2 of 2023. There is one part-time engineer. There is also a buffer for variances in employment costs. In both cases, unused amounts will either be rolled into the next funding proposal, or returned to the DAO.
In addition, the Balancer OpCo is requesting 116,678.08 BAL to align with the grants promised by Balancer Labs to full-time team members who are moving to the OpCo, and to provide grants to future employees. These tokens would be be awarded as compensation to current and future team members on a 4 year vesting basis, with a 1 year cliff. This figure is the balance of the BAL transferred 1 from Balancer Labs to the DAO Treasury on 29 July 2022, less the BAL transferred to Orb 3, and would not cost the DAO additional BAL.
Non-People Costs - Engineering
Non-People Costs Engineering consists of software subscriptions to front-end development tools and TRM. Alchemy is the largest line item at $17,962 per month, or $161,658 for the period. TRM is $30,000 for the annual subscription and an estimated $20,540 per quarter for API calls, which equates to a combined total of $91,620 for the period. The “API calls” estimate includes a buffer for increased future use of the UI. Consensys (Infura) is $28,250 for the period.
These and the other software costs depend on certain variables, including, for example the number of users, log-ins, number of entities in the community that have access, and service calls. Some are billed monthly and others quarterly or annually, hence the changes in costs from one quarter to the next. We have estimated these figures using the best information available as of now, and recognise there will likely be variances during the year as more accurate data becomes available and actual costs become known. The team will monitor usage of these services in order to reduce fees, and where possible negotiate more favourable rates.
Non-People Costs - Operations & Administration
The main items in this section are the compliance costs which are billed annually, and monthly accounting services, which are front-loaded for setting up the processes. We are actively seeking Directors and Officers insurance as we understand the market has moved in this space and may now be available. We have included $20,000 for this purpose in this proposal. Brokers are not offering any ballpark figures yet, so this is a placeholder more than an estimate. If acceptable insurance can be obtained at commercial rates, it will allow the self-insurance reserve currently held by the Balancer Treasury for the foundation to be released. Software subscriptions included here are for ecosystem-wide services such as Lattice, Slack, Notion and Asana. Q3 2022 includes one-off incorporation and setup costs as well as the annual compliance fee of $20,000, which will be invoiced annually in Q1 going forward.
ETH Address to Receive Funds:
0x3B8910F378034FD6E103Df958863e5c684072693, the Balancer OpCo multisig, controlled by the Balancer Foundation.
Link to Service Provider Agreement (if going through the Balancer OpCo):
Not applicable given this entity is internal. The Front-End Development team will be directly accountable to the Balancer OpCo and the BalancerDAO community through the monthly reporting process applicable to all Balancer SPs, primarily with reference to the objectives and KPIs noted above.
Voting
This proposal will be posted on the forum for a minimum of 5 days prior to voting. Voting will then be open on Snapshot for three days. This vote will be a single-choice vote. You may vote on the Proposal by selecting “Yes, let’s do it”, or “No, this is not the way”, or abstaining.
The Community voting “Yes, let’s do it” on this proposal means:
You recognize:
- The Balancer OpCo is a required element of decentralising the Balancer Ecosystem
- Maintaining and improving the website is a crucial element of the Balancer Protocol, and to keep the front-end, and have it supported by the team that is currently managing and improving the website.
The Community voting “No, this is not the way” on this proposal means:
- A separate proposal will immediately be brought to the community regarding the administrative costs of the BVI OpCo, as this entity is necessary to manage SP relationships.
- The Balancer front-end will be sunset (unless another team steps forward to take it over) with all the inherent implications to the users of the protocol and impact on the Balancer brand.