How to recognize, where function has no derivative? For example this function: $f(x) = (x + 1)|x + 3| + 2$ it has no derivative in $x = -3$, but how can I discover it?

Recall that the $\vert y \vert$ is not differentiable at $y=0$. Hence, in your case, $f(x) = (x+1) \vert x + 3\vert + 2$ i.e.
$$f(x) = \begin{cases} (x+1)(x+3) + 2 & x \geq -3\\ -(x+1)(x+3) + 2 & x \leq -3 \end{cases}$$
Hence, the only point where derivative need not exist is at $x+3 = 0$ i.e. $x=-3$, since away from $x=-3$, the function is a nice quadratic function.
At $x=-3$, we have
\begin{align}
\lim_{h \to 0^+} \dfrac{f(-3+h) - f(-3)}h & = \lim_{h \to 0^+} \dfrac{((-3+h+1)(-3+h+3)+2) - ((-3+1)(-3+3)+2)}{h}\\
& = \lim_{h \to 0^+} \dfrac{h(h-2) +2 - 2}h = \lim_{h \to 0^+} \dfrac{h(h-2)}h = -2
\end{align}
\begin{align}
\lim_{h \to 0^-} \dfrac{f(-3+h) - f(-3)}h & = \lim_{h \to 0^-} \dfrac{(-(-3+h+1)(-3+h+3)+2) - (-(-3+1)(-3+3)+2)}{h}\\
& = \lim_{h \to 0^-} \dfrac{h(2-h)+2 - 2}h = \lim_{h \to 0^-} \dfrac{h(2-h)}h = 2
\end{align}
