more verbose is more clear here
Somewhat pedantic naming
You're using "board" to mean two different objects - first a list of letters, then an array of letters.
strings are iterables
No need to coerce to a list to iterate over the letters.
Tuple unpacking!  yay!
List comprehensions are a great way to filter.
More naming
Again, I'm kind of picky on this score, but you're using `position` to mean something different here than the way you use it in the other two functions in this module, so let's call it something different.
more conventional wildcard operator (personal taste)
Just my personal taste on naming again, but I think the typical wildcard operator might be more clear here.  Plus a comment!
list comprehension
build wildcard key with list comprehension rather than initialize + append