You need to use && to get the conditions left aligned. To get the x aligned as well, in this case I would recommend using an \hphantom:

Notes:
- You need to use
{-1} for the second case so that the - is treated as a unary operator instead of a binary operator.
To answer your questions from the comments:
- Each
& provides a right/left alignment point. That is, text before the & is right aligned and the text after the & is l aligned. So the first & aligns the f(x) = { to the right and the the subsequent expressions to the left. Then, the subsequent text (the beginning of the condition) is desired to be l aligned. That means that we need &&. The first & would give a right alignment, -- the second & ensures that we have a left alignment.
- Using the
\hphantom was an easy way to get the desired alignment. Sure it could be done with a & but that would have necessitated a use of a \lap type of macros due to the otherwise text. Note that the inequality expressions overlap the otherwise text.
Here is the results of the other two approaches:

Code:
\documentclass{article}
\usepackage{amsmath}
\begin{document}
\noindent
Recommended approach: use a \verb|\hphantom{}|:
\[
f(x) = \left\{\begin{alignedat}{3}
& mx^2 +nx +1, &&\text{if } \hphantom{-1 <{}} x \le -1 \\
& 2m e^{|x|-1} + \sin \pi x - 3n, \qquad &&\text{if } {-1} < x < 1 \\
& 3x^2 - (m+n)x, &&\text{otherwise}
\end{alignedat}\right.
\]
Use additional \verb|&| instead of \verb|\hphantom{}|:
\[
f(x) = \left\{\begin{alignedat}{4}
& mx^2 +nx +1, &&\text{if } & && &x \le -1 \\
& 2m e^{|x|-1} + \sin \pi x - 3n, \qquad &&\text{if } & {-1} &&{}< {}&x < 1 \\
& 3x^2 - (m+n)x, &&\text{otherwise}
\end{alignedat}\right.
\]
With \verb|mathllap|:
\[
f(x) = \left\{\begin{alignedat}{4}
& mx^2 +nx +1, &&\text{if } & && &x \le -1 \\
& 2m e^{|x|-1} + \sin \pi x - 3n, \qquad &&\text{if } & {-1} &&{}< {}&x < 1 \\
& 3x^2 - (m+n)x, &&\text{\rlap{otherwise}}
\end{alignedat}\right.
\]
\end{document}