About the Role We are hiring a Software Engineer with a strong foundation in C programming , Data Structures & Algorithms , and memory management .
This role is ideal for individuals who enjoy low-level, performance-critical programming and want to work on real-time systems, protocol integration, and high-efficiency software modules.
Key Responsibilities - Write clean, efficient, and optimized C code
- Solve complex problems using DSA principles
- Manage dynamic/static memory allocation in performance-sensitive systems
- Work with Linux OS , command-line tools, and scripting for automation
- Implement and debug application-layer protocols such as HTTP and MQTT
- Collaborate with cross-functional teams (embedded, hardware, cloud) for integration
Must-Have Skills - Proficiency in C language (memory pointers, buffers, linked structures)
- Strong knowledge of Data Structures and Algorithms
- Hands-on experience in memory allocation , stack/heap concepts
- Familiarity with Linux development environments , including shell scripting
- Good understanding of HTTP, MQTT , and client-server architectures
- Debugging and troubleshooting skills using tools like gdb , valgrind , or similar
Good to Have - Experience in multithreading or concurrency
- Exposure to socket programming or inter-process communication
- Willingness to explore Embedded Linux or RTOS in future projects