美团分布式块存储/文件系统-C++资深工程师/技术专家
社招全职3年以上核心本地商业-基础研发平台地点:北京 | 上海状态:招聘
任职要求
1. 本科及以上学历,计算机或相关专业,三年以上工作经验 2. 熟悉linux下C/C++后台服务开发 3. 熟悉TCP/IP协议及linux下后台网络服务开发 4. 参与过大型分布式系统的架构设计,熟悉高并发、高可用、可扩展的技术方案 具备以下条件优先 1. 了解内核及文件系统、SPDK、io_uring等底层IO技术优先 2. 有Ceph、HDFS/GFS、GlusterFS等分布式存储系统研发经验优先 3. 了解Raft、Paxos等共识协议优先 4. 了解Redis、LevelDB、InnoDB等存储引擎优先
工作职责
1. 负责分布式块存储/文件系统研发,在存储计算分离的架构体系下,构建高可用、高性能、可扩展的分布式块存储/文件系统,满足业务多样化的存储需求 2. 参与分布式块存储/文件统领域前沿技术调研、选型,并负责具体的模块设计和研发落地 3. 以产品驱动、需求驱动,服务好业务服务和PaaS服务,帮助用户实现数据共享和存储计算分离架构
包括英文材料
学历+
Linux+
https://ryanstutorials.net/linuxtutorial/
Ok, so you want to learn how to use the Bash command line interface (terminal) on Unix/Linux.
https://ubuntu.com/tutorials/command-line-for-beginners
The Linux command line is a text interface to your computer.
https://www.youtube.com/watch?v=6WatcfENsOU
In this Linux crash course, you will learn the fundamental skills and tools you need to become a proficient Linux system administrator.
https://www.youtube.com/watch?v=v392lEyM29A
Never fear the command line again, make it fear you.
https://www.youtube.com/watch?v=ZtqBQ68cfJc
C+
https://www.freecodecamp.org/chinese/news/the-c-beginners-handbook/
本手册遵循二八定律。你将在 20% 的时间内学习 80% 的 C 编程语言。
https://www.youtube.com/watch?v=87SH2Cn0s9A
https://www.youtube.com/watch?v=KJgsSFOSQv0
This course will give you a full introduction into all of the core concepts in the C programming language.
https://www.youtube.com/watch?v=PaPN51Mm5qQ
In this complete C programming course, Dr. Charles Severance (aka Dr. Chuck) will help you understand computer architecture and low-level programming with the help of the classic C Programming language book written by Brian Kernighan and Dennis Ritchie.
C+++
https://www.learncpp.com/
LearnCpp.com is a free website devoted to teaching you how to program in modern C++.
https://www.youtube.com/watch?v=ZzaPdXTrSb8
TCP/IP+
[英文] What is TCP/IP?
https://www.techtarget.com/searchnetworking/definition/TCP-IP
TCP/IP stands for Transmission Control Protocol/Internet Protocol and is a suite of communication protocols used to interconnect network devices on the internet.
分布式系统+
https://www.distributedsystemscourse.com/
The home page of a free online class in distributed systems.
https://www.youtube.com/watch?v=7VbL89mKK3M&list=PLOE1GTZ5ouRPbpTnrZ3Wqjamfwn_Q5Y9A
系统设计+
https://roadmap.sh/system-design
Everything you need to know about designing large scale systems.
https://www.youtube.com/watch?v=F2FmTdLtb_4
This complete system design tutorial covers scalability, reliability, data handling, and high-level architecture with clear explanations, real-world examples, and practical strategies.
高并发+
https://www.baeldung.com/concurrency-principles-patterns
In this tutorial, we’ll discuss some of the design principles and patterns that have been established over time to build highly concurrent applications.
https://www.baeldung.com/java-concurrency
Handling concurrency in an application can be a tricky process with many potential pitfalls. A solid grasp of the fundamentals will go a long way to help minimize these issues.
https://www.oreilly.com/library/view/concurrency-in-go/9781491941294/
You’ll understand how Go chooses to model concurrency, what issues arise from this model, and how you can compose primitives within this model to solve problems.
https://www.oreilly.com/library/view/modern-concurrency-in/9781098165406/
With this book, you'll explore the transformative world of Java 21's key feature: virtual threads.
https://www.youtube.com/watch?v=qyM8Pi1KiiM
https://www.youtube.com/watch?v=wEsPL50Uiyo
高可用+
https://redis.io/blog/high-availability-architecture/
A high available architecture is when there are a number of different components, modules, or services that work together to maintain optimal performance, irrespective of peak-time loads.
https://www.ibm.com/think/topics/high-availability
High availability (HA) is a term that refers to a system’s ability to be accessible and reliable close to 100% of the time.
内核+
https://www.youtube.com/watch?v=C43VxGZ_ugU
I rummage around the Linux kernel source and try to understand what makes computers do what they do.
https://www.youtube.com/watch?v=HNIg3TXfdX8&list=PLrGN1Qi7t67V-9uXzj4VSQCffntfvn42v
Learn how to develop your very own kernel from scratch in this programming series!
https://www.youtube.com/watch?v=JDfo2Lc7iLU
Denshi goes over a simple explanation of what computer kernels are and how they work, alonside what makes the Linux kernel any special.
Ceph+
https://docs.ceph.com/en/squid/start/beginners-guide/
The purpose of A Beginner’s Guide to Ceph is to make Ceph comprehensible.
https://www.youtube.com/watch?v=oEKJnHAfSiw
HDFS+
https://hadoop.apache.org/docs/r1.2.1/hdfs_design.html
The Hadoop Distributed File System (HDFS) is a distributed file system designed to run on commodity hardware.
https://www.ibm.com/cn-zh/think/topics/hdfs
Hadoop 分布式文件系统 (HDFS) 是一种管理大型数据集的文件系统,可在商用硬件上运行。
Raft+
https://raft.github.io/
Raft is a consensus algorithm that is designed to be easy to understand.
https://thesecretlivesofdata.com/raft/
Understandable Distributed Consensus
https://www.youtube.com/watch?v=ZyqAbQkpeUo
Sail into the world of distributed systems with our in-depth, Raft consensus algorithm tutorial.
Paxos+
https://lamport.azurewebsites.net/pubs/paxos-simple.pdf
The Paxos algorithm for implementing a fault-tolerant distributed system has been regarded as difficult to understand, perhaps because the original presentation was Greek to many readers.
https://paxos.systems/
Paxos algorithms are a family of consensus algorithms (or protocols) that are used in distributed systems to achieve consensus in the presence of crash failures.
https://www.scylladb.com/glossary/paxos-consensus-algorithm/
Paxos is a family of protocols for solving the problem of consensus in distributed networks.
Redis+
[英文] Developer Hub
https://redis.io/dev/
Get all the tutorials, learning paths, and more you need to start building—fast.
https://www.runoob.com/redis/redis-tutorial.html
REmote DIctionary Server(Redis) 是一个由 Salvatore Sanfilippo 写的 key-value 存储系统,是跨平台的非关系型数据库。
https://www.youtube.com/watch?v=jgpVdJB2sKQ
In this video I will be covering Redis in depth from how to install it, what commands you can use, all the way to how to use it in a real world project.
相关职位
社招5年以上技术团队开发
1、作为核心成员参与分布式块存储/文件系统研发,推动存储计算分离架构在公司的落地; 2、解决创新研发过程中的关键问题和技术难点; 3、根据项目任务计划按时完成软件编码和单元测试、文档编写等工作; 4、与项目经理、其他团队沟通合作,保证产品研发工作的质量和进度。
更新于 2025-04-22
社招D7194
1、负责并引领快手EB级分布式存储系统的整体/核心模块的研发工作,包含底座、块存储、并行文件存储、HDFS和对象存储系统; 2、重点关注可用性、可靠性、扩展性、成本、性能和可运维性等指标,支持好公司内部各项业务的存储需求; 3、负责核心需求的抽象、技术方案的设计和实现,推进各项功能的高质量落地; 4、负责并管理线上稳定性问题的主动发现、分析定位和解决; 5、作为核心架构师/管理者,激发项目/团队,冲击目标。
更新于 2025-03-31
社招8年以上技术团队开发
1、独立负责分布式块存储/文件系统研发,产品做到业界领先,推动存储计算分离架构在公司的落地; 2、解决创新研发过程中的关键问题和技术难点; 3、与公司内其他团队沟通合作,确立产品的发展方向和总体规划,高质量、高效率满足业务需。
更新于 2025-04-22