当你在 Tubi 是一位 Tech Lead

在过去,我们邀请了 Tubi 技术团队的许多资深工程师,听他们分享了作为资深工程师的一些故事。今天,我们将镜头转向那些在 Tubi 担任 Tech Lead 的工程师,他们选择了在独立开发之外,承担一定的技术管理工作:

  • 他们如何从 IC (个体贡献者) 转变为 Lead
  • 工作中有哪些激励和挑战
  • 完成技术管理工作的秘诀是什么
  • 成为 Lead 后经历了哪些变化

本文将聚焦于第一个话题:Tubi Tech Lead 是如何从 IC 转变为 Lead 的。欢迎关注【比图科技】公众号,与 Tubi Tech Lead 保持联系,听他们说说从事技术管理工作的经历和体验。

“成为 Tech Lead可以最大化地发挥我的价值”

目前已是 Director of Software Engineering 的 Hailong,在中国团队成立早期是以 IC 身份加入的,那时团队规模不足十人,除了一位中国团队负责人没有其他技术管理者。Hailong 在团队中工作了两年左右后成为了新闻直播团队的 Tech Lead。Hailong 是在怎样的契机下从 IC 转为 Lead,转变过程怎么样,他在采访中回忆到:

“其实,在成为 Lead 之前,我便已经在同时负责几个项目了,但在与其他团队协调工作进度、在团队内部计划产品功能时,自己作为 IC 而非 Lead 的身份会在无形中给对方带来一些困惑,比如我到底能不能对这个事情负责并决策呢,我到底是不是讨论需求时可以找的正确的人呢。因此,成为 Tech Lead,我可以更好地推动项目进展。另外,那段时间 Tubi 中国团队规模扩张很快,一年差不多就会翻一倍;随着人数的增多,团队规模变大,从每天不断写代码、专注于新功能开发中跳出来,对职级做一些定义开始变得有必要,以此来提升整支团队的协作能力。

当时 Gaia Team 算上我只有两个人,Gaia 是我们负责的第一个正式项目,因此而得名。当我的身份从 IC 转变为 Tech Lead,我的工作状态上却没有经历特别突然和剧烈的变化,因为在加入 Tubi 之前,我便有过一些项目管理的经历,比如我有两年多的时间经营自己的公司,读书期间负责过一些政府项目和国际项目。在这些政府网站无障碍化改造项目、为赛班手机系统提供软件的项目上,我积累了一些与多方协调合作的经验,因此在 Tubi 完成 Tech Lead 的工作对我而言是比较顺畅的。”

Yitian 的转变与 Hailong 十分类似,他也是从团队内部自然成长起来的 Tech Lead。Yitian 在采访中提到:“虽然在 Tubi,即使你的 Title 只是一位 Senior Engineer,只要你有着足够资深的技术经验和持续稳定的高品质输出,你也可以在没有 Tech Lead 身份的情况下拥有一定的领导力和影响力。但是,在 2021 年中旬,当我正式从 IC 转变为 Tech Lead 时,依然体验到了一些变化。成为了 Tech Lead,意味着我有了更多渠道获取更多与公司发展、跨团队项目有关的信息,以此可以更好地协调外部资源,为团队规划和决策。

成为 Lead,也意味着我和团队负责的项目规模变得更大、更加复杂。比如,相比作为 IC 时我负责 Homepage Container 的个性化工作,我们团队开始负责起 Tubi 整个主页的个性化,甚至包含一些底层架构有关的工作。Tubi 有着海量免费视频内容库,首页也相对复杂,同时还需要应对千万级别的用户量,因此整个个性化推荐系统是十分复杂的。当我们负责的工作挑战越来越大,我们自然需要更多优秀的工程师、更多匹配的资源加入进来,一起完成更大规模、影响更大的事情。”

“团队需要我,我必须上”

中国团队第一位技术管理者 Taotao 目前已是 Tubi 核心平台 TMPP 的负责人。回忆起他从 IC 转变为 Tech Lead 的经历,他分享道:“我参与并成功上线了一个端到端处理视频的系统,并使之稳定运行了超过一年,随着业务发展和需要处理的视频规模体量增大,这一系统和负责维护这一系统的团队需要有相应的扩张。当时我的 Line Manager 直接管理着超过十人的团队,为继续保持对团队成员的关注和支持,继续带领团队大踏步向前,后端团队需要有一位新的 Tech Lead 站出来,负责视频处理系统。我很幸运地成为了这一 Lead。”

Kobee 在成为 Tech Lead 并一路带领北京安卓团队前进的过程中,经历了 Android 团队的许多变化。谈起这段充满挑战的经历时,Kobee 说:“虽然这一过程可以用一波三折来形容,但当我能帮助他人成长并推动团队升级时,我就会很受激励。在我刚担任 Tech Lead 时,团队业务迅猛发展,北京的 Android Team 有五位成员,其中三位是新同事。如何帮助新同事迅速融入团队并尽快有所贡献,如何发现和发挥每个人对团队最有利的优势,这样的工作比我自己写代码或做工程复杂多了。然而,团队上层人员的变化需要我承担更多,新成员的加入也需要我站出来提供支持,我必须上。通过这一路的摸索和实践、以及中国团队管理层的经验支持,我也在这个过程中不断突破自己,获得了很大成长。”

