This is a problem I haven't thought about or encountered in many years but has popped up again incidentally, so please correct anything ahead if something is incorrect. If we are given the condition that $\{f(x,y,z) = 0\}$ for some differentiable function $f$, then the normal vector to the surface governed by said equation is given by
$\nabla f(x,y,z)=(f_1(x,y,z), f_2(x,y,z),f_3(x,y,z))$
where $f_i := \frac{\partial f}{\partial x_i}$ is the $i^{\operatorname{th}}$ partial derivative of $f$.
Good and all, but say that instead I am given $f$ parametrically in the form $f(u,v) = (x(u,v), y(u,v), z(u,v))$. How would I now go about determining the normal vector at arbitrary $u,v \in \mathbb{R}$?