Posted on: 27/08/2026
Experienced System Software Engineer with strong expertise in C programming, Linux operating systems, Linux kernel internals, and networking technologies.
Skilled in analyzing, troubleshooting, and supporting Linux-based platforms, diagnosing kernel- and network-level issues, optimizing system performance, and collaborating with development, infrastructure, and operations teams.
Experienced in production support, root cause analysis, debugging, and maintaining high-availability Linux environments without direct embedded firmware development responsibilities.
Key Responsibilities :
- Provide L2/L3 support for Linux-based applications, platforms, and system software running in production environments.
- Analyze and troubleshoot complex issues involving Linux kernel behavior, system calls, process management, memory utilization, CPU scheduling, and file systems.
- Utilize strong C programming skills to understand existing code, analyze defects, debug applications, identify root causes, and implement bug fixes or enhancements.
- Perform debugging of Linux applications and system software using GDB, strace, ltrace, Valgrind, perf, objdump, readelf, and core dump analysis.
- Investigate kernel panics, segmentation faults, memory leaks, deadlocks, race conditions, and application crashes.
- Work with Linux kernel logs, system logs, and diagnostic tools to identify performance bottlenecks and stability issues.
- Understand Linux kernel architecture, including process scheduling, virtual memory management, interrupt handling, synchronization primitives, kernel modules, and device interfaces.
- Perform troubleshooting related to Linux networking stack including TCP/IP, UDP, ICMP, ARP, VLANs, routing, NAT, firewall rules, and socket programming concepts.
- Analyze packet captures using Wireshark and tcpdump to diagnose communication failures, packet loss, latency, retransmissions, and protocol-level issues.
- Support network services such as DNS, DHCP, SSH, HTTP/HTTPS, FTP, NFS, SMB, and load balancing environments.
- Investigate connectivity issues involving switches, routers, VPNs, firewalls, and Linux network configurations.
- Work with Linux networking utilities including ip, ifconfig, netstat, ss, ethtool, iptables, nftables, route, traceroute, and ping.
- Troubleshoot socket-level communication problems between distributed applications and backend services.
- Monitor system health, CPU usage, memory consumption, disk utilization, I/O performance, and network throughput.
- Perform performance tuning using Linux kernel parameters (sysctl), process tuning, and network optimization techniques.
- Analyze system resource utilization using top, htop, vmstat, iostat, sar, mpstat, pidstat, iotop, and free.
- Investigate storage and file system issues involving EXT4, XFS, NFS, and logical volume management (LVM).
- Develop and maintain Shell and Python scripts for automation of operational tasks, log analysis, health checks, and system monitoring.
- Support software deployment, patch management, package installation, and Linux system upgrades.
- Participate in incident management, major incident handling, problem management, and root cause analysis (RCA).
- Prepare post-incident reports and recommend preventive and corrective actions to minimize recurring issues.
- Collaborate with development teams to reproduce production defects, validate fixes, and support release deployments.
- Work closely with infrastructure, networking, database, and application support teams to resolve cross-functional issues.
- Participate in change management activities, deployment validation, and production release support.
- Maintain technical documentation, troubleshooting guides, SOPs, and knowledge base articles.
- Support 247 production environments with on-call rotation, SLA adherence, and continuous service improvement initiatives.
The job is for:
Did you find something suspicious?