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 AlgorithmsHands-on experience in memory allocation , stack / heap conceptsFamiliarity with Linux development environments , including shell scriptingGood understanding of HTTP, MQTT , and client-server architecturesDebugging and troubleshooting skills using tools like gdb , valgrind , or similarGood to Have
Experience in multithreading or concurrencyExposure to socket programming or inter-process communicationWillingness to explore Embedded Linux or RTOS in future projects