Skills required:
Solid understanding of C/C++, C# and object-oriented programming concepts
Solid understanding of operating systems, computer networks, network protocols,
cryptography, network security with appropriate programming exposure in this areas
Solid understanding of embedded databases, server-based databases and SQL
Experience with using programming IDEs and code management tools
Experience with device driver development in Windows / UNIX platforms
Experience with multithreading and concurrency management
Understanding of component testing frameworks and debuggers
Understanding of data interchange formats like JSON, XML
C/C++, Advanced C
Kernel level development
Driver development
OS internals
Socket programing
Deep understanding of various network communication protocols
Experience in developing various communication based applications like in telecom
domain, Chatting applications, Voice over internet application any other P2P application.