Most software developers catch and fix 99% of their mistakes in a product before deploying it for testing, so it is the role of the tester to find the 1% remaining. This 1% may be neglected by the developers because they assume the end-user wouldn't take that route while using the product.