RISCO Group
RISCO Group
501 – 1,000 Employees
HardwareSaaSSecurity
RISCO Group develops electronic security and smart-home technology, combining intrusion detection systems, alarm panels, sensors, video verification and access control. Its cloud management tools and mobile apps serve installers, security integrators and end customers, bringing connected security hardware and software together. The company operates across security, hardware and SaaS.

Senior C++ Middleware Developer at RISCO Group

Build Linux middleware and platform services for connected security and access-control products. Design IPC, system architecture, and integrations across embedded, cloud, and application systems.

Description

  • Create and maintain shared C++ middleware, Linux services, and reusable software components across products.
  • Build services for configuration, diagnostics, logging, security, over-the-air updates, cloud connectivity, event handling, and rules processing.
  • Implement reliable inter-process communication with technologies such as D-Bus, gRPC, Unix domain sockets, shared memory, and message queues.
  • Help shape scalable Linux userspace architecture, defining clear APIs and interfaces between platform and application layers.
  • Develop modular, multithreaded, asynchronous, event-driven software with a focus on reliability, performance, and maintainability.
  • Connect middleware with embedded Linux, BSP and hardware components, companion MCUs, cloud services, and product applications.
  • Review designs and code; debug, profile, test, and investigate root causes.
  • Partner with BSP, application, hardware, cloud, QA, and system architecture teams throughout product development.

Requirements

  • At least seven years of C++ software development experience, including substantial work with Linux userspace, middleware, platform services, or distributed systems.
  • Strong modern C++ skills, including object-oriented design, multithreading, synchronization, memory management, and event-driven programming.
  • Extensive experience building Linux userspace services and applications; familiarity with systemd is an advantage.
  • Strong knowledge of IPC methods such as D-Bus, gRPC, Unix domain sockets, shared memory, and message queues.
  • Experience designing modular, service-oriented, or microservice-oriented software architectures.
  • Experience with REST APIs, MQTT, networking, cloud integration, or similar communication technologies is an advantage.
  • Experience with configuration management, logging, diagnostics, OTA mechanisms, and security-related services is an advantage.
  • Solid understanding of authentication, authorization, encryption, and secure software design principles.
  • Experience with Git, CMake, Linux development environments, debugging and profiling tools, and current software engineering practices.
  • Experience integrating with Java applications or existing Java-based systems is an advantage.
  • Strong analytical, architectural, and problem-solving abilities.
  • High proficiency in English.

Related Jobs