Progress Software

Principal Software Engineering - Rust Systems Engineer

Progress Software$170K — $189K *
Information Technology
8 - 10 years of experience
Job Overview by Ladders

Qualifications

  • 10+ years of software engineering experience; 5+ years in production Rust for systems-level applications.
  • Proficient in C/C++, with capability to interact with large codebases.
  • Expertise in FFI, including Rust-C interoperability and memory ownership across boundaries.
  • Experience shipping shared libraries (.so/.dll) in production environments.
  • Hands-on experience integrating Rust with various build systems.
  • Familiarity with multi-platform development across Linux and Windows.
  • Strong problem-solving skills with a proven ability to work independently.
  • Excellent communication skills and experience mentoring teams.

Responsibilities

  • Integrate Rust into existing build systems to support shared libraries alongside C subsystems.
  • Define FFI architecture for seamless Rust and C integration, establishing Rust as a primary language.
  • Develop and test production-grade Rust libraries to replace legacy C implementations.
  • Lead architectural design for cross-platform systems and middleware improvements.
  • Oversee the validation process to ensure Rust implementations meet performance standards.
  • Act as the Rust code owner, guiding code standards and reviewing pull requests.
  • Lead the Rust Guild to foster knowledge sharing and upskill C/C++ engineers in Rust.

Benefits

  • Comprehensive medical, dental, and vision coverage, alongside life and disability insurance.
  • 401(k) retirement savings plan with company matching and an employee stock purchase program with a favorable lookback.
  • Generous paid leave, including vacation, personal days, and parental leave.
  • Employee Assistance Program (EAP) and well-being initiatives for mental and financial health.
Full Job Description
Progress is currently hiring a Rust Systems Engineer to join our OpenEdge Core Engineering team. This is an opportunity for an expert systems programmer who wants to make a lasting impact by introducing Rust into a 30-year-old, mission-critical production database engine - and who has the technical leadership skills to bring an entire engineering organization along for the journey.

Progress Software (NASDAQ: PRGS) is a 30+ year strong software company headquartered in Burlington, MA. Our core product, OpenEdge, is a mature, multi-platform RDBMS engine powering thousands of mission-critical business applications worldwide across healthcare, manufacturing, finance, and government. The codebase spans 200+ subsystems and 10,000+ C/C++ source files - running on Linux x86_64 and Windows with a heritage of reliability and strict backward compatibility.

We are at a strategic inflection point: selectively introducing Rust into the OpenEdge engine to improve memory safety, unlock new platforms (macOS, ARM/Graviton, NUMA), and build new subsystems (Apache Iceberg, Avro, Kafka CDC) on a modern foundation - while preserving the stability our customers depend on.

You will be embedded in the OpenEdge Core Engineering team - the group responsible for the internals of the database engine, server operations, shared-memory IPC, multi-threaded utilities, and enterprise features such as partitioning, multi-tenancy, disaster recovery, and security. You will serve as the Rust technical lead across multiple sub-teams: Iceberg/Avro, PASOE/Transport, Platform Portability, and Kafka/CDC. You will also found and lead the Rust Guild - a weekly cross-team learning and code-review forum whose goal is to grow 3-4 existing C/C++ engineers into independent Rust contributors within twelve months.

In this role, you will:

Rust Platform & Build Integration
  • Integrate Rust (Cargo-based workflows) into the existing CMK (custom Make) build system so Rust shared libraries (.so/.dll) compile, link, and ship alongside 200+ C subsystems across Linux x86_64 and Windows 64-bit.
  • Define and standardize Rust ↔ C FFI architecture, including:
    • Extern "C" boundary design
    • Auto-generated C headers (via cbindgen)
    • Error-handling conventions
    • Memory ownership and lifetime rules
    • Establish Rust as a first-class, supportable language within the core database engine.


Core Systems Libraries
  • Design and deliver production-grade Rust shared libraries that replace legacy C implementations, including:
    • Compression: A Rust-based zstd-backed compression library replacing legacy RDC with drop-in C APIs.
    • JSON Parsing: A memory-safe, multi-threaded Rust JSON parser using serde_json to eliminate known leak and corruption vectors from legacy YAJL-based components.
    • Avro Serialization: A foundational Avro encode/decode layer supporting OpenEdge ↔ Apache Avro type mappings for Apache Iceberg integration.
  • Own benchmarking, validation, and parity testing to ensure Rust replacements meet or exceed legacy performance and stability.


Platform & Architecture Leadership
  • Architect and lead a Rust-based platform systems layer replacing System V IPC with modern, cross-platform primitives (mmap, POSIX shared memory, futex-style synchronization).
  • Enable:
    • macOS developer builds
    • ARM / Graviton production deployments with significant cost-efficiency gains
  • Design NUMA-aware memory allocation strategies for multi-socket, high-throughput production servers using hwloc.
  • Guide Tier-3 Rust crates covering cloud file I/O, Iceberg table operations, and engine integration bridges.


Async & Networking Modernization

  • Architect an async gRPC server using tonic, tower, and tokio modernize the PASOE data path and replace Tomcat/HTTP-based flows.
  • Design middleware layers for authentication (JWT), observability, and performance isolation with a focus on multi x throughput improvements.


