C++ Tech Lead (Python) to $6500 Offline
Are you eager to bring state-of-the-art machine learning models to both edge devices and the cloud? Do you excel in fast-paced environments, constantly pushing the limits of what's possible? Are you someone who always strives to see the bigger picture and go the extra mile? If so, we have a compelling opportunity for a Technical Lead to join our team.
In this role, you'll be at the forefront of developing and integrating various modules, components, and models across a range of edge platforms. Your assistance will include designing and implementing robust data processing pipelines that ensure seamless interaction between edge systems and the cloud, optimizing performance and reliability along the way.
A strong grasp of message brokers, sockets, and message queuing protocols will be key to building scalable, high-performance solutions, primarily at the edge but also extending into cloud-based deployments. You should be comfortable working within both microservices and monolithic architectures, adapting to project-specific requirements as needed.
Required Skills and Qualifications:
- Strong proficiency in Python and C/C++, preferably with a solid background in embedded systems programming.
- Significant experience in developing and deploying machine learning models on edge devices.
- In-depth understanding of message brokers, sockets, and communication technologies such as ZeroMQ, RabbitMQ, or Apache Kafka, essential for building scalable and efficient data processing pipelines across edge and cloud environments.
- Expertise in designing and implementing robust data pipelines capable of seamlessly integrating with edge devices and cloud systems, efficiently handling diverse data types, including images, videos, text, and audio.
- Familiarity with both microservices and monolithic architectures, along with their respective trade-offs in edge-to-cloud communication and data flow management.
Proficiency with containerization technologies (e.g., Docker, Podman) and orchestration platforms (e.g., Kubernetes, OpenShift) for deploying and managing ML inference workloads at the edge and in the cloud. - Knowledge of CI/CD workflows and automation tools (e.g., Jenkins, Travis CI, GitHub Actions) to streamline the deployment and maintenance of ML models across distributed environments.
Strong foundation in embedded programming, including low-level hardware interactions, device driver development, and firmware programming for seamless data exchange between edge devices and the cloud. - Preferred: hands-on experience with sensor data acquisition, preprocessing, and integration on edge devices, utilizing communication protocols such as SPI, UART, I2C, and others.
- Preferred: solid understanding of edge computing constraints, including resource limitations, power efficiency, latency considerations, and offline operation strategies.
- Preferred: experience working with embedded operating systems, such as Linux-based platforms (e.g., Raspbian, Ubuntu Server) and real-time OSes (e.g., FreeRTOS, NuttX), ensuring effective integration with edge ML inference systems.
- Excellent problem-solving and analytical skills, with the ability to critically assess challenges and devise innovative solutions for ML deployments in edge-cloud environments.
Effective written and verbal communication skills, enabling smooth collaboration with cross-functional teams.
Preferred Experience:
- Extensive experience with modern C++ (C++11/14/17/20), including multithreading, memory management, and performance optimization in resource-constrained environments.
- Acknowledgeable grasp of Python for scripting, automation, and ML model integration into C++-based systems.
Tech Lead (C++, Python) - Strong software architecture and design skills, including experience with design patterns, dependency management, and modular, scalable system design.
- Experience of working with a team of developers, setting technical direction, and mentoring engineers in best practices for C++ and embedded systems development.
- Proficiency in debugging and profiling tools for performance tuning, memory leak detection, and optimizing low-latency applications (e.g., Valgrind, gdb, perf, AddressSanitizer).
- Experience working with cross-compilation toolchains and build systems like CMake, Bazel, or Meson for embedded and edge platforms.
- Strong knowledge of real-time systems and constraints, with expertise in concurrency control, scheduling, and real-time operating systems.
- Familiarity with DevOps practices, CI/CD pipelines, and automated testing strategies for C++-driven development workflows.
- Firsthand experience with UAVs, drones, or flight controllers, including their integration with embedded AI systems for real-time inference and onboard data processing.
- Strong understanding of digital video technologies, including hardware components, communication protocols, processing techniques, and encryption methods.
- Familiarity with edge-to-cloud synchronization mechanisms and communication protocols such as MQTT, CoAP, or AMQP to enable efficient and reliable data exchange.
- Experience with robotic frameworks like ROS, ROS2, or Ardupilot, particularly in the context of edge-cloud computing for robotics and autonomous systems.
- Proficiency in time-series data analysis and anomaly detection on edge devices, along with integrating these insights into cloud-based analytics and visualization platforms.
The job ad is no longer active
Look at the current jobs C / C++ / Embedded Kyivโ