添加图片注释,不超过 140 字(可选)

中国团队的 Tech Lead 越来越多

Tubi 中国团队从设立之初便是一个以研发为核心的精英团队,目前涵盖包括前端、客户端、后端、数据、机器学习、基础设施等各个研发方向,以及周边的产品、测试和职能部门。这支百余人的队伍在与总部研发团队并肩作战的七年间,已然成为 Tubi 的核心开发力量,为数千万用户的个性化观看体验保驾护航。中国团队负责人 Chun 回忆起团队规模在 30 多人的那段时间,说道:“随着业务发展,Tubi 技术团队不断扩张壮大,各大团队负责人逐渐需要对十位以上成员负责,各团队也逐步演化出一些细分方向,比如后端团队分化为广告系统、转码系统和新闻直播团队。团队人数的增加也让每个人的工作变得更专业和精细,因此需要 Tech Lead 来提供技术管理支持。Tubi Tech Lead 大多从团队内部生长起来,他们在成为 Lead 之前已在团队中展现出优秀的技术领导力。虽然有中国同事在英文沟通、与总部各团队重叠的工作时间方面存在一些限制,但他们的技术领导力、解决复杂问题的能力和团队号召力使他们成为出色的 Tech Lead。目前,不少 Lead 在北京办公室工作,却领导着来自美国东海岸、西海岸及中国各地的同事一起完成重要项目。”点击此处,了解 Tubi 中美团队如何协作。

Tubi 一直保持很高的招聘标准,并对候选人的主动性保持高度关注;一般而言,这些人中的大多数都有潜质成为 Lead。在我们看来,Lead 只是与 IC 不同的一个角色,并不构成上下级关系。有些同事更喜欢投入精力处理有挑战的事情,而不愿花费太多时间进行人际沟通,这在 Tubi 被认为是正常的且受到所有人尊重。我们也强调横向领导力的重要性,Lead without a Lead title,负责中大型项目的同事都十分注重这方面能力的提升和发挥。

Data Team 正在招聘 Tech Lead

Tubi Data Team 目前正在寻找一位大数据平台开发 Lead,他 / 她将领导数据开发团队,创建高质量、可扩展的流数据管道,与所有用户建立联系;将在开放创新的环境中与机器学习团队、产品经理、DevOps 团队和数据科学家合作,推动用户增长;对系统架构设计全面负责,解决性能、可扩展性、可重用性和灵活性等问题;并倡导工程最佳实践,培养与保持团队内的工程师文化;负责技术招聘和指导团队成员的职业发展,建立一支高效的开发团队。

欢迎投递简历,加入 Tubi:jobs.china@tubi.tv。


欲知“在 Tubi 做 Tech Lead,会面临哪些挑战、收获哪些激励”,请听下回分享!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/104298.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

rust宏

宏看起来和函数很像,只不过名称末尾有一个感叹号 ! 。 宏并不产生函数调用,而是展开成源码,并和程序的其余部分一起被编译。 Rust宏和C不同,Rust的宏会展开为抽象语法树(AST,abstract syntax tree&#xff…

SAP PP cs62 提示 输入更改号 - BOM 有历史需求

以上是业务操作人员的 账户 但是IT aLL 这边是warning 不是error 遂去查OSS suim 找 C_STUE_NOH权限对象 赋予权限后 解决了

Hadoop高可用集群(HA)一键启动脚本

高可用集群启动时,需要分别在每个节点上都执行zkServer.sh start启动zookeeper,这个过程比较麻烦,并且当我们节点增多时,这个过程无疑不增加了我们的工作量,因此我们可以写一个一键启动所有节点zookeeper的脚本 脚本实…

Excel 数学

SUM(C1:J1) SUM加總/加法公式=SUM(要加總的範圍)(加總快捷鍵 Alt ) SUM(Sheet1:Sheet4!A1) 跨頁加總公式SUM (分頁:分頁!各分頁要加總的儲存格)SUMIF(D1:D16,"大名",F1:F16) …

XXL-Job分布式任务调度框架-单机模式和分片模式执行任务4

一 调度模式分类 1.1 调度模式 1.单个任务:一个任务实例便可完成 a)单机单任务:单机模式下任何路由模式都只有一个实例执行 b)集群单任务:由路由策略(广播模式除外)选择其中一个实例完成 2.集群部署:每个实例都同时执行一部分…

【c++源码】老飞飞源码完整v15源码(包含数据库前端后端源文件)

老飞飞源码完整v15源码(包含数据库前端后端源文件)整套程序未加密,资源开放。对于研究游戏流程开发非常有帮助,程序仅供参考学习游戏开发流程。以及框架内容。 测试环境搭建 Visual Studio 2013 SQL Server 2008r Windows 10 和 1…

