Injectivity and surjectivity follow from relatively abstract properties of the form of the equation.
Injectivity follows because for any $x$, the left side (LHS) is a function of $f(y)$ while the right side (RHS) is an injective function of $y$.
Surjectivity because the RHS is a surjective function of $y$, for any $x$, while the LHS is $f(...)$.
Hence the arguments written down in comments under the answer that led to this question:
(to prove surjectivity) adjust $y$ so as to hit any desired value.
The proof of injectivity ... is to compare the functional equation written using $(x,y)$ and $(x,z)$ as the variables. If $f(y)=f(z)$ for fixed $x$ then the left sides of the equations are equal, which compels $y=z$ by looking at the right hand sides.