SRE 学院
站点可靠性工程师(SRE)处于软件工程和系统工程的交叉点。虽然有无数种可能的基础设施和软件组件组合方式来实现目标,但专注于基础技能可以让SRE工程师能够处理复杂的系统和软件,无论这些系统是专有的、第三方的、开放系统,还是在云/本地基础设施上运行。特别重要的是,要深入了解这些系统和基础设施领域如何相互关联和交互。软件和系统工程技能的结合很少见,通常需要长期接触各种基础设施、系统和软件才能积累。
SRE工程师引入工程实践来保持站点的运行。每个分布式系统都是多个组件的集合。SRE工程师验证业务需求,将其转化为构成分布式系统的每个组件的SLA,监控和衡量SLA的遵守情况,重新架构或扩展以缓解或避免SLA违约,将这些经验作为反馈添加到新系统或项目中,从而减少运营工作量。因此,SRE工程师从系统的初始设计阶段就开始发挥重要作用。
2019年初,我们开始访问印度各地的校园,招募最优秀的人才,以确保LinkedIn及其复杂技术栈中的所有服务始终可用。在LinkedIn,这一关键职能由站点工程团队和站点可靠性工程师(SRE)负责,他们是专门从事可靠性工作的软件工程师。
随着我们继续这个旅程,我们开始收到来自这些校园的许多问题,询问站点可靠性工程角色到底包含什么内容?以及如何学习相关技能和学科以成为一名成功的站点可靠性工程师?几个月后,一些校园学生作为实习生或全职工程师加入了LinkedIn,成为站点工程团队的一部分;我们还有一些没有传统SRE背景的横向招聘人员加入了我们的组织。于是,我们中的一些人聚在一起,开始思考如何让新毕业的工程师加入站点工程团队。
目前很少有资源指导初学者如何获得SRE所需的基本技能。由于缺乏这些资源,我们感到个人很难获得行业中的开放职位。我们创建了SRE学院,作为任何想要在SRE领域发展事业的人的起点。
在这个课程中,我们专注于建立强大的基础技能。课程的结构旨在提供更多真实生活的例子,以及学习每个主题如何在SRE的日常工作职责中发挥重要作用。目前,我们在SRE学院中涵盖以下主题:
-
101级
- 基础系列
- Python和Web
- 数据
- 系统设计
- 度量和监控
- 安全
-
102级
我们相信持续学习将有助于获得更深入的知识和能力,以扩展你的技能集。每个模块都添加了参考资料,可以作为进一步学习的指南。我们希望通过学习这些模块,我们能够建立站点可靠性工程师所需的基本技能。
在LinkedIn,我们正在使用这个课程为非传统招聘的员工和新毕业的大学生入职SRE角色。我们经历了多轮成功的新员工入职体验,课程帮助他们在很短的时间内变得富有成效。这激励我们开源内容,以帮助其他组织为新工程师入职该角色,并为有抱负的个人提供进入该角色的指导。我们意识到我们最初创建的内容只是一个起点,我们希望社区能够帮助完善和扩展内容。查看贡献指南以开始。