ArduPilot开源飞控之AP_AHRS

ArduPilot开源飞控之AP_AHRS 1. 源由2. 框架设计2.1 启动代码2.2 任务代码 3. 重要例程3.1 init3.2 update 4. 外部AHRS传感模块4.1 init4.2 update 5. 参考资料 1. 源由 AHRS(Attitude Heading Reference System): 飞控最为重要的一个任务就是姿态、位置、方向计算。 本章节…

有趣的 scanf()

限制接收内容 这里的意思是直接收a、b、c作为ch的内容,遇到其它字符放入缓冲区中。 【scanf("%[...]",ch);只接收[]中的内容作为字符串的内容,将其它的内容放入缓冲区中】 这里将aaa后面的h放入缓冲区,但是没有抛弃掉,故而无法接收…

unity 实现拖动ui填空,并判断对错

参考:https://ask.csdn.net/questions/7971448 根据自己的需求修改为如下代码 使用过程中,出现拖动ui位置错误的情况,修改为使用 localPosition 但是吸附到指定位置却需要用的position public class DragAndDrop : MonoBehaviour, IBeginDr…

如何使用C/C++刷新在终端上已经打印的内容

写本文的起源是因为在安装一些工具的时候,发现在终端上并行安装的情况下,显示安装信息是会修改之前已经打印出来的内容,这是怎么做到的呢?抱着对这个问题的好奇我进行了一些探索。 终端是如何运行的 首先是最关键的问题&#xf…

算法通过村第十四关-堆|青铜笔记|堆结构

文章目录 前言堆的概念和特征堆的构成过程插入操作删除操作总结 前言 若执于空,空亦为障。 --彼得马西森《雪豹》 堆结构是一种非常重要的基础数据结构,也是算法的重要内容,很多题目甚至只能通过用堆来进行,所以我们必须明确什么类…

运维 | 如何在 Centos7.x 上安装 telnet 命令行工具

运维 | 如何在 Centos7.x 上安装 telnet 命令行工具 简介 Telnet 是用于通过TCP/IP网络远程登录计算机的协议。一旦与远程计算机建立了连接,它就会成为一个虚拟终端且允许你与远程计算机通信 快速安装 检测是否安装 rpm -qa telnet-server rpm -qa telnet执行安…

centos-apache-简易搭建静态网页服务器-总结

文章目录 1.XShell2.使用命令安装启动服务器3.上传静态文件4.配置文件5.总结 1.XShell 使用命令行工具连接目标CentOS服务器: 2.使用命令安装启动服务器 使用时注意不要复制注释(#符号后面) yum install httpd #安装 systemctl start htt…

android 与 flutter 之间的通信

文章目录 前言集成 flutter 混合开发android 与 flutter 之间的通信总结 一、前言 因为flutter 具有跨平台的属性,既可以在android上跑,也能在ios 上跑,所以为了节约开发的成本,减少人力,势必就会用到它。然而已有的…

Matlab地理信息绘图—数据诊断

文章目录 数据诊断分析(均值方差)Matlab代码实现结果展示 数据诊断分析(均值方差) 均值方差检测是一种简单但有效的异常检测方法,主要基于样本的均值和方差的统计信息。该方法的核心思想是假设正常的样本点应该聚集在…

Anaconda常用命令整理

概要 Anaconda常用命令整理 命令 1. 创建虚拟环境 conda create -n your_env_name pythonx.x # 在创建环境的同时安装必要的包 conda create -n your_env_name numpy matplotlib pythonx.x # 在指定的虚拟环境中安装额外的包 conda install -n your_env_name package_name 2…

CNN-generated images are surprisingly easy to spot... for now

CNN-generated images are surprisingly easy to spot… for now----《目前CNN生成的图像非常容易被发现》 背景: 研究者们发现,仅仅对一种由CNN模型生成的图像进行训练的分类器,也可以检测许多其他模型生成的结果。由此提出这样的观点&#…

中华人民共和国网络安全法

中华人民共和国网络安全法 《中华人民共和国网络安全法》已由中华人民共和国第十二届全国人民代表大会常务委员会第二十四次会议于2016年11月7日通过,现予公布,自2017年6月1日起施行。2022年9月12日,国家互联网信息办公室发布关于公开征求《…

Java面试题-Java核心基础-第二天(基本语法)

目录 一、注释有几种形式 二、标识符与关键字的区别 三、自增自减运算符 四、移位运算符 五、continue、break、return的区别 一、注释有几种形式 注释除了有其他编程语言有的单行注释和多行注释之外,还有其Java特有的文档注释 文档注释能够使用javadoc命令就…

C语言中的自定义类型详解(结构体 + 枚举 + 联合(共用体))

文章目录 1. 结构体1.1 结构体的声明1.2 结构体成员的访问1.3 匿名结构体1.4 结构体的自引用1.5 结构体内存对齐(计算结构体的大小)1.6 结构体传参1.6.1 传值传递1.6.2 传址传递(使用指针) 2. 位段2.1 什么是位段?2.2 …