I work remotely (even though I'm only a half-hour from the office) and practically all of my work is in C. So yes, it's possible to work your way into such a situation. However, that doesn't mean it's easy to get hired into such a position. Many employers are quite reasonably wary of hiring someone who has never worked closely with anyone else on the team. Usually this means working in physical proximity for a while, though exceptions are often made for people who have been deeply involved in an open-source project for a while. Either one serves as "proof" that you can be productive that way, and that proof is what reassures management enough to hire you.
My impression is that companies which aggressively embrace new technologies and markets are also more likely to embrace new management/logistical models such as fully distributed teams. Therefore the pickings overall are better, but mostly in certain technical areas - notably not in low-level areas such as networking and DSP (which you mention). I think you'll have to make some compromise between your preferred technical areas and your preferred working environment, because the overlap between the two isn't very large.
My impression is that companies which aggressively embrace new technologies and markets are also more likely to embrace new management/logistical models such as fully distributed teams. Therefore the pickings overall are better, but mostly in certain technical areas - notably not in low-level areas such as networking and DSP (which you mention). I think you'll have to make some compromise between your preferred technical areas and your preferred working environment, because the overlap between the two isn't very large.