返回开发者新闻

会见开发者:移动专题特辑 (Derick Zhang)

2022年5月10日发布者:Dmitry Vinnik

本文是与 Meta 软件工程师 Derick Zhang 及 Meta 开发者外协推广人员 Jesslyn Tannady 合作撰写而成。

在今天的采访中,我们邀请到了 Meta 远程实境协作体验团队的软件工程师 Derick Zhang。该团队致力于提供协作体验,帮助 Messenger 和 Instagram 为用户打造沟通更顺畅的空间。他参与的多个不同项目涉及适用于 Android 平台的 Facebook、Messenger 和 Instagram 应用。

Derick Zhang 自称是社交媒体网红,闲暇时喜欢品尝不同的美食,到商场享受愉悦的购物体验,到未曾去过的地方观光游览。如果想跟着他一起探险旅行,可点击此处访问其 Instagram。


作为 Meta 的一名移动端开发者,可以分享一下您一天的工作情况吗?

我的主要任务是开发新功能并对其进行测试,确保这些功能符合高质量标准。

鉴于我们的工作范围,我必须频繁切换工作环境,有时也会感觉喘不过气。所以,我会提前规划当周要完成的任务,毕竟每天都会碰到很多不确定的因素。还好公司的许多内部工具可帮助我正常有序地开展工作。

我们有一种任务工具,它可以把我的工作细分成不同的待办事项。此任务工具采用内置标记系统,因此我可以向不同产品(例如“Instagram”或“Android 版 Messenger”)分配任务,并将各待办事项分为“漏洞”或“功能请求”等不同类型。这个系统还可以帮助我确定工作的优先顺序,专注于手上的工作而不被其他任务干扰。

这几年该任务工具更是先进了许多,已成为跨团队协作的理想选择。我可以通过添加标签的方式分享我的工作进度,方便同事了解我当前正在从事哪项工作。此外,我还可以提及利益相关者,提醒他们及时了解项目的重要进展。

除了日常工程工作以外,我还负责根据入职培训计划,为有兴趣了解 Android 开发的新员工提供答疑服务。

您可以多分享一些 Meta 新工程师入职的情况吗?

每当有新工程师加入 Meta,他们都要参加这项名为“入职培训”的短期集训式入职计划。入职培训可帮助新工程师快速熟悉 Meta 代码库和 Meta 内部工具。培训内容还包括有助于公司发展的工程惯例。作为 Android 开发者,我负责为有兴趣了解 Android 开发的新工程师提供与 Android 相关的答疑服务。

在答疑时经常会遇到对移动端开发感兴趣,但没有多少相关经验的工程师,这对我来说十分有意思。他们或许是对移动端开发感到好奇,或许是有兴趣加入其中某个 Meta 移动应用开发团队。答疑服务为这些工程师提供了绝佳的渠道,让他们可以提出疑问,并判断移动端开发是否适合自己。

可以分享一下您当前的工作吗?

我目前正在从事 Instagram Live 功能方面的工作,例如增强客户端基础架构以提高直播的质量和稳定性。我还打算添加新功能,以帮助 Instagram Live 主播更轻松地表达自己的想法。

我目前的工作主要围绕 Meta Open Source,对此我很自豪。在为相关功能设计用户界面时,我在 Litho 组件中使用了 Yoga。Yoga 是一个有助于构建灵活布局的工具,而 Litho 是适用于 Android 的用户界面框架。我喜欢 Litho 是因为它支持根据组件创建用户界面,而不是传统的用户直接与 Android 视图互动。

您不难发现,Litho 的运用在我参与构建的应用中无处不在。Instagram 快拍的滤镜选择用户界面就是采用 Litho 构建的。我们还使用 Litho 在 Facebook 应用中构建了许多消息功能。用户可以在 Messenger 等应用中使用贴图,这都得归功于 Litho。更棒的是,Yoga 和 Litho 都是免费的开源工具。如需了解这些项目的更多信息,请访问 Meta Open Source

对于移动端开发者的工作,外界是否存在一些错误观念?

有时我会听到这样的说法,即手机技术的鼎盛时期已经一去不复返,未来在此方面的所有改变不过是一些细微改进。

与此相反,我认为移动技术领域仍然会不断变化,并持续发展壮大。Android 版和 iOS 版应用更新层出不穷,各公司因此而倾注大量投资,这种情况就足以说明问题。

我认为未来的移动技术会在新兴技术中发挥至关重要的作用。我希望能够看到对整合增强现实技术和移动端空间定位技术的深入探索,例如重新思考手机的地图应用和导航功能。Pokemon Go 就是整合 AR 和移动端摄像机技术独特体验的典范。另一典范是 Google Pixel 的魔术橡皮擦使用人工智能技术快速擦除图像中不需要的元素。

这些创新表明,通过集成移动技术和其他新兴技术,我们可以提供大量不可思议的新体验。

Meta 一直在探索如何整合增强现实和移动端开发,这似乎很对您的胃口。对于现在的工作,您最喜欢哪一点?

成为 Meta 的移动端开发者是一个绝佳的机会。作为一名工程师,我每天都会遭遇全新挑战,所以我一直在学习,一直在成长。使用了大量面向公众的产品后,我可以站在应用用户的角度,帮助企业提供更完善的用户体验。在许多企业中,使用自己产品的做法通常被称为“内测”,而在 Meta,我们做得更多。对于我们的产品,我会在工作时以及利用个人时间试用这些应用,因为我由衷地喜欢使用这些应用。

在确定用户体验的优先顺序时,我总是需要考虑受众的规模。其实在加入公司后不久,Meta 的经营规模就让我吃了一惊。一想到小部分人的努力竟然能对全球那么多用户产生影响,我就感觉莫名兴奋。但我又不得不时时提醒自己保持谦卑,因为我们在 Meta 的工作关系到我们的用户及其日常的体验。即使我们做出最不起眼的改变,也可以帮助用户在全球范围内实现沟通无界限,拉近用户之间的距离。

如果有人想以您为榜样,您会向他们推荐什么资源呢?

作为 Android 开发者,我是 Android 开发者的忠实粉丝。该网站提供了 API 参考文档、各类文档以及许多入门指南。在使用 Android 时,我主要以 Android Studio 作为集成开发环境 (IDE)。我喜欢 Android Studio,是因为 JetBrains 与 Google 协作设计此环境的目的是为了实现加速开发 Android 移动应用。使用该 IDE 后,我的工作流程确实加快了许多,真是令人难以置信。

说到构建 Android 应用,Kotlin 也是我最喜欢的编程语言之一。我发现这种语言更简洁,使我不必再使用其他语言编写样板代码。而借助于 Kotlin 提供的一流类型系统,我也不用再担心应用会因为 NullPointerExceptions 而崩溃,该系统会在早期检测到这些异常情况。Kotlin 也是开源工具,任何人都可以为其发展作出贡献,为其添加新功能,以加快全球 Android 开发者的开发速度。

对于希望从事开发者工作的朋友,您最后有什么想法,或者有什么忠告吗?

移动技术一直在迅速发展。回想十年前,我使用的还是 Motorola Razr,对智能手机这个概念也没多做思考。时至今日,科技让我们的生活变得更方便而快捷。移动技术已成为我们日常生活中不可或缺的重要部分。我希望能够继续创新,为大家的日常生活带来快乐。


如需了解有关 Meta Open Source 的更多信息,请访问我们的 Open Source 网站、订阅我们的 YouTube 频道,或在 TwitterFacebookLinkedIn 上关注我们。