Senior Middleware Engineer (Linux, C++)
Posted 7 days 7 hours ago by Luxoft
Project description
We are utilizing a city's existing fleet and a growing number of mobile devices connected to our network, we collect real-time data that supports the enforcement of traffic laws. We are implementing the first technology provider to create a vision-based solution capable of detecting, understanding, and determine causation of traffic violations, to help cities achieve their Vision Zero safety goals.
Responsibilities
- - Design and develop middleware components, platform libraries, and system services for embedded Linux platforms.- Optimize inter-process communication, data flow, and system resource utilization to improve overall performance.- Analyze and resolve system-level performance bottlenecks, ensuring reliability and scalability of embedded platforms.- Collaborate with cross-functional teams (firmware, cloud, and application) to define platform interfaces, APIs, and integration points.- Implement and maintain platform-level features such as logging, security frameworks, and configuration management.- Debug complex system issues across the middleware, OS, and hardware layers.- Contribute to architecture discussions and provide technical guidance for platform evolution.
SKILLS
Must have
- - BS or MS in Computer Science, Electrical Engineering, or a related field.- Proficiency in C and C++ for embedded and system-level development.- Strong experience with Linux internals (system services, IPC, device drivers, kernel/user space interactions).- Solid understanding of embedded system architecture, SoC components, and hardware/software interaction.- Experience with scripting languages (Bash, Python) for build, automation, and testing.- Familiarity with common hardware interfaces (I2C, SPI, UART, USB, PCIe).
Nice to have
- Experience with Linux kernel configuration, building, and debugging.- Knowledge of ARM-based platforms and low-level hardware bring-up.- Exposure to middleware frameworks, IPC mechanisms (DBus, gRPC), or platform APIs.- Experience with OTA update systems for OS, applications, and firmware.- Understanding of multimedia pipelines, CUDA/OpenCL, or GPU acceleration.- Familiarity with CAN/CAN-FD or other automotive/industrial protocols.- Experience with security frameworks (secure boot, encryption, key management) in embedded systems.