Staff Software Engineer - Distributed System Development
Leads architecture and development of Alluxio’s large-scale distributed data services, focusing on scalability, durability, high availability, concurrency, and caching. Requires a bachelor's degree or equivalent experience, strong programming skills in Java, C/C++, or Go, and distributed-systems expertise.
About the job
Responsibilities
- Lead and evolve the Alluxio distributed data services project.
- Solve challenging problems involving memory and data-structure efficiency, thread concurrency, locking optimizations, and caching policies and implementation.
- Develop innovative solutions for scaling systems to thousands of nodes while providing data durability and high availability.
- Create solutions and lead team members from concept through completion.
- Contribute to product architecture and implement technical direction in collaboration with product management.
Requirements
- At least 1–2 years of experience in a technical leadership role.
- Bachelor's degree in Computer Science, a similar technical field, or equivalent practical experience.
- Software development experience in one or more general-purpose programming languages, including Java, C/C++, or Go.
- Experience in at least two of the following areas:
- Distributed and parallel systems
- Distributed storage systems
- Architecting large-scale software systems
- Security software development
- Excellent analytical and problem-solving skills.
- Working proficiency and communication skills in verbal and written English.
Nice-to-haves
- Master's or PhD degree, further education, or equivalent practical experience in engineering, computer science, or another related technical field.
- Proficiency in one or more general-purpose programming languages, including Java, C/C++, or Go.
- Interest and ability to learn additional programming languages as needed.
- Experience contributing to or maintaining an open-source project.
- Ability and desire to work in a fast-paced, collaborative, iterative programming environment.
- Contributions to Alluxio.
Skills
Java, C, C++, Go, Distributed Systems, Parallel Systems, Distributed Storage, Data Structures, Concurrency, Caching, Open Source
Similar jobs
Backend Engineering jobsLeads architecture and technical strategy for Vanta’s government compliance product, building scalable backend systems and new workflows in a 0-to-1 environment. Requires 10+ years of backend experience, strong systems thinking, cross-functional influence, and a track record of mentoring engineers.
Senior backend engineer designing scalable services and APIs that connect Phantom Cash to blockchain networks. The role requires Node.js/NestJS, REST API, event-driven, and distributed-systems expertise, with blockchain or fintech experience preferred.
Founding senior engineer responsible for creating and operating Payabli’s Payments Core infrastructure, including ledgers, exactly-once money movement, multi-rail orchestration, settlement, and reconciliation. Requires 12+ years of production payments or financial-systems experience at major scale.
Build and operate highly performant Core API services for real-time fraud detection, owning reliability, observability, scaling, and production operations. The role requires 5+ years of backend experience with Go or Node.js and strong SRE practices.
Build and operate the backend runtime platform that schedules, executes, and persists security and compliance tests at scale. The role requires strong production systems experience, ownership of complex projects, debugging expertise, and effective technical collaboration and mentorship.