Here's my top tip for attracting amazing candidates: pay them a lot of money. Simple as that.
There's only a handful of universities now which teach C to a decent level, and if a candidate doesn't know C already it's very hard to tell if they'll be able to conceptually handle pointers and indirect referencing. So there's actually a very small pool to recruit from compared to the number of vacancies.
If someone can't understand pointers, recursion, etc, then paying them extra money isn't going to make them understand.
Hence companies relying on A-Level scores and university reputation when filtering.
What ECs do you have ? - that's probably your best bet of getting visibility. Assuming you're a second year student you might want to apply for a GSoC on a low-level project.
All I can say is keep at it but remember, especially for grads, they get a million CVs.
I guess the reality can be different if we take into account the percentage of programmers that want to work on "web technologies" and that's a completely different market.
All in all I think if one is a good developer, he/she will not have any problems finding a suitable position working on very interesting problems.