构建无缝流程:认识Uber Engineering的开发人员体验团队

0
构建无缝流程:认识Uber Engineering的开发人员体验团队

在幕后,Uber的开发者体验(Dev Exp)团队授权我们的工程师无缝地概念化、创建和大规模部署技术。Dev Exp位于我们的旧金山、西雅图和维尔纽斯办公室,隶属于Uber的基础设施组,包括Uber的信息平台、工程培训和开发以及服务和语言框架团队的成员。这群辛勤工作的技术作者、教育工作者和开发人员通过文档、培训课程、构建系统和开发框架以及其他工具来支持我们的工程师。

我们采访了Uber的开发主管Nikolay Sokratov,了解他的团队。

Uber开发者体验团队负责人Nikolay Sokratov。

Uber开发者体验的核心职责是什么?

我们团队的职责范围从教育我们的工程师和管理人员开发最佳实践到提供技术文档和使用编程语言支持的标准化开发流程。

以我们的Dev Exp工程师为例。这些开发人员创建各种工具来提高Uber的工程效率,比如构建系统、集成测试、测试系统、搭建和语言框架。他们还致力于使用无服务器平台和分布式工作流系统管理服务的大型基础设施项目。

在开发经验中从来没有无聊的时刻。

在构建这些工具时,您的团队面临的最大挑战是什么?

有很多,从简单的组织痛点一直到处理分布式系统设计的更大障碍。在较高的层面上,我们必须说服人们我们需要这些工具来简化开发人员的体验。

幸运的是,大多数与我们合作的工程师都理解这一点,因为他们每天都在使用我们的系统来创建非常复杂的服务。在很多方面,我们的工作都是开创性的,简化了Uber的构建者建立、编码和测试这些服务的方式。

您能否提供针对开发人员反馈而构建的Dev Exp工具的具体示例?

我们最近的一个项目是我们新的开发人员生命周期自动化系统。它将40多个基础设施工具组合成一个可配置的流程,完全自动化代码签入,从设置服务到进入生产环境。在整个过程中,开发人员唯一要做的就是编写和提交代码。

我们真正感兴趣的另一个项目是无服务器平台(它与AWSλ),让开发者不必在万圣节和新年前夕等高流量的日子担心服务器、可伸缩性和系统容量。

Uber Engineering的Dev Exp团队的成员讨论他们新的开发人员生命周期自动化系统。

你认为在Dev Exp团队中最值得的部分是什么?

当工程师只花一小部分时间在服务基础设施上,以至于这一层变得完全不可见时,这是值得的;当一名新工程师在数小时内推出一项服务时,这是值得的;当工程师们不需要了解分布式系统的来龙去脉,也不需要对其进行修修补补,就可以将他们的想法作为全面的生产系统来实现时硬化这非常令人满意,而且与Uber为客户(在这种情况下,是工程师)创造奇迹的文化价值密切相关。

Dev Exp的工程培训和开发团队成员在SF办公室外对着镜头微笑。

Dev Exp成员的一天是什么?

我们信息平台团队的技术作者花了大部分时间与工程师交互,以便更好地理解系统的工作方式,以便编写关于如何使用系统的文档。嵌入到工程团队中,我们的技术作者建立了主题专业知识,以精确和彻底地向其他工程师传达这些服务的价值,使它们保持最新,即使系统本身继续发展。

在我们的工程培训和发展团队中,教育工作者通过持续的培训,为各级工程师识别和填补技术知识的空白。他们简化了工程教育,为管理人员开发新课程,并精心设计课程,帮助工程师提高他们的技能,而不考虑终身职位。除了我们的工程师培训项目,核心教育,我们每天都教授从特定语言到如何写作的所有课程Eng博雷竞技到底好不好用客文章。

最后,我们的服务和语言框架团队的开发人员简化和标准化工具链,使我们的工程师能够设置、构建和编译代码;在CI测试;对生产中的服务执行集成测试;并通过编排和无服务器框架来扩展服务开发。根据项目的阶段,我们的Dev Exp开发人员构思、讨论实现的优缺点、原型和编写代码,并最终在生产中发布和维护这些系统。在整个过程中,这些开发人员敏锐地意识到,通过提供sla来实现高可用性和监视服务正常运行时间,这些服务如何很好地满足我们的工程师的需求。

Dev Exp是否与Uber工程的每个部门一起工作?

无论如何,我们都试图联系到每一个人。在某些情况下,我们直接与工程团队合作;在其他情况下,我们通过研究和调查与工程师接触,以确定痛点或解决特定的用例。雷竞技是骗人的由于优步在全球雇佣了数千名工程师,我们的工作就是为他们的主要工程问题提供解决方案,而不是建造我们认为他们需要的东西。

Dev Exp在哪些方面为Uber工程师的成功奠定了基础?

Dev Exp专注于去除接缝。如果你看看其他公司的工程操作,通常会有用于构建系统、集成、项目创建等等的独立工具,但它们很少联系在一起。相比之下,Uber的Dev Exp团队的任务是创建无缝的流程。

开发经验的技术作者可能会在Uber的工程文档中心的文档中争论逗号的位置。

这种无缝流动必须超级简单。Dev Exp消除了创建新服务的许多瓶颈。例如,开发过程通常需要工程师至少几个月的时间来学习,而在我们的工具的帮助下,现在只需要几个小时。

你认为你的团队能够“消除漏洞”的秘诀是什么?

我们团队的使命不仅仅是创建工具,还提供端到端解决方案,解决我们工程师的挑战,这使我们的工作具有影响力。我们的首要任务是让开发者的体验如此透明,以至于没有人需要考虑它。

在许多公司中,开发者体验甚至不作为一个组织存在。在这些环境中,团队构建的开发工具几乎没有监督,也没有通过集成流将它们连接起来的方法。相比之下,Uber的Dev Exp致力于建立一个工具链,使用最直接和最无摩擦的过程将工程师的想法带到生产中。我们的团队不会成为你的障碍,我们的团队让你——开发人员——在生产中实现你的想法,就像你编写代码一样快。

如果你对为开发人员创造奇迹感兴趣,可以考虑申请一个角色在Uber的研发团队。

Molly Vorwerck是Uber工程博客的技术编辑。ti8 竞猜雷竞技app雷竞技到底好不好用

评论