Developer Linux C++

Guru Schools

$100K — $130K *
Information Technology
8 - 10 years of experience
Job Overview by Ladders

Qualifications

  • Bachelor's degree in Computer Science, Software Engineering, or related field required.
  • Minimum 10 years of C/C++ development experience on Linux systems.
  • Expertise in event-driven programming and UI logic for Linux desktop applications.
  • Proficient in Bash scripting for automation and system integration.
  • Experience with legacy GUI frameworks like Motif and X11, including code analysis and refactoring.
  • Familiarity with modern display protocols, especially Wayland, and compositor-client architecture.
  • Proficient in Git and Bitbucket workflows, including CI/CD pipelines.

Responsibilities

  • Design and maintain real-time, fault-tolerant desktop applications using C/C++ on Linux.
  • Migrate legacy GUI applications from Motif/X11 to modern Linux display protocols like Wayland.
  • Write and maintain Bash scripts to automate builds, deployments, and diagnostics.
  • Optimize application performance through multithreading and memory management.
  • Debug applications using gdb, valgrind, and other profiling tools for stability.
  • Implement secure coding practices for mission-critical systems.
  • Collaborate with teams to integrate GUI applications with enterprise platforms.

Benefits

  • Onsite work environment in Philadelphia.
  • Opportunities for professional growth in advanced Linux development.
  • Engagement in modern programming practices with cutting-edge technologies.
  • Involvement in cross-functional collaborations that enhance skills and knowledge.
Full Job Description
Developer Linux C++ Position Responsibilities

ONSITE IN PHILLY

  • Design, develop, and maintain real-time, fault-tolerant desktop applications using C and C++ on Linux platforms
  • Migrate legacy GUI applications from Motif/X11 environments to modern Linux display protocols such as Wayland, using toolkits like GTK, Qt, or EFL
  • Write and maintain Bash scripts to automate build processes, deployment routines, and system-level diagnostics
  • Optimize application performance through multithreading, memory management, and low-latency scheduling techniques
  • Debug and profile applications using tools such as gdb, valgrind, perf, and strace to ensure stability and responsiveness
  • Implement secure coding practices and support audit-readiness for mission-critical systems
  • Collaborate with cross-functional teams to integrate GUI applications with enterprise platforms and middleware
  • Configure and support lightweight desktop environments and custom window managers, including MWM and Wayland compositors
  • Manage source code and development workflows using Bitbucket, Git, and CI/CD pipelines
  • Develop and maintain IPC mechanisms (e.g., sockets, shared memory, DBus) for inter-process communication
  • Document system architecture, migration strategies, and operational procedures for modernization initiatives
  • Participate in code reviews, refactoring efforts, and legacy system analysis to support long-term maintainability
  • Support containerized deployment of desktop applications using Docker in secure, isolated environments
Deliverables

  • 24x7 system availability
  • Compiled binaries and executables for Linux systems, optimized for performance and reliability
  • Source code repositories with well-structured C/C++ code, adhering to coding standards and version control best practices
  • Bash scripts for build automation, deployment, diagnostics, and system integration
  • Makefiles or CMake/Meson build configurations for reproducible and portable builds across Linux distributions
  • -GUI application components, including migrated interfaces from Motif/X11 to modern toolkits like GTK, Qt, or Wayland-compatible frameworks
  • Documentation artifacts, such as API references, architecture diagrams, migration plans, and user manuals
  • Unit, integration, and performance test suites, with automated scripts and benchmarks for latency-sensitive applications
  • CI/CD pipeline configurations, integrated with Bitbucket or Git-based workflows for automated build and release cycles
  • Accessibility and compliance features, such as AT-SPI integration and support for screen readers or keyboard navigation
  • Legacy code refactoring reports, detailing modernization efforts from older GUI frameworks to current Linux standards
Requirements

  • Bachelor's degree in computer science, Software Engineering, or related field (required)
  • Minimum 10 years of hands-on experience in C/C++ development on Linux systems
  • Expertise in C and C++ development for Linux desktop applications, including event-driven programming and UI logic
  • Proficiency in Bash scripting for build automation, deployment, and system-level integration
  • Experience with legacy GUI frameworks, including Motif, X11, and MWM, with the ability to analyze and refactor legacy codebases
  • Familiarity with modern display protocols, especially Wayland, including compositor-client architecture and protocol handling
  • Understanding of GUI migration strategies, including porting from Motif/X11 to toolkits like GTK, Qt, or EFL
  • Proficiency with Bitbucket and Git workflows, including branching, pull requests, and CI/CD pipelines
  • Experience with build systems such as CMake, Make, and debugging tools like gdb, valgrind,
  • Ability to work with low-level graphics APIs, such as OpenGL or Vulkan, for rendering and display optimization
  • Comfortable working in lightweight or minimal desktop environments, including configuration of .xinitrc, .Xresources, and custom window manager setups
  • Understanding of Linux system internals, including IPC, permissions, and performance tuning for GUI responsiveness
  • Strong documentation and communication skills, with the ability to translate technical migration plans into actionable development tasks
Preferred

  • 10 years of hands-on experience in C/C++ development on Linux systems
  • Deep knowledge of Linux kernel scheduling policies for deterministic latency.
  • Ability to write custom Wayland protocols and implement both client and compositor-side extensions for specialized GUI behavior.
  • Experience with Zero-Copy Inter-Process Communication (IPC) use of share memory to reducing latency and improving performance.


Skills:

C and C++ on Linux platforms,GTK, Qt, or EFL

Similar Jobs

More Jobs at Guru Schools

More Information Technology Jobs

Find similar Developer Linux C++ jobs: