StackExchange uses "Tags" which I feel might be more geared towards a tech-savvy audience.
For the mainstream users, do you think "Tags" works or would they understand "Topics" better?
Topic could be used, but it would be wrong. A topic is an information structure which has relations to other topics and is often governed by some kind of authority. Tags are a folksonomy driven information entity, which has no authority and is governed by all users. Everyone in a community participates in the creation of tags, which is the very core of Stackexchange sites.
Source: Wikipedia Topic
I think it would be wrong to use the wrong words for our labels. We're all here since we love to learn, the right way.
I say "topics". Whenever possible use the most common language you can. "Tags" may be more meaningful to the technologically elite, but usually there's no useful reason to exclude the plebeians.
While I agree with Benny Skogberg's contention that "Topic" has a different meaning than "Tag", the benefits of that precision are lost on someone that doesn't understand what "Tag" means. In fact the definition of "tag" used here at stackexchange might not be the precisely the same as used in other sites, and given that the utility of the precision comes into question.
In general there's a lot of confusion around terms like "tag", and "keyword" and "search term", etc.
In short I think, at least in the context of the stackexchanges, using the term "topics" in place of "tags" would reduce confusion.