About the role
About the Role
We are looking for a Team Lead / Senior Software Engineer -C++/Qt/ Real-Time Systems to design, develop, and integrate high-performance desktop software applications for mission-critical operational environments.
The role requires strong hands-on experience in Modern C++, Qt, real-time data visualization, middleware integration, networking, multithreading, plugin-based architecture, and Linux-based application development.
The candidate should be comfortable working on complex C++/Qt applications involving real-time data feeds, tactical visualization, distributed communication, custom graphics, and system-level integration. The required skill set is aligned with the shared requirement for C++/Qt/QML, database queries, software standards, testing, integration, configuration management, and SDLC documentation.
Key Responsibilities
-
Design, develop, and maintain high-performance C++/Qt desktop applications.
-
Build modular and extensible software components using plugin-based architecture.
-
Develop real-time visualization modules using Qt Widgets,
-
QGraphics View/QGraphicsScene, QOpenGLWidget, OpenGL, and/or QML.
-
Implement real-time data ingestion and communication using DDS middleware, UDP, TCP, and multicast sockets.
-
Design shared in-memory data models for correlating and fusing data from multiple sources.
-
Implement multi-threaded processing using QThread, QtConcurrent, and thread- safe signal-slot mechanisms.
-
Ensure that background communication, data processing, and integration logic do not block the GUI thread.
-
Optimize rendering performance for dynamic objects, tactical overlays, status indicators, history trails, and interactive map/graphics views.
-
Implement user interaction features such as selection, context menus, hover telemetry, zooming, panning, and live status updates.
-
Work with Linux-based build and deployment environments using CMake/qmake.
-
Perform unit testing, integration testing, debugging, and performance tuning.
-
Maintain software documentation including SRS, SDD, ICD notes, design documents, test reports, and configuration records.
-
Follow software development standards, version control practices, and SDLC processes.
Required Skills
-
Strong programming experience in Modern C++: C++11/14/17, OOP, STL, templates, smart pointers, RAII, and memory management.
-
Hands-on experience with Qt Framework: Qt Widgets, Qt Creator, signal-slot mechanism, event loop, custom widgets, and Qt Designer.
-
Experience with QGraphics View/QGraphicsScene for real-time 2D visualization.
-
Experience with QOpenGLWidget/OpenGL for high-performance rendering.
-
Working knowledge of QML and C++ integration is preferred.
-
Strong understanding of multithreading in Qt, including QThread, QtConcurrent, queued connections, and thread-safe UI updates.
-
Experience with UDP/TCP socket programming,
-
Experience or strong understanding of DDS middleware such as eProsima Fast DDS, RTI Connext, or OpenDDS.
-
DDS IDL authoring and code generation defining topic types, running code generators (fastddsgen or equivalent), integrating generated types into a C++ build
-
Experience building multi-source data correlation logic using shared in-memory models keyed by a common entity identifier, where updates from independent sources must be merged consistently
-
High-throughput real-time data publishing on dedicated background threads experience sustaining thousands of structured updates per second without blocking the main application
-
Experience designing plugin-based software architectures using dynamic loading, interfaces, or factory patterns.
-
Strong understanding of software design patterns such as MVC, Observer, Factory, Singleton, Strategy, Command, Facade, and Proxy.
-
Experience with CMake/qmake, Git, Linux development, debugging, and integration workflows.
-
Ability to read and interpret ICDs, technical specifications, SRS, and SDD documents.
-
Experience in embedded, defense, or system-level applications.
-
Prior experience in aerospace or defense technology
-
Experience in defence, aerospace, radar, GIS, simulation, surveillance, or command- and-control systems.
-
Experience with real-time tactical displays or moving-object visualization.
-
Experience handling high-frequency data updates in GUI applications.
-
Experience with UDP multicast, DDS IDL, QoS configuration, and publish-subscribe communication.
-
Experience with OpenGL shader programming.