Expert Software Engineer

Date PostedJuly 9, 2026LocationFlexible / RemoteCompanyEnsonoSalary$130,000 to 188,000 annuallyTypeSenior Level

Job Summary

The Expert Software Engineer will architect and maintain high-performance C++ applications while managing system reliability and scalability. This role involves leading technical initiatives, including CI/CD pipeline design, advanced memory management, and cross-functional team collaboration. The successful candidate will mentor junior engineers and drive best practices in a Linux-based development environment.

Responsibilities

  • Architect and maintain high-performance C++ applications
  • Design and manage CI/CD pipelines and container workflows
  • Lead code reviews and enforce technical standards
  • Mentor junior and mid-level software engineers
  • Resolve complex system issues and performance bottlenecks

Required Skills

  • Expert C++ programming (C++11/14/17/20)
  • Mainframe skills (COBOL, CICS, JCL, DB2, VSM)
  • Multithreading and memory management expertise
  • Proficiency with Docker, CMake, and CI/CD tools
  • Linux-based environment and Python scripting

Job Details

Roles & Responsibilities: - 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. Required Skills & Experience: - 10+ years of experience in Mainframe Skills: COBOL, CICS, JCL, DB2 and VSM. - Expert understanding of dynamic memory allocation, RAII, smart pointers (unique_ptr, shared_ptr, weak_ptr). - 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::condition_variable). - 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, GitLab CI, GitHub Actions). - Advanced use of GDB for low-level debugging and post-mortem analysis. - Proficiency with Valgrind (Memcheck, Helgrind, Callgrind) for memory and thread analysis. Qualifications: - 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. - Excellent problem-solving and analytical skills. - Strong communication and interpersonal skills. - Ability to work independently and as part of a team.