By resorting to Automatic Differentiation (AD) users of nonlinear PDE solvers can be relieved from the extra work of linearising a nonlinear PDE system and at the same time improve on the computational efficiency. This paper describes the main AD techniques and discusses how the operator overloading approach of AD can be extended to eliminate the overhead generally incurred with operator overloading. A recent AD system FastDer++, specially designed for this purpose, is integrated into a Least Squares solver. The necessary modifications to the general FEM algorithms. Code fragments and timing results demonstrate that (1) integrating AD with nonlinear PDE solvers leads to highly flexible code with a close resemblance to the mathematical expression of the problem, (2) coding and debugging efforts are greatly reduced, and (3) the computational efficiency is improved.