Expert C++ Software Engineer
Listed on 2026-09-30
-
Software Development
Unix/Linux, Software Architect, Software Engineer, DevOps
Expert C++ Software Engineer Remote - United StatesJR
013946
At Ensono, our Purpose is to be a relentless ally, disrupting the status quo and unleashing our clients to Do Great Things ! We enable our clients to achieve key business outcomes that reshape how our world runs. As an expert technology adviser and managed service provider with cross-platform certifications, Ensono empowers our clients to keep up with continuous change and embrace innovation.
We can Do Great Things because we have great Associates. The Ensono Core Values unify our diverse talents and are woven into how we do business. These five traits are the key to achieving our purpose.
Honesty – Reliability – Curiosity – Collaboration – Passion
About the role and what you’ll be doing:
We are seeking a highly skilled and experiencedC++ Expert Engineer with 10+ yearsyearsof hands‑on, production‑level experiencetojoin our engineering team. In this role,thecandidatewilldesign, develop, andmaintainhigh‑performance, production‑grade C++ systems.
The candidate will play a key technical leadership role — driving architectural decisions, mentoring peers, and championing best practices across the software development lifecycle.
- Architect, develop, and maintain complex, high‑performance applications in C++ (C++11/14/17/20 and beyond)
- Take ownership of critical system components with a focus on reliability, scalability, and performance
- Design and implement solutions involving advanced memory management and concurrent/multithreaded architecture
- Lead code reviews and enforce coding standards and best practices across the team
- Define and maintain CMake -based build systems and manage multi‑platform build configurations
- Design and maintain CI/CD pipelines and Docker -based containerisation workflows
- Diagnose and resolve complex issues using tools such as GDB and Valgrind ; lead performance profiling and tuning initiatives
- Collaborate with cross‑functional teams in a Linux -based development environment
- Contribute to and maintain automation scripts using Python and shell scripting
- Interact with relational data sources using SQL where required
- Manage source code, branching strategies, and release workflows using Git
- Mentor junior and mid‑level engineers; drive technical growth across the team
- Participate in system design discussions, technical planning, and effort estimation
We want all new Associates to succeed in their roles t’s why we’ve outlined the job requirements below. To be considered for this role, it’s important that you meet all Required Qualifications. If you do not meet all of the Preferred Qualifications, we still encourage you to apply.
Required Qualifications
- Expert understanding of dynamic memory allocation, RAII, smart pointers (, , )
- Experience diagnosing and resolving memory leaks, dangling pointers, and buffer overflows
- Familiarity with custom allocators and memory pool strategies
- Strong command of the C++ threading model (std::thread, std::mutex, std::atomic, std::)
- Experience with lock‑free and wait‑free programming patterns
- Ability to identify and resolve race conditions, deadlocks, and thread‑safety issues
- Expert‑level experience with CMake for cross‑platform build configuration
- Proficiency with Docker for containerised development and deployment environments
- Hands‑on experience designing and maintaining CI/CD pipelines (e.g., Jenkins, Git Lab CI, Git Hub Actions)
- Advanced use of GDB for low‑level debugging and post‑mortem analysis
- Proficiency with Valgrind (Memcheck, Helgrind, Callgrind) for memory and thread analysis
- Bachelor’s or master’s degree in computer science, Software Engineering, or a related technical discipline
- Equivalent industry experience will be considered in lieu of formal education
- Soft Skills:
Excellent problem‑solving and…
(If this job is in fact in your jurisdiction, then you may be using a Proxy or VPN to access this site, and to progress further, you should change your connectivity to another mobile device or PC).