I have been using TestComplete for about 5 years now. I currently lead a team of 3 other full time employees and 1 to 4 interns (depending on the time of year).
My team and I attended Q3's 201 and 301 courses. We did not attend the 101 course as it didn't appear to cover anything we didn't already know and we work solely with scripts, but 101 was focused on keyword testing.
While we were already familiar with the bulk of the content of the 201 course, we did pick up a few useful tidbits here and there. Overall, I thought it was a good topic, it was well organized, and well taught.
The 301 course, I was less pleased with. I had high hopes that, similar to the 201 course, even if we were already familiar with a bulk of the content, there would be some new useful information scattered in there, but unfortunately I did not find that to be the case. The first part of the course I felt was below the level I would expect of a course with 301 in its name. The first 20 minutes or more were wasted recording scripts and talking about dividing code into smaller routines. I would consider that 101 level stuff, or if you want to consider keyword testing 101, then 201 at the highest.
Once the 301 course got into the content of actually creating a framework, it got better, but I think that is where the course should have started. One note of confusion we initially had, was when defining the add, edit, and delete steps in excel was referred to as keyword testing. Since TestComplete already has keyword tests, a different nomenclature would have been preferred to avoid confusion.
Overall, the 301 course felt more disorganized, and less coherent than the 201 course.
As for future topics, the most common questions I get from my team regard 1 of 2 things. The first being how to consistently identify an object under test (Namemapping, Aliases, FindChild, etc), which I think the 201 course in Q3 covered pretty well. The second his timing: What methods are available to wait for something to occur or an object to appear. Ex: WaitProperty, WaitAliasChild, etc. I think an in depth course on different ways to wait for your tested application to be in a desired state before moving on would be helpful for most people.