Role Overview
We are looking for an experienced Rust Developer to join our engineering team and work on a new streaming tool project. You will be responsible for designing and building high-performance, reliable, and scalable components for our streaming platform. This role is ideal for an engineer who enjoys systems programming, performance optimization, concurrency, and building production-grade software.
Responsibilities
- Design, develop, and maintain core components of our streaming tool using Rust.
- Build high-performance, low-latency, and reliable streaming services.
- Work with concurrent and asynchronous systems.
- Design efficient data processing and streaming pipelines.
- Optimize application performance, memory usage, and resource utilization.
- Develop clean, maintainable, well-tested production code.
- Troubleshoot complex performance, reliability, and scalability issues.
- Collaborate with product, backend, DevOps, and other engineering teams.
- Participate in architecture discussions, code reviews, and technical decision-making.
- Contribute to automated testing, monitoring, and deployment practices.
Requirements
- 1+ years of professional software development experience, with strong experience in Rust.
- Strong proficiency in Rust and its ecosystem.
- Good understanding of Rust ownership, borrowing, lifetimes, traits, generics, and error handling.
- Experience with async Rust and frameworks.
- Strong understanding of concurrency, multithreading, and distributed systems concepts.
- Experience building backend services, APIs, or high-performance systems.
- Strong knowledge of data structures, algorithms, and software design principles.
- Experience with Linux and Git.
- Good debugging and problem-solving skills.
- Ability to write clean, maintainable, and well-tested code.
Skills
- Rust
- Async Rust
- Linux
- Git
- Distributed Systems
Nice to Have
- Experience with real-time or media streaming systems.
- Knowledge of protocols such as WebSocket, WebRTC, RTMP, HLS, or MPEG-DASH.
- Experience with Kafka, Redis, or other messaging/stream-processing technologies.
- Experience with Docker and Kubernetes.
- Familiarity with cloud platforms such as AWS, Azure, or GCP.
- Experience with observability, performance profiling, and distributed tracing.
- Experience working on high-throughput or low-latency systems.