knowing a language means, knowing syntax and what it has to offer.
For saying you know a language you should have knowledge of its implementation, limitations, pros and cons while using it.
To use a language in a large project, you should have command over
1. algorithms
2. design patterns
3. frameworks
4. knowledge about overall architecture
and domain knowledge is something which will help you to decide better.