Passer au contenu
Introduction

A career in IBM Software means you’ll be part of a team that transforms our customer’s challenges into solutions. 

 Seeking new possibilities and always staying curious, we are a team dedicated to creating the world’s leading AI-powered, cloud-native software solutions for our customers. Our renowned legacy creates endless global opportunities for our IBMers, so the door is always open for those who want to grow their career.

IBM’s product and technology landscape includes Research, Software, and Infrastructure. Entering this domain positions you at the heart of IBM, where growth and innovation thrive.

Votre rôle et vos responsabilités

We are seeking an experienced Rust Developer to join the ContextForge MCP Gateway team to lead performance-critical component rewrites.

ContextForge is a production-grade gateway, proxy, and registry for Model Context Protocol (MCP) servers and A2A Agents. It federates MCP and REST services, providing unified discovery, auth, rate-limiting, observability, virtual servers, multi-transport protocols, plugins and an Admin UI: https://github.com/IBM/mcp-context-forge

We are embarking on a strategic initiative to rewrite performance-critical components in Rust to achieve 10-50x performance gains. As a Rust Developer, you will rewrite multiple components such as the stdio wrapper (mcpgateway.wrapper) and protocol translator (mcpgateway.translate and mcpgateway.proxy) in Rust, as well as multiple plugins and MCP Servers, achieving sub-millisecond JSON-RPC parsing and 10-50x throughput improvements. You will establish Rust patterns, CI/CD workflows, and lay the foundation for future high-performance microservices.

Your Role And ResponsibilitiesPerformance Optimization

•             Rewrite mcpgateway.wrapper: Tokio async, hyper HTTP client, gRPC/tonic, concurrent request multiplexing

•             Rewrite mcpgateway.translate and mcpgateway.proxy: Axum/Actix-web, stdio ↔ SSE/HTTP bridging, zero-copy streaming

•             Implement core performance components in Rust bindings for Python (e.g. PyO3 or similar)

•             Implement multiple MCP Servers in Rust

•             Target performance goals: Sub-millisecond JSON-RPC parsing, 10-50x throughput, lower memory footprint

•             Benchmark and profile: Compare Python vs Rust performance, identify bottlenecks, optimize hot paths

•             Optimize for desktop clients: Low memory usage, fast startup time, efficient resource utilization

Cross-Platform Development

•             Build cross-platform binaries: Windows, macOS, Linux distributions

•             Implement subprocess management: stdin/stdout handling, signal handling, process lifecycle

•             Handle platform-specific differences: file paths, networking, system calls

•             Create distribution packages: installers, package managers (Homebrew, apt, chocolatey)

•             Ensure compatibility with existing Python gateway via gRPC/REST API boundaries

System Design & Architecture

•             Design Rust-Python interop boundaries: gRPC services, REST APIs, FFI if needed

•             Implement async patterns with Tokio: concurrent execution, task spawning, channels

•             Build HTTP clients and servers: hyper, Axum/Actix-web, request routing

•             Design zero-copy streaming for high throughput and low latency

•             Create clean abstractions for protocol handling and transport layers

Rust Infrastructure & Best Practices

•             Establish Rust CI/CD: Cargo workflows, cross-compilation, automated testing

•             Implement security practices: cargo-audit, dependency scanning, SBOM generation

•             Create Rust coding standards: error handling, async patterns, type design

•             Set up performance benchmarking: criterion.rs, flamegraphs, profiling

•             Write comprehensive tests: unit tests, integration tests, property-based testing with proptest

Collaboration & Integration

•             Work closely with Python team to define API boundaries

•             Collaborate with DevOps engineer on build and deployment pipelines

•             Partner with Engineering Manager on architecture decisions

•             Mentor team members interested in learning Rust

•             Document Rust patterns and best practices for the team

Formation requise
Licence
Formation préférée
Master
Expertise professionnelle et technique requise
Rust Development (3-5 years)

•             Several years of production Rust experience with at least few years in Tokio async

•             Deep understanding of Rust ownership, borrowing, lifetimes, and type system

•             Expert-level async Rust: Tokio runtime, async/await, futures, streams, channels

•             Experience with Rust web frameworks: Axum, Actix-web, or similar

•             Strong knowledge of Rust HTTP clients: hyper, reqwest, or similar

Performance Engineering

•             Experience with performance optimization: profiling, benchmarking, bottleneck analysis

•             Knowledge of zero-copy techniques and efficient memory management

•             Understanding of concurrent programming and parallelism in Rust

•             Experience with performance tooling: criterion.rs, flamegraph, perf, valgrind

•             Ability to analyze and optimize CPU, memory, and I/O performance

Systems Programming

•             Strong understanding of systems programming: processes, threads, I/O, networking

•             Experience with subprocess management: stdin/stdout/stderr handling, signal handling

•             Knowledge of cross-platform development challenges and solutions

•             Understanding of operating system internals: scheduling, memory management, I/O

•             Experience with platform-specific APIs: Windows API, POSIX, system calls

Protocol & Network Programming

•             Experience implementing protocols: JSON-RPC, gRPC, HTTP/2, WebSocket

•             Deep understanding of networking: TCP/IP, HTTP, TLS, socket programming

