C++ Engineer

Remote
Full Time
Experienced

Required

· Languages: modern C++ (C++17/20) and Swift 6 (async/await, actors, strict concurrency checking). Also Objective-C++ to bridge Swift, C++ and C APIs.

· macOS systems programming: Foundation and CoreFoundation, GCD and pthreads, POSIX/BSD APIs, Mach IPC, launchd daemons and agents, and XPC (C API and NSXPCConnection).

· Performance, debugging and test:

o Profiling CPU and memory with Instruments and os_signpost.

o Debugging with LLDB, crash logs and os_log.

o XCTest, sanitizers, fuzzing, and xcodebuild-based CI.

o Apple Silicon and Intel.

· Experience with codebases shared across Mac, Windows and Linux.

Core skills (one or more of the areas listed below)

· Process model and IPC: launchd daemons and agents, and XPC (C API and NSXPCConnection).

· Endpoint Security and System Extensions: Endpoint Security clients handling both blocking (AUTH) events and notification events, user/MDM approval, upgrades.

· Network Extension: content filters, both flow-level (NEFilterDataProvider) and packet-level (NEFilterPacketProvider), and Network.framework.

· Security and crypto: Verifying code signatures (SecCode / SecStaticCode) and validating certificates (SecTrust), Keychain, Entitlements, hardened runtime, and macOS privacy permissions.

· Devices and storage: IOKit (hardware and device enumeration) and DiskArbitration (disk and volume events).

· Packaging and deployment: installers, notarization, and MDM configuration profiles deployed through Jamf, Intune or similar tools.

· Performance, debugging and test: Profiling CPU and memory with Instruments and os_signpost, Debugging with LLDB, crash logs and os_log, XCTest, sanitizers, fuzzing, and xcodebuild-based CI.

Nice to have

· UI: SwiftUI and AppKit apps and app extensions.

· Testing against macOS and Xcode betas before public release.

· Experience shipping EDR/AV, network security or device-management products.

Share

Apply for this position

Required*
We've received your resume. Click here to update it.
Attach resume as .pdf, .doc, .docx, .odt, .txt, or .rtf (limit 5MB) or Paste resume

Paste your resume here or Attach resume file

Human Check*