Skip to main content

C Programming - Communication Protocols

Technology
SOFTPATH TECHNOLOGIES
2 weeks agoUntil 30/11/2026

Job description

Job Summary :

We are looking for an experienced C Developer with strong hands-on experience in C programming, software development, debugging, and communication protocols. The candidate will be responsible for developing, enhancing, debugging, and maintaining software components using C.

Key Responsibilities :

  • Design, develop, modify, and maintain software applications/components using C.
  • Develop efficient, reliable, and reusable code following coding standards and best practices.
  • Analyze software requirements and translate them into technical specifications and implementation.
  • Develop and integrate software modules for embedded/system-level applications.
  • Perform C coding, debugging, troubleshooting, and code optimization.
  • Analyze logs, traces, dumps, and debugging information to identify root causes.
  • Support software integration and system-level troubleshooting.
  • Prepare technical documentation for developed modules and interfaces.
  • Collaborate with QA/testing teams during integration and defect resolution.
  • Participate in the complete software development lifecycle from requirement analysis through development, testing, and maintenance.

Mandatory Skills :

  • Strong hands-on experience in C Programming.
  • Good understanding of pointers, structures, unions, arrays, strings, functions, memory management, and data structures.
  • Experience in developing and debugging applications using C.
  • Strong understanding of communication protocols and protocol implementation.
  • Good knowledge of software development and debugging methodologies.
  • Strong problem-solving and analytical skills.
  • Good understanding of multithreading/concurrency concepts is preferred.
  • Experience working in Linux/Unix environments is preferred.

Preferred Skills :

  • Knowledge of TCP/IP, UDP, HTTP/HTTPS, MQTT, CAN, UART, SPI, I2C, Ethernet, or other relevant protocols.
  • Experience with protocol debugging and packet/log analysis.
  • Knowledge of IPC mechanisms and socket programming.
  • Experience with GDB or similar debugging tools.
  • Knowledge of Git/SVN or other version-control systems.
  • Exposure to embedded systems or system-level software development.
  • Knowledge of scripting languages such as Python is an added advantage.

Required Technical Skills :

Programming : C, Data Structures, Algorithms, Pointers, Memory Management

Protocols : TCP/IP, UDP, HTTP/HTTPS, Ethernet, CAN, UART, SPI, I2C, MQTT

Operating Systems : Linux / Unix

Debugging : GDB, Log Analysis, Troubleshooting, Memory Debugging

Tools : Git, SVN

Keywords
UnixCodingLinuxPythonGNU DebuggerCoding conventionsRequirements analysisMemory managementDebugger

Interested in this role?