How to know that $a^3+b^3 = (a+b)(a^2-ab+b^2)$ Is there a way of go from $a^3+b^3$ to $(a+b)(a^2-ab+b^2)$ other than know the property by heart?

Keeping $a$ fixed and treating $a^3 + b^3$ as a polynomial in $b$, you should immediately notice that $-a$ will be a root of that polynomial. This tells you that you can divide it by $a + b$. Then you apply long division as mentioned in one of the comments to get the other factor.
