Role overview
The Senior Software Engineer works on a storage platform that underpins an object storage service and a computer backup offering, focusing on reliably storing customer data. The position emphasizes improving durability, increasing throughput, and driving architectural changes to meet long-term service needs at scale.
Responsibilities
- Develop and enhance the storage platform supporting object storage and backup products running across large fleets.
- Improve durability and reliability of stored data through software and architectural changes.
- Drive architectural improvements to support the long-term throughput and capacity requirements of the service.
- Participate across the full software development lifecycle, from design and implementation through testing and rollout.
- Analyze ambiguous performance or reliability problems and propose thoughtful, well-reasoned solutions.
- Collaborate with infrastructure and platform peers on systems running across thousands of servers.
Requirements
- 7+ years of object-oriented programming experience in an enterprise environment using languages such as Java, Rust, C++, or C#.
- Experience building large-scale software systems running on thousands of servers.
- Comfort with all phases of the software development lifecycle, including design, implementation, testing, and rollout.
- Demonstrated curiosity and a tendency to seek to understand problems before proposing solutions.
- Strong analytical thinking applied to ambiguous engineering challenges.
Nice to have
- Proficiency in Java or Rust.
- Experience building or interpreting models, dashboards, or reports.
- Familiarity with hard drive performance characteristics.
- Understanding of Linux internals and file systems.
- Location: LATAM region.