вот справа у меня вакансия с brainstorage. требования оттуда:
Хорошее знание C++, stl, boost
Большой опыт проектирования и разработки сетевых многопоточных приложений под Linux
Умение разбираться в чужом коде
Знание С, С# являются преимуществом
Навыки сетевого программирования: TCP/IP стек, сокеты (Linux)
Глубокое понимание всех процессов происходящих в современных компьютерах при выполнении программ
Опыт написания и отладки низкоуровневых приложений (драйвера, модули ядра) является преимуществом
Высшее техническое образование
Умение решать нестандартные задачи
Способность работать самостоятельно и предлагать идеи по улучшению, оптимизации приложения
Знание английского языка ( чтение технической литературы)
Думаю, что пока есть что изучать самостоятельно, без участия в настоящем проекте, ибо все равно вам скажут разбираться сначала с теорией и писать учебные велосипеды для закрепления. В общем, не спешите.