Linux Agent Developer

AI overview

Join a dynamic Agile team at ControlUp to innovate and develop cutting-edge technologies for managing and automating Linux systems on a cloud-native platform.
ControlUp is transforming the way IT manages systems and troubleshoots issues. We are looking for an experienced Linux Agent Developer to join our physical end-point products division. This is a full-time, permanent work from home position based in Europe. The ideal candidate will help drive the next generation of ControlUp innovation and is a great opportunity to learn and develop cutting edge technologies for management, monitoring, and automation of Linux devices from a cloud-native, massively scalable platform. Description of Work:
  • Design, implement, test, and deliver Linux services and agent components that gather system performance and diagnostic data, execute automated actions, and communicate securely with cloud APIs.
  • Develop primarily in C# using .NET for Linux (e.g., .NET Core/.NET 8+) for system utilities and agent components.
  • Frequent use of C++ for low-level system interactions is not feasible in C#, specifically for performance-critical and Linux-specific components.
  • Take responsibility for carrying work from inception through design, implementation, testing, and delivery across the full software development lifecycle.
  • Collaborate with backend and other enterprise teams to design, integrate, and deliver robust solution designs.
  • Translate business requirements and user scenarios into technical specifications, user stories, and tasks.
  • Participate fully in Agile development lifecycle: planning, daily stand-ups, demos, reviews.
  • Continuously expand knowledge of Linux systems and related technologies.
  • Must Haves:
  • 5+ years .NET (Core/8+) experience creating cross-platform agents, preferably targeting Linux services/daemons.
  • Strong knowledge of Linux internals and techniques for gathering system-level performance data (e.g., /proc, /sys, Netlink).
  • Strong knowledge of Linux system calls (syscalls) and C/C++ development for Linux.
  • Strong design skills in modular architecture, fault-tolerant systems, and inter-process communication (e.g., D-Bus, sockets, shared memory).Ability to write and maintain performant, low-level C++ components for Linux.
  • Passionate about AI-driven development.
  • Experience writing and maintaining unit tests, automation tests, and integration tests.
  • Solid understanding of multi-threaded programming.
  • Strong experience with REST APIs, HTTPS, WebSockets, and network communication technologies (sockets, gRPC).Experience developing in Agile environments using tools such as Azure DevOps or Jira.
  • Organised, self-motivated, collaborative team player.
  • Experience in start-up culture delivering enterprise-level software.
  • Familiarity with containerization technologies and orchestration is a plus.
  • Shell/Bash scripting.
  • Exposure to Azure DevOps, Repos, and Pipelines.
  • About the Team:
  • We are an Agile team; we work iteratively, fast-paced, and focus on delivering features and business value quickly. We deliver robust fixes and features to customers swiftly.
  • We're in it together and deliver together. We take accountability and don't throw things over the fence.
  • We are strongly invested in AI tools to assist us with our tasks and enjoy knowledge sharing.
  • We make engineering-led decisions, with emphasis on clean architecture and maintainable code over technical debt.
  • Whilst we work as a team, each individual makes a significant business impact and has clear opportunities to grow their career.
  • Ace your job interview

    Understand the required skills and qualifications, anticipate the questions you may be asked, and study well-prepared answers using our sample responses.

    Developer Q&A's
    Report this job
    Apply for this job