The process is fairly straightforward given the fact that any square matrix has at least one eigenvalue and eigenvector.
Suppose $Ax = \lambda x$. Then $\langle x , Ax \rangle = \langle Ax , x \rangle = \overline{\langle x , Ax \rangle} = \lambda \|x\|^2$, hence $\lambda \in \mathbb{R}$.
The point about being Hermitian is that if $x$ is an eigenvector of $A$, then both $\text{sp} \{x\}$ and the subspace $\{x\}^\bot$ are invariant under $A$. To see the latter, suppose $v \bot x$, then $\langle x , Av \rangle = \langle Ax , v \rangle = \lambda \langle x , v \rangle = 0$, hence $A v \bot x$. Now let $v_k$ be a basis for $\{x\}^\bot$, then in the basis $x, v_1,...,v_k$, $A$ must have a block diagonal form: $ A \sim \begin{bmatrix} \lambda & \\ & \tilde{A}\end{bmatrix}$ (By $\sim$ I mean that the two matrices are similar.) Now find an eigenvalue of $\tilde{A}$ (which must also be Hermitian) and repeat the process until $A$ is diagonalized.