Grade/Age level tagging
Age level tagging is fairly similar to grade level tagging, in that age and grade are closely correlated. So, I'll address those together:
As @Keelan mentioned in their (top voted) response to the previous meta question on this topic:
I think age is not ultimately relevant (it's mental age that counts). However, we could focus on experience level and target groups...
I totally agree. Due to differences in schools, differences in student abilities, and different schooling systems (think international), any attempt to categorize based on age/grade not going to be a very effective way of categorizing answers.
Ability based tagging
Ability is far more universal than grade level and will categorize things far better than age. This is because a very advanced middle school student could have more knowledge than a high school student, depending on the schools and students. And an undergraduate introduction to programming class could be fairly similar to a high school introduction to programming class.
There is one exception to this rule: Very young children. Generally, teaching to an under 12-year-old audience is going to be significantly different from teaching older audience. So, I suggest that the only age based tagging we have is for that age group, and I propose young-learners.
Beyond that exception, we should adopt ability based tagging (to go along with our other tags). Here is a rough idea of what I'm imagining:
introductory - For classes to teach total beginners or people who only have a little bit of experience.
beginner - For classes teaching beginners -- folks who know the basics of a language and the basics of CS, but nothing beyond that.
intermediate - For students who are capable of completing many programming tasks on their own and have a general knowledge of CS and what is out there.
advanced - For advanced topics that require a large foundation of CS knowledge, e.g. compiler design
Notice that I've left off -course or -programming or -lesson, because those should be encapsulated in a separate set of tags -- they are unrelated to level, they are simply a different category.
Now, in many cases you could be searching for e.g. a high-school question. Instead, you should be searching based on ability. There is a reasonably close correspondence between grade/age and ability, so I suggest that we use ability based tagging with a meta question/tag wikis pointing out approximate correspondence between grade/age and ability tags.
Course based tagging
I think that these should be created liberally, for pretty much any course that appears in a question. It doesn't harm the site at all to have them, so why not have many.