For what it's worth, MSSQL, PostgreSQL and Oracle don't have that limitation.
If a make a view that joins table a and b, and I query that view with a filter, bigquery won’t push the filtering down unto a and b and then join.