Let $V$ be a finite-dimensional vector space. Let $T:V\to V$ be a linear map such that $T^*T=TT^*$, where $T^*$ is the adjoint of $T$.
I've shown that if $v$ is an eigenvector of $T^*$, then $\langle v\rangle ^{\perp}$ is $T$-invariant and that $\ker (T-\lambda I)$ is $T^*$-invariant.
Using these facts, how do I show that there exists an orthogonal basis for $V$ consisting of vectors which are eigenvectors for both $T$ and $T^*$?
For any normal operator $S$ (that is, $S^*S=SS^*$) you have $$ \|Sv\|^2 =\langle S^*Sv,v\rangle= \langle SS^*v,v\rangle=\|S^*v\|^2. $$ This gives you that, for any $\lambda\in\mathbb C$, $$ \ker(T-\lambda)=\ker(T^*-\overline\lambda). $$ From this it follows that $T$ and $T^*$ have the same eigenvectors. Now you can start with a unit eigenvectors $v_1$ for $T$. You have already shown that $\{v_1\}^\perp$ is invariant for $T$; so there is a unit eigenvector $v_2$ for $T$, orthogonal to $v_1$. Now work on $\{v_1,v_2\}^\perp$, and repeat.