Software Engineer – Storage
bytedance
Job Summary
The ByteDance ByteStore team develops, operates, and maintains a self-developed distributed storage system, ByteStore, serving as the underlying global storage platform for various storage and computing products. We aim to build a large-scale, high-reliable, high-available, high-performance, and low-cost distributed storage infrastructure. We are seeking talented engineers to enhance data durability, reduce storage costs, optimize system performance, and conduct system modules, contributing to the continuous improvement of ByteStore.
Must Have
- Bachelors or above degree in Computer Science or equivalent.
- Strong coding skills in C++, strong code quality awareness.
- Deep understanding of classical distributed storage systems in industry, e.g. HDFS.
- High levels of trouble-shooting and problem-solving capabilities.
- Excellent teamwork, communication skills, and customer service orientation.
Good to Have
- Experience with storage tech stacks, including NVMe, SPDK/DPDK, and metadata related.
- Proficiency in unit/functional/system testing, and rigorous implementation.
- Capability of trouble-shooting and performance tuning, tuning on Linux is a plus.
- Hands-on experience with large-scale distributed storage systems.
- Familiarity with distributed systems, and development or maintenance experience in distributed storage systems is a plus, HDFS, Ceph, GlusterFS, etc.
Perks & Benefits
- Day one access to medical, dental, and vision insurance
- 401(k) savings plan with company match
- Paid parental leave
- Short-term and long-term disability coverage
- Life insurance
- Wellbeing benefits
- 10 paid holidays per year
- 10 paid sick days per year
- 17 days of Paid Personal Time (prorated upon hire with increasing accruals by tenure)
Job Description
Responsibilities
About the Team The ByteDance ByteStore team is responsible for the research and development, operation and maintenance of ByteStore, which is a self-developed distributed storage system. Serving as the underlying global storage platform, we support multiple storage and computing products, including Object Storage, Block Storage, Relational Databases, NoSQL Databases, Message Queues, etc. We are committed to building a large-scale, high-reliable, high-available, high-performance, and low-cost distributed storage infrastructure, in order to provide superior data store and access capabilities for applications. About the Role We are looking for talented and good-thinking engineers at all levels to join the ByteStore team. In this role, your work will span data durability enhancement, storage cost reduction, system performance profiling and optimization, and the conduction of system modules. We would prefer the candidates embracing a culture of openness, self-driven and highly collaboration in the following areas: 1. Design, develop, profiling software implementation. 2. Participate in the deployment and release process. 3. Do research on cutting-edge technologies for storage areas. 4. Partner with business teams, improve the stability, functionality, and performance of ByteStore continuously. 5. Participate in online operational changes, on-call duties, and issue investigation. 6. Independently troubleshoot complex issues, demonstrate cross-team coordination.
Qualifications
Minimum Qualifications - Bachelors or above degree in Computer Science or equivalent. - Strong coding skills in C++, strong code quality awareness. - Deep understanding of classical distributed storage systems in industry, e.g. HDFS. - High levels of trouble-shooting and problem-solving capabilities. - Excellent teamwork, communication skills, and customer service orientation. Preferred Qualifications - Experience with storage tech stacks, including NVMe, SPDK/DPDK, and metadata related. - Proficiency in unit/functional/system testing, and rigorous implementation. - Capability of trouble-shooting and performance tuning, tuning on Linux is a plus. - Hands-on experience with large-scale distributed storage systems. - Familiarity with distributed systems, and development or maintenance experience in distributed storage systems is a plus, HDFS, Ceph, GlusterFS, etc.