Engineering Enablement & Code Quality

  • Act as the Rust code owner across the organization:
    • Review all Rust PRs
    • Enforce idiomatic Rust, safe unsafe usage, and consistent FFI patterns
  • Mentor senior C/C++ engineers transitioning into Rust through:
    • Pair programming
    • Structured code reviews
    • Hands-on module translation exercises


Community, Leadership & Communication

  • Lead the Rust Guild, hosting regular technical sessions covering:
    • FFI design patterns
    • Async Rust
    • PR walkthroughs and architectural deep dives
  • Communicate architectural decisions, trade-offs, and migration strategy clearly to senior leadership and cross-functional stakeholders.
  • Partner with management on:
    • Rust adoption standards
    • Long-term platform strategy
    • Hiring plans and senior Rust capability expansion


Your background:

  • Overall 10+years of Software Engineering Experience with, Must have 5+ years of production Rust in systems-level software - database engines, OS components, embedded systems, network infrastructure, or similar.
  • Strong C/C++ background - ability to read, understand, and interface with 10,000+ files of C code daily; you need to think fluently in both languages.
  • FFI expertise - production experience with Rust ↔ C interop: extern "C", cbindgen/bindgen, unsafe boundary design, and memory-ownership protocols across language boundaries.
  • Shipped shared libraries - experience building .so/.dll Rust libraries consumed by C/C++ callers in production environments.
  • Build system integration - experience integrating Cargo with non-Cargo build systems (Make, CMake, Bazel, or custom frameworks).
  • Multi-platform development - Linux x86_64 and Windows 64-bit at minimum.
  • Experience implementing software using OS fundamentals: file-system and storage management, memory management, virtual memory, process synchronization, and multithreading.
  • Strong problem analysis and solving skills; works independently and meets tight deadlines.
  • Excellent verbal and written communication skills in English.
  • Mentorship / tech-lead experience - you will be training a team, not just writing code.
  • A degree in Computer Science or equivalent foundational experience covering data structures, algorithms, operating systems, and database fundamentals.


Additionally, it would be beneficial if you have:

  • Database internals - shared memory, buffer pools, WAL, concurrency control, storage engines.
  • gRPC / tonic - production experience building async gRPC services in Rust with tower middleware, prost code generation, and tonic-web for browser compatibility.
  • Apache Arrow / Parquet / Iceberg / Avro ecosystem experience.
  • NUMA-aware programming - hwloc, mbind(), set_mempolicy(), per-node allocation strategies.
  • Memory allocator design - arena/region allocators, custom allocator traits in Rust, jemalloc/mimalloc integration.
  • io_uring / async I/O - experience with modern Linux I/O or Rust tokio runtime for systems work.
  • macOS and ARM/Graviton platform experience.
  • Familiarity with AI-assisted development tools (GitHub Copilot, Claude) for code translation and pair programming workflows.


Base Salary Range: $170,000 - $189,000
This position is also eligible to participate in our performance-based annual corporate bonus plan. Final base compensation is determined by a number of factors, including but not limited to job-related skills, education, demonstrable experience, and allowance for future and continued salary growth. We also offer a robust benefits package, with details below.

If this sounds like you and fits your experience and career goals, we'd be happy to chat.

What we offer in return is the opportunity to experience a great company culture with wonderful colleagues to learn from and collaborate with and also to enjoy:
  • Medical, dental, vision, life & disability, and financial benefits (including 401(k) retirement savings plan. Tuition Reimbursement program. Additional voluntary benefits including crucial illness/hospital indemnity, identity theft protection, auto & home insurance, legal, and pet insurance.
  • Competitive salary, bonus, and best-in-class Employee Stock Purchase Program (ESPP) with a 27-month lookback
  • Flexible paid vacation time, paid day off for your birthday, and company holidays. A variety of leave plans, including Parental Leave.
  • Employee Assistance Program (EAP) and an employee well-being program focusing on physical, mental, and financial health.


Apply Now!

#LI-hybrid

About Progress Software

Progress Software Corporation is a global software company. The Company offers solutions in the development, deployment, integration and management of business applications on premise, in the cloud, on mobile devices, and on platforms. The Company operates through three segments: OpenEdge, Data Connectivity and Integration, and Application Development and Deployment. The Company's solutions are used across a range of industries, including government, financial services, and healthcare. The Company's technologies include Progress OpenEdge, Progress Corticon, Progress DataDirect Connect, Progress DataDirect Cloud, Progress DataDirect Bulk Load, Progress Easyl, Progress Rollbase and Progress Pacific. The Company also offers a range of services, including implementation, consulting, training, and customer support.
Learn more about Progress Software
Size
2,103 employees
Market Cap
$2.1 billion
Industry
Net Income
$79.7 million
Founded
2012
5 Year Trend
+5.6%
Revenue
$442.1 million
NASDAQ

Similar Jobs

More Jobs at Progress Software

More Information Technology Jobs

Find similar Principal Software Engineering - Rust Systems Engineer jobs: