Design, develop, and maintain software applications using C programming language for network-related functionalities.
Collaborate with cross-functional teams to understand software requirements and translate them into efficient and scalable network solutions.
Implement network protocols, such as TCP/IP, UDP, HTTP, and SNMP, to enable seamless communication between software applications and network infrastructure.
Conduct code reviews, debugging, and testing of software applications to ensure high quality and reliability.
Optimize network-related algorithms and data structures to enhance the performance and efficiency of software applications.
Stay updated with the latest advancements in networking technologies, protocols, and standards, and integrate them into software applications when applicable.
Troubleshoot and resolve network-related issues, working closely with network engineers and system administrators.
Document software designs, specifications, and troubleshooting procedures to facilitate effective knowledge sharing and collaboration within the team.
Job Requirements
Bachelor s degree in computer science, Software Engineering, or a related field.
Proven experience of about 3-4 years.
Proven experience in C programming language, including proficiency in writing efficient and maintainable code.
In-depth understanding of network protocols and technologies, such as TCP/IP, UDP, HTTP, SNMP, and DNS.
Familiarity with network infrastructure components, including routers, switches, firewalls, and load balancers.
Experience with socket programming and network socket APIs.
Strong debugging and problem-solving skills related to network communication.
Knowledge of software development best practices, including version control, code review, and testing methodologies.
Excellent collaboration and communication skills to work effectively within a team environment.
Ability to adapt to changing priorities and meet project deadlines.