百度
实习北京市/上海市/深圳市 · 实习 · 本科
长期有效
【岗位职责】
-设计、开发和优化公有云存储系统类产品,包括但不限于对象/块/文件/表格存储服务
-开发和优化大规模高性能服务软件
-为百度开放云行业客户提供分布式存储技术和产品解决方案
-联动大数据、云计算、边缘云、视频云等多团队打造整体高性能解决方案
【任职要求】
-本科及以上学历在读生,计算机相关专业,可实习3个月以上
-熟练掌握至少一种下列编程语言:C/C++、Java、python、go等
-熟悉常用的数据结构、算法设计,熟悉存储设备、文件系统、Linux操作系统原理
-对分布式存储系统有浓厚的兴趣,并且善于学习、乐于去挑战在云计算环境下超大规模云存储系统面临的各种挑战
-富有激情和创造力,学习能力强,良好的团队合作能力
-具有以下条件者优先
-有开放云产品研发或使用经验,包括Amazon AWS、Azure、GCE、aliyun
-熟悉分布式系统理论,有大规模分布式系统设计架构经验(包括Hadoop/HDFS/Openstack/Ceph/mongodb/dynamodb/aws-s3/GFS/BigTable等)
-熟悉数据库技术,有数据库内核或者nosql数据库的开发经验
-熟悉操作系统内核,特别是存储设备、文件系统等部分
上传简历,AI 会对照这份 JD 指出你的差距和需要补强的地方
基于 后端开发 岗位的常见面试问题整理
请解释 RESTful API 的设计原则,并举一个你实际设计过的例子
1. 资源导向:URL 表示资源而非操作 2. HTTP 方法语义:GET/POST/PUT/DELETE 对应查增改删 3. 无状态:每个请求包含全部所需信息 4. 统一接口:一致的响应格式(如 JSON) 5. 举例:用户模块 /users/{id},GET 查/POST 创/PUT 改/DELETE 删,返回统一 {code, data, message}
MySQL 索引的底层数据结构是什么?为什么用 B+ 树而不是哈希表或红黑树
1. B+ 树:非叶子节点只存 key 不存 data,单次 IO 读更多 key 2. 叶子节点形成有序链表,支持范围查询(哈希表不支持范围) 3. 高度低(3-4 层可存千万级数据),减少磁盘 IO 4. 对比红黑树:B+ 树是多叉的,高度更低,磁盘 IO 更少
你参与过的最复杂的后端项目是什么,你承担了什么角色
1. 项目背景:一句话说清业务场景 2. 技术栈:语言/框架/数据库/中间件 3. 个人职责:你做的,不是团队做的——用「我设计了」「我优化了」 4. 难点:遇到了什么具体问题,怎么解决的 5. 数据佐证:QPS 从多少提到多少 / 延迟降了多少
什么是微服务架构,和单体架构相比各有什么优劣
1. 单体:所有功能在一个进程,部署简单,初期开发快;缺点是耦合高、扩展难 2. 微服务:按业务拆分独立服务,独立部署/扩展/技术栈 3. 优点:故障隔离、团队自治、技术栈灵活 4. 缺点:网络开销、分布式事务、运维复杂度 5. 判断标准:团队<10 人或业务不复杂时,单体是更好的选择
如何设计一个高并发的秒杀系统
1. 前端限流:按钮置灰、验证码 2. 网关层:Nginx 限流 + 负载均衡 3. 业务层:Redis 预减库存(原子操作),消息队列异步下单 4. 数据库:乐观锁扣库存,读写分离 5. 降级方案:流量过大时返回「已售罄」而非崩溃
更多面试题库功能即将上线
信息来源:企业官方招聘页。投递前请以官网信息为准。