Having the backend be driven through Mattermost keeps the data in both systems close to each other This also means putting the data model into SQL so it's efficiently queryable E2E tests are crucial here