iOS Developer - OpenVPN 3 Tunnel Adapter

corevo it • United State
Remote
Apply
AI Summary

Design and implement the OpenVPN 3 tunnel adapter for a production iOS VPN application. Develop a self-contained Objective-C++ module that wraps the OpenVPN 3 C++ library and integrates it with Apple's Network Extension framework. Optimize memory usage and handle network transitions.

Key Highlights
Design and implement the OpenVPN 3 tunnel adapter for a production iOS VPN application
Develop a self-contained Objective-C++ module that wraps the OpenVPN 3 C++ library
Integrate with Apple's Network Extension framework
Key Responsibilities
Library Architecture: Cross-compile OpenVPN 3 and its dependencies for iOS arm64
Tunnel Implementation: Subclass OpenVPNClient from the OpenVPN 3 API and implement the TunBuilder interface
Packet Processing: Implement and manage the bidirectional packet I/O loop between NEPacketTunnelFlow and the OpenVPN encryption pipeline
Technical Skills Required
Modern C++ Mastery Mixed-Language Development Xcode Build Systems Memory Management Constrained Debugging

Job Description


Role: iOS Developer

Location : Greene, MD (100% Remote)

W2 Role(USC only)



Role Overview


We are seeking a specialist to own the design and implementation of the OpenVPN 3 tunnel adapter for a production iOS VPN application. In this contract role, you will be responsible for a self-contained Objective-C++ module that wraps the OpenVPN 3 C++ library and integrates it seamlessly with Apple’s Network Extension framework.


While the surrounding Swift application and product lifecycle are handled by the core team, you will have complete technical ownership of the adapter: from cross-compilation to the bidirectional packet I/O loop.


The Technical Challenge


The iOS Network Extension environment is notoriously constrained. You will be operating within a sandboxed process with a 50 MB memory ceiling (iOS 17). Success in this role requires disciplined buffer management, allocation hygiene, and the ability to navigate limited debugging support in a high-pressure networking environment.


Core Responsibilities


Library Architecture: Cross-compile OpenVPN 3 and its dependencies (mbedTLS, standalone ASIO, LZ4) for iOS arm64 (Device & Simulator).


Tunnel Implementation: Subclass OpenVPNClient from the OpenVPN 3 API and implement the TunBuilder interface, covering routes, DNS, MTU, and dual-stack IPv4/IPv6.


Packet Processing: Implement and manage the bidirectional packet I/O loop between NEPacketTunnelFlow and the OpenVPN encryption pipeline.


Network Resilience: Tune the ASIO transport to handle network transitions (Wi-Fi to Cellular, Airplane Mode) and edge cases in the sandbox.


Memory Optimization: Profile and optimize allocations with Instruments to ensure the module stays strictly under the 50 MB process limit.


Interface Design: Define and document a narrow Objective-C delegate header to act as the single integration point for the Swift-based container app.


Lifecycle Management: Implement the connection lifecycle (connect/pause/resume) and surface structured logs and byte-count statistics for diagnostics.


Project Timeline & Stabilization


Primary Phase (Weeks 1–8): Core development and initial integration.


QA & Retainer Phase (Weeks 9–14): * Iterate with the team through the stabilization phase.


Write unit/integration test scaffolding for the adapter.


Perform sustained load testing and memory profiling.


Address race conditions and packet I/O edge cases surfaced during network transition testing.


Required Skills


Modern C++ Mastery: Expert knowledge of C++17, including templates, RAII, smart pointers, and concurrency primitives.


Mixed-Language Development: Experience shipping iOS libraries that integrate C++ code. You must be proficient with Objective-C++ (.mm) and understand how to link mixed-language projects in Xcode.


Xcode Build Systems: Proficiency in cross-compilation targets, static library linking, and framework packaging.


Memory Management: Deep understanding of Apple’s ARC and how it interacts with C++ object lifetimes.


Constrained Debugging: Experience debugging in restrictive environments (App Extensions, embedded systems, or sandboxes).


Highly Valued Experience


Direct experience with the OpenVPN 3 client library or similar tunneling protocols (WireGuard, strongSwan).


Deep familiarity with Apple’s Network Extension framework (NEPacketTunnelProvider).


Prior work with standalone ASIO or Boost.Asio event loops.


Knowledge of OpenVPN protocol specifics (Control/Data channels, TLS handshakes).


History of cross-compiling complex C++ dependencies for iOS arm64.


Why this role is unique


This is a "pure engineering" contract. We have removed the overhead of UI development, product management, and QA coordination from your plate. You are being hired for your expertise in low-level networking and your ability to make a C++ engine thrive within the unique constraints of iOS.


Similar Jobs

Explore other opportunities that match your interests

Visa Sponsorship Relocation Remote
Job Type Contract
Experience Level Entry level

Golden Technology

United State

Full Stack Developer

Mobile
•
6d ago
Visa Sponsorship Relocation Remote
Job Type Full-time
Experience Level Mid-Senior level

NetForemost

United State

Senior Full Stack Engineer

Mobile
•
6d ago
Visa Sponsorship Relocation Remote
Job Type Full-time
Experience Level Mid-Senior level

NetForemost

United State

Subscribe our newsletter

New Things Will Always Update Regularly