Software testers perform a critical role in application development. They are quality assurance authorities who put applications through the wringer to root out bugs, poor performance, and essential interface issues. To do this, they run all kinds of tests stress, performance, functional, scalability, user acceptance at different stages of the software life cycle. Because software testing is so essential to the quality and usability of the last product, testers are made in at the planning and design stage, and usually live involved throughout post-release support.
The software tester is an unacknowledged hero for most development projects. They save end-users from working with highly buggy software or applications that don't work well, significantly decreasing tech support calls from frustrated customers. They also get the development team, and the software vendor looks good in the eyes of customers.