•             Knowledge of serialization: serde, JSON, Protocol Buffers, message packing

•             Experience with streaming and event-driven architectures

•             Understanding of transport protocols: SSE, WebSocket, gRPC streaming

Development Practices

•             Strong experience with Cargo: workspaces, features, dependency management

•             Knowledge of Rust testing: unit tests, integration tests, doc tests, proptest

•             Experience with CI/CD for Rust: GitHub Actions, cross-compilation, release automation

•             Understanding of Rust security: cargo-audit, dependency auditing, secure coding

•             Proficiency with version control and code review practices

Expertise professionnelle et technique préférée
Advanced Rust Skills

•             Experience with unsafe Rust when necessary (FFI, performance optimizations)

•             Knowledge of Rust macros: declarative and procedural macros

•             Understanding of Rust compiler internals and optimization flags

•             Experience with embedded Rust or no_std environments

•             Contributions to Rust open-source projects or crates

Python Interoperability

•             Experience with Rust-Python interop: PyO3, Python FFI, or gRPC

•             Understanding of Python C extension API

•             Knowledge of performance differences between Python and Rust

•             Experience optimizing Python applications with Rust extensions

Distributed Systems

•             Experience with gRPC and tonic in production

•             Knowledge of service mesh architectures

•             Understanding of distributed tracing with OpenTelemetry

•             Experience with message brokers: Redis, Kafka, NATS

•             Knowledge of consensus algorithms and distributed coordination

Security & Performance

•             Experience with TLS/SSL in Rust: rustls, native-tls

•             Knowledge of cryptographic operations in Rust

•             Understanding of side-channel attacks and constant-time operations

•             Experience with memory safety audits and fuzzing (cargo-fuzz, afl.rs)

•             Knowledge of supply chain security and dependency auditing

À propos de la Business Unit

IBM Software insuffle de l'intelligence dans les opérations métier de base, de l'apprentissage automatique à l'IA générative, afin d'aider les organisations à être plus réactives, plus productives et plus résilientes. IBM Software aide ses clients à mettre l'IA en action dès maintenant pour créer une valeur réelle avec confiance, rapidité et assurance dans les domaines du travail numérique, de l'automatisation informatique, de la modernisation des applications, de la sécurité et du développement durable. La capacité d'utiliser toutes les données est essentielle à cet égard, car l'IA ne vaut que ce que valent les données qui l'alimentent. Dans la plupart des organisations, les données sont réparties entre plusieurs clouds, sur site, dans des centres de données privés et à la périphérie. La plateforme d'IA et de données d'IBM met à l'échelle et accélère l'impact de l'IA avec des données fiables, et fournit des capacités de pointe pour entraîner, régler et déployer l'IA dans l'ensemble de l'entreprise. La plateforme cloud hybride d'IBM est l'une des approches les plus complètes et les plus cohérentes en matière de développement, de sécurité et d'opérations dans les environnements hybrides : une base flexible pour exploiter les données, où qu'elles se trouvent, afin d'étendre l'IA au coeur de l'entreprise.

VOTRE VIE CHEZ IBM

In a world where technology never stands still, we understand that, dedication to our clients success, innovation that matters, and trust and personal responsibility in all our relationships, lives in what we do as IBMers as we strive to be the catalyst that makes the world work better.

Being an IBMer means you’ll be able to learn and develop yourself and your career, you’ll be encouraged to be courageous and experiment everyday, all whilst having continuous trust and support in an environment where everyone can thrive whatever their personal or professional background.

 

Our IBMers are growth minded, always staying curious, open to feedback and learning new information and skills to constantly transform themselves and our company. They are trusted to provide on-going feedback to help other IBMers grow, as well as collaborate with colleagues keeping in mind a team focused approach to include different perspectives to drive exceptional outcomes for our customers. The courage our IBMers have to make critical decisions everyday is essential to IBM becoming the catalyst for progress, always embracing challenges with resources they have to hand, a can-do attitude and always striving for an outcome focused approach within everything that they do.

 

Are you ready to be an IBMer?

À propos d'IBM

IBM’s greatest invention is the IBMer. We believe that through the application of intelligence, reason and science, we can improve business, society and the human condition, bringing the power of an open hybrid cloud and AI strategy to life for our clients and partners around the world.

 

Restlessly reinventing since 1911, we are not only one of the largest corporate organizations in the world, we’re also one of the biggest technology and consulting employers, with many of the Fortune 500 companies relying on the IBM Cloud to run their business. 

 

At IBM, we pride ourselves on being an early adopter of artificial intelligence, quantum computing and blockchain. Now it’s time for you to join us on our journey to being a responsible technology innovator and a force for good in the world.

IBM is proud to be an equal-opportunity employer. All qualified applicants will receive consideration for employment without regard to race, color, religion, sex, gender, gender identity or expression, sexual orientation, national origin, genetics, pregnancy, disability, neurodivergence, age, or other characteristics protected by the applicable law. IBM is also committed to compliance with all fair employment practices regarding citizenship and immigration status.

Autres détails pertinents sur le poste

For additional information about location requirements, please discuss with the recruiter following submission of your application.