Given that $g \circ f$ and $g$ are bijective, show that $f$ is bijective?

We have functions $f: E \rightarrow F$ and $g: F \rightarrow G$.

Suppose that $g \circ f$ and $g$ are bijective, show that $f$ is bijective.

In the previous exercises, I have proven that if $g \circ f$ is injective then $f$ is injective and that if $g \circ f$ is surjective, then $g$ is surjective.

However, I am stuck on this one, as I only have to prove that $f$ is surjective. If the solution is trivial, hints would be fine.

Hint: if you know that the composition of two bijection is a bijection, then consider $g^{-1} \circ (g\circ f)$.
Hayden gives a good suggestion. Another possibility is to let $y$ be an arbitrary element of $F$. Let $z = g(y)$. So $z\in G$. Since $g\circ f$ is bijective, there exists $x \in E$ such that $(g\circ f)(x)=z$. But then $g(y)=(g(f(x))$, so $y=f(x)$ since $g$ is injective. So $y$ is in the range of $f$. Since $y\in F$ was arbitrary, it follows that $f$ is onto (surjective).
$g \circ f$ is bijective, therefore it is left-invertible. We have $h$ such that: $$h \circ \left( g\circ f \right) = \mathrm{id}$$ Composition is associative, and so: $\mathrm{id} = \left( h \circ g \right) \circ f$ which implies $f$ is left-invertible - and so it is bijective.