MARS Telecom Systems - Senior Software Engineer - Linux/C++

MARS Telecom Systems Pvt. Ltd.

Job Summary

We are looking for an experienced Software Engineer with strong expertise in Linux-based application development, inter-process communication (IPC), multithreading, microservices architecture, and network communication. The ideal candidate should have hands-on experience developing scalable software solutions using sockets, web services/APIs, and MQTT messaging protocols.

Total Experience : 6 - 12 years

Key Responsibilities

  • Design, develop, test, and maintain software applications in Linux environments.
  • Implement concurrent applications using IPC mechanisms and multithreading.
  • Apply appropriate software design patterns to build maintainable and scalable solutions.
  • Design and develop microservices-based applications and service integrations.
  • Implement socket-based communication using TCP/IP or UDP protocols.
  • Develop, integrate, and troubleshoot web services and REST APIs.
  • Implement MQTT client functionality and integrate applications with MQTT brokers for message exchange.
  • Troubleshoot performance issues, concurrency problems, communication failures, and application defects.
  • Collaborate with cross-functional teams to define technical requirements and deliver reliable software solutions.
  • Follow coding standards, perform code reviews, and contribute to software testing and documentation.

Required Technical Skills

  • Linux : Linux OS, command-line tools, application development and debugging.
  • IPC & Multithreading : Inter-process communication, threads, synchronization, mutexes, semaphores, and concurrency management.
  • Design Patterns : Practical application of common software design patterns.
  • Microservices Architecture : Service-based design, service communication, and integration.
  • Socket Communication : TCP/IP, UDP, socket programming, and network troubleshooting.
  • Web Services / APIs : REST APIs, HTTP/HTTPS, API integration, and debugging.
  • MQTT : MQTT client development, broker integration, publish/subscribe messaging, and topic management.

Preferred Skills

  • Experience with C/C++ or another systems programming language.
  • Familiarity with Git and Linux debugging tools.
  • Knowledge of multithreaded application performance optimization.
  • Understanding of distributed systems and asynchronous messaging.
  • Experience with MQTT brokers such as Mosquitto or EMQX.
  • Familiarity with unit testing, integration testing, and CI/CD practices.

(ref:hirist.tech)

How to apply

To apply for this job you need to authorize on our website. If you don't have an account yet, please register.