Wayfair currently has an overabundance of feature toggles - nearly 5,000 and counting. Loading the feature override page is slow and difficult to filter through, and there's no process for seeing all toggles for your team or determine which other team a toggle belongs to.
What it does
This feature exposes the usernames of all users that have edited a toggle, bolds which user created the toggle, and displays the creator's team in filterable columns on the feature toggle listing page. We have added the Owned By field for the team name in the feature toggle creation page, which auto-fills with the current user's name and saves to the database.
This makes it easier to track your own/team's features, manage feature toggle deprecation, and see who to contact when you have questions about a toggle.
How we built it
Angela wrote the SQL that parses the history of each feature toggle and pulls out the usernames and team name for the creator. Cathy edited the JS to allow the existing filter textbox to filter on all columns.
Challenges we ran into
Bug in the filterAll variation of the admin table component where it would only match on the first column instead of any column. Issues getting all the team names as some of the creators no longer work at Wayfair and aren't in the databases.
Accomplishments that we're proud of
Able to mostly use existing data from the change history that toggles already keep track of. Able to backfill all the team name data for all feature toggles (when the employee still exists)
What we learned
The feature toggle override page still uses a not-even-tungsten php view! We have a lot of feature toggles, and some of them are so old their creators don't even work here anymore
What's next for Feature Toggle Ownership Tags
- Actually get filtering into the feature toggle override page.
- Highlight rows where the toggle is stale, especially if the toggle name does not appear in the codebase
- Use an autocomplete input for the workgroup