资深安全工程师Alessandro Gario的一天:开源贡献与远程协作

本文通过访谈形式,深入展现Trail of Bits资深安全工程师Alessandro Gario的日常工作,涵盖osquery项目开发、CMake优化、eBPF技术实践及跨时区协作挑战,为安全工程领域从业者提供宝贵经验。

Alessandro Gario,资深安全工程师的一天 - Trail of Bits博客

Mike Myers | 2019年8月9日
engineering-practice, people

对加入Trail of Bits感兴趣的人经常询问我们在工程服务团队工作的体验。我们认为最好的回答是展示团队中一些才华横溢的成员,并让他们用自己的话描述在Trail of Bits的经历。

今天,我们聚焦于工程团队成员Alessandro Gario,他居住在意大利。Alessandro致力于开源项目,实现新功能、减少技术债务并整体提升性能。

你是如何加入Trail of Bits的?

我最初是在Twitter动态中了解到Trail of Bits的。当时我正在寻找新机会,于是开始深入了解公司及其众多开源项目。我从McSema开始,这是一个将编译后的可执行文件提升为LLVM IR的项目。最初,我只是想试用软件,但我想与开发者交流,于是加入了Empire Hacking的Slack频道,Trail of Bits的工程师在那里回答关于其开源工作的问题。我在项目中的主要贡献是改进CMake代码,提升构建体验并实现更好的依赖管理。

Dan Guido(Trail of Bits CEO)注意到了我对McSema的贡献,并恰巧急需有人处理osquery问题,于是他给了我一个机会。Dan发送了一份合同让我完成单个任务,我正式成为Trail of Bits的承包商!我非常享受这段经历;这是我第一次被允许在项目中拥有如此多的自由——无论是工作时间还是任务方向。

当我完成osquery任务后,合同结束了。有了更多时间,这是与社区更深入互动、处理用户提交的bug修复和功能请求的完美机会。最终,Trail of Bits收到了足够的osquery工作请求,他们向我提供了全职工作机会,剩下的就是历史了。

你目前正在从事哪些项目?

我主要参与osquery项目,投入了大量时间,以至于被接受为五人维护者委员会成员!该项目,尤其是其构建工具链,目前正在翻新,以独立于其在Facebook的旧家园运行。

我还为一个内部项目提供Qt SDK UI工作,我们正在为安全审计员创建一个强大的源代码导航和交叉引用工具。除此之外,我偶尔帮助其他项目解决CMake相关问题。

在业余时间,我继续尝试将eBPF融入osquery的实验,这是持续努力提升osquery在Linux上事件驱动检测能力的一部分。我最近在QueryCon上就此话题发表了演讲。

你如何安排工作日?

当我不需要单独工作时,任何类型的协作都需要我将日程与团队其他成员对齐。由于时区差异,我必须灵活安排。如果我坚持严格的上午9点到下午6点工作班次,这真的行不通。我围绕我的偏好日程组织工作日,但也考虑美国-based的Trail of Bits员工和客户的日程,他们比我这里(意大利)晚6到9小时。当纽约是下午晚些时候,米兰是夜晚。我的大多数会议安排在我的时间下午5点或6点,这很适合我。这从来不是问题;我真的很喜欢这个日程。

你工作中最具挑战性的方面是什么?

有时任务的要求,至少最初设想的方式,由于技术或设计上的硬约束而难以实现。这很困难,因为你必须找到一个对所有人都有效的创造性折衷方案。

在极少数情况下,当我卡住时,我会寻求团队的帮助。我们的Slack频道就像一个小型StackOverflow网站:你可以直接提问,并立即从专家那里得到答案。这是在这里工作的伟大之处之一。

当为任何有外部维护者的开源项目做贡献时,你最终必须与公司外部的人合作完成任务,并将工作集成到下一个版本中。有时,在你认为任务“完成”后,你还必须额外工作,因为你仍然需要与上游项目合作让每个人都满意。

在Trail of Bits工作最有回报的方面是什么?

我一直对信息安全感兴趣。我会看Twitter,看到所有这些会议、活动和正在构建伟大事物的人。我终于能够参加这些活动并见到这些人。我甚至上个月在QueryCon上做了我的第一次会议演讲!

我接触到让我学习的挑战性问题,尤其是当我让公司其他人员参与时。与一群有才华的经验丰富的工程师合作并从中学习的能力本身就是一种回报。

当我被赋予任务时,我被信任有责任将其进行到底,并独立工作。当我被这样信任时,我做得最好,感觉最有动力。

对想加入我们的人有什么职业建议?

每当我寻找安全工程领域的职位时,它们似乎大多是针对外部渗透测试Web服务的,这对我来说不是特别有趣。我做过一点逆向工程和CTF,但漏洞研究也不是我的领域。我喜欢应用我的工程技能在项目上构建软件。我决定你必须积极寻找挑战和吸引你的事物,并开辟自己的机会。

我的建议是找到一个你想支持的相关项目,寻找容易解决的问题,或者甚至只是审查一个开放的Pull Request,或改进文档。一旦你了解了项目,开始贡献酷炫的变更就变得更容易。

这正是对我个人有效的方法。我知道这很难,因为大多数人没有时间进行业余工作。而且不能保证你会被雇佣。但选择本质上激励你的项目,并在业余时间尽可能多地做酷炫的事情。享受乐趣,最终你会被注意到。

工程服务团队正在招聘

我们感谢Alessandro从项目中抽出时间谈论在这里工作的体验。我们的工程服务团队分布在全球,每位工程师都带来独特的技能和贡献。我们的工作是面向公众、开源和客户驱动的。与客户紧密合作,我们持续扩展和改进端点安全解决方案,如osquery、Santa和gVisor。我们最近的工作包括在PyPI(Python包管理系统)中实现2FA支持。我们为安全事件警报管道项目如StreamAlert或Carbon Black API做贡献,并始终努力改进我们自己的安全分析工具如McSema和Remill。我们的客户依赖我们解决他们的开源安全软件挑战。

我们目前正在招聘另一名资深安全工程师。如果你感兴趣并认为自己合格,请申请!

如果你喜欢这篇文章,分享它:
Twitter | LinkedIn | GitHub | Mastodon | Hacker News


页面内容

  • 你是如何加入Trail of Bits的?
  • 你目前正在从事哪些项目?
  • 你如何安排工作日?
  • 你工作中最具挑战性的方面是什么?
  • 在Trail of Bits工作最有回报的方面是什么?
  • 对想加入我们的人有什么职业建议?
  • 工程服务团队正在招聘

近期文章

  • 非传统创新者奖学金
  • 在你的PajaMAS中劫持多代理系统
  • 我们构建了MCP一直需要的安全层
  • 利用废弃硬件中的零日漏洞
  • 深入EthCC[8]:成为智能合约审计员

© 2025 Trail of Bits.
使用Hugo和Mainroad主题生成。

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计