About the Role
About Us
We are a globally focused organization committed to building secure, scalable, resilient, and high-performance software products and digital platforms across diverse markets.
Our engineering teams collaborate across Software Engineering, Product, Platform, Cloud, Infrastructure, Security, Data, DevOps, and Operations to develop reliable systems that support critical business processes and evolving customer requirements.
The Role
We are seeking an experienced Senior Rust Engineer to design, develop, optimize, test, and maintain high-performance software systems using Rust.
The ideal candidate will combine strong Rust expertise with deep knowledge of systems programming, concurrency, distributed systems, networking, performance engineering, APIs, cloud infrastructure, and secure software development. The role will contribute to technically demanding applications and platforms where reliability, memory safety, efficiency, and predictable performance are critical.
Key Responsibilities
- Design, develop, test, deploy, and maintain production-grade software using Rust.
- Build secure, reliable, maintainable, and high-performance systems.
- Translate complex business and technical requirements into robust software solutions.
- Participate in software architecture, system design, and technical decision-making.
- Develop performance-sensitive applications and services using Rust.
- Apply Rust ownership, borrowing, lifetimes, traits, generics, and type-system capabilities effectively.
- Design software using idiomatic Rust and established engineering best practices.
- Develop concurrent and parallel applications using appropriate Rust concurrency models.
- Implement asynchronous applications using async Rust, futures, tasks, and appropriate runtimes.
- Design and develop scalable backend services, APIs, and distributed components.
- Build RESTful APIs, gRPC services, and other service interfaces where appropriate.
- Develop event-driven services and asynchronous processing systems.
- Integrate applications with message brokers, queues, streaming platforms, and external services.
- Develop systems that interact with databases, caches, storage platforms, and distributed data systems.
- Design efficient data structures, algorithms, and processing pipelines.
- Optimize CPU utilization, memory consumption, latency, throughput, and I/O performance.
- Conduct profiling, benchmarking, load testing, and performance analysis.
- Identify bottlenecks and implement targeted performance improvements.
- Develop efficient memory-management and resource-management strategies.
- Ensure applications handle errors, failures, timeouts, retries, and resource exhaustion appropriately.
- Design systems with fault tolerance, graceful degradation, and recovery mechanisms.
- Develop secure authentication and authorization mechanisms.
- Implement appropriate encryption, secrets management, input validation, and access controls.
- Apply secure coding principles and protect applications against common security vulnerabilities.
- Collaborate with cybersecurity teams to identify and remediate software-security risks.
- Develop unit, integration, functional, system, and end-to-end tests.
- Establish effective testing strategies for complex and performance-sensitive systems.
- Improve automated test coverage and software quality.
- Conduct code reviews and provide detailed technical feedback.
- Maintain high standards for code quality, readability, maintainability, and reliability.
- Investigate production incidents, software defects, crashes, memory issues, and performance problems.
- Perform root-cause analysis and implement permanent corrective actions.
- Analyze logs, traces, metrics, stack traces, core dumps, and diagnostic information.
- Develop observability capabilities covering metrics, structured logging, tracing, health checks.
Requirements
Rust programming
Strong expertise in Rust for developing high-performance software.
Systems programming
Deep knowledge of systems programming concepts and practices.
Concurrency
Experience with concurrent and parallel programming models in Rust.
APIs and services
Ability to design and develop RESTful APIs and gRPC services.
Performance engineering
Skills in optimizing software for performance and resource management.
Nice to Have
Familiarity with cloud platforms and infrastructure.
Knowledge of secure coding principles and practices.
Benefits
Fully remote work
Enjoy the flexibility of working from anywhere.
Competitive salary
Receive a salary that reflects your skills and experience.