Its easy to use and set up for even non technical people. One user can write the scripts and set up the program to do a number of things, and then those same scripts can be used by a non technical person for use with TestExecute, the execution program they have for VMs and PCs that aren't on the main TestComplete computer. Using a combination of TestComplete and TestExecute, you can have a large number of machines or VMs running tests simultaneously saving hundreds of man hours a month.
You can also have someone with no coding experience come in and create keyword tests with very little training or knowledge, this is useful for people who are new to the field, or who just need to automate some test or project on the fly.
They also have monthly and quarterly training sessions free of cost that users can sign up for, something that a lot of other companies don't do.
I still have trouble mapping dynamically named objects, particularly with web testing. You can use some workarounds to accomplish your goals, and this does not hamper the final product too much.
Managed to turn an 8 month project into a 2 week 1 man project with just a few days of scripting.
Able to accomplish a lot more work though automated tasks
Able to complete both agile and waterfall goals in a timely fashion