If $A$ is full column rank, then $A^TA$ is always invertible

It suffices to show that if $A^T A x = 0$ for some vector $x$, then $x = 0$. If $A^T A x = 0$, then $$0 = x^T A^T A x = (Ax)^T(Ax) = \langle Ax, Ax \rangle = \lVert Ax \rVert^2,$$ which on the other hand implies that $Ax = 0$, so since $A$ has full rank, $x = 0$.