Deskripsi Pekerjaan
The Cloud Infrastructure team, based in Singapore, supports many of our star products and core business lines, serving hundreds of millions of users worldwide. We are seeking a talented Backend Software Engineer specializing in Distributed Block Storage to join our Cloud Infrastructure division. In this role, you will be at the forefront of designing, developing, and maintaining high-performance, scalable storage systems that power the core business logic of our applications. You will tackle complex engineering challenges related to data persistence, fault tolerance, and high availability. If you are passionate about building robust systems that can handle massive scale and are looking for a challenging environment to grow your career, we want to hear from you.
As a key member of our team, you will work in a fast-paced environment that values innovation, technical excellence, and ownership. You will be responsible for building the infrastructure that ensures data integrity and availability for our services globally.
Tanggung Jawab
- Design, implement, and maintain distributed block storage systems with a focus on high throughput and low latency.
- Ensure system reliability and fault tolerance through robust testing, monitoring, and automated recovery mechanisms.
- Optimize storage protocols and data layouts for efficient resource utilization and performance scaling.
- Collaborate with cross-functional teams (including Product, Frontend, and ML) to define and deliver storage solutions that meet business requirements.
- Debug complex system issues, analyze performance bottlenecks, and implement optimizations in C++ or Go.
- Participate in the full software development lifecycle, from code design and review to deployment and maintenance.
- Contribute to architectural decisions that align with long-term scalability and operational efficiency goals.
Kualifikasi
- Bachelor’s or Master’s degree in Computer Science, Engineering, or a related technical field.
- 3+ years of professional experience in backend software development, with a focus on distributed systems or storage technologies.
- Strong proficiency in C++ or Go, with a deep understanding of memory management and concurrency models.
- Experience working with Linux environments, kernel-level interactions, and storage subsystems (e.g., NVMe, RAID).
- Deep knowledge of data structures, algorithms, and system design principles.
- Familiarity with containerization technologies (Docker, Kubernetes) and cloud-native architectures.
- Excellent problem-solving skills and the ability to work in a fast-paced, dynamic environment.