Role Summary :
We are seeking a high-caliber C++ Software Engineer to design and develop high-performance applications ranging from desktop control interfaces to embedded automation systems.
In this role, you will act as a "Performance Architect," responsible for writing efficient, reusable, and reliable code that powers industrial machinery and robotics.
You will leverage your deep understanding of C++ standards, STL, and Manual Memory Management to build quality modules that operate in non-garbage collected environments.
The ideal candidate is a decisive problem-solver who can identify system bottlenecks and implement optimized solutions using dynamic polymorphism and advanced templating.
Responsibilities :
- High-Performance Development: Design, build, and maintain efficient C++ code for desktop applications, native mobile apps, and resource-constrained embedded systems.
- Algorithm & Data Structure Implementation: Utilize the C++ Standard Library (STL), containers, and algorithms to implement complex automation logic and data processing.
- Memory & Resource Management: Manage system memory manually in non-garbage collected environments, ensuring zero leaks and optimal heap/stack utilization.
- System Optimization: Identify performance bottlenecks and software bugs, devising low-level solutions to ensure real-time responsiveness in industrial hardware.
- Architectural Design: Implement Dynamic Polymorphism and C++ specific constructs, such as friend classes and templates, to create flexible and scalable software architectures.
- Quality Governance: Help maintain code organization, documentation, and automatization of testing to ensure long-term software reliability.
- Hardware Interfacing: Collaborate with hardware teams to ensure software modules interact seamlessly with industrial sensors, actuators, and controllers.
- Troubleshooting: Debug complex multi-threaded issues and race conditions inherent in high-concurrency automation systems.
Technical Requirements :
- C++ Mastery: 3+ years of professional experience with C++ (C++11/14/17) and a deep understanding of the language specification.
- STL Expertise: Thorough knowledge of STL containers (vector, map, list) and algorithms for efficient data manipulation.
- Manual Memory Management: Proven experience in managing pointers, references, and smart pointers without the aid of a garbage collector.
- Advanced OOP: Strong understanding of Object-Oriented Programming, including virtual functions, abstract classes, and template meta-programming.
Preferred Skills :
- Domain Knowledge: Experience in Industrial Automation protocols like Modbus, OPC-UA, or EtherCAT.
- Cross-Platform Development: Familiarity with Qt framework for desktop GUI development or embedded Linux.
- Tooling: Experience with GDB for debugging and Valgrind for memory profiling.
Core Competencies :
- Result-Driven: A relentless focus on delivering high-quality modules that meet strict performance benchmarks.
- Decisive Leadership: Ability to make quick, informed technical decisions during the debugging and design phases.
- Analytical Thinking: Capacity to deconstruct abstract automation requirements into concrete, high-performance C++ logic.
- Attention to Detail: Meticulous approach to code reviews and system documentation to prevent technical debt.
Did you find something suspicious?
Posted by
Posted in
Backend Development
Functional Area
Backend Development
Job Code
1607634