江一舟:写代码是「将来的」工作 | nStar 专访

自 19 年开源到现在,Nebula Graph 社区出现了一群有想法、有实力的用户,将他们的优雅留在 Nebula Graph 的代码中,他们是 nStar,是 Nebula 社区不可或缺的一部分。
—— Nebula 社区

一开始和一舟(本期采访嘉宾)对接采访的时候,他很是懵逼,表示了“德不配位”。但接触下来,你会发现这个口头上说着“德不配位”的年轻人非常优秀,作为一个实习生他能在腾讯大厂光环加持下,看到大厂日益稳定的业务背后是成熟、相对固定的技术,转而去更能发挥他创造力的 PingCAP 接受更多的技术挑战,开启他的数据库闯关之旅。

“写代码是「将来的」工作”,这句话是一舟发给我的介绍语。不知道那个运行了一段代码画了个圆,从此打开了 C 语言大门的小学生,是否知道他的“未来已来”。这样一个对未来有着清晰规划,正如他自己所说,21 岁还算年轻的程序员,今天要和我们聊下他的两场实习经验,以及他是对实习这件事的看法。

下面,是 Nebula Graph Contributor ——江一舟和 Nebula 运营人员的对话;

说一舟

清蒸(下面简称:Q):来吧,介绍下自己

江一舟(下面简称:J):大家好,我是来自 PingCAP 的研发工程师江一舟(GitHub:https://github.com/jyz0309),之前做了一段时间的 TiDB,目前主要是在做 TiDB Cloud 的相关业务。(校招绿色通道:jiangyizhou@pingcap.com,欢迎投递)

因为这次的主题是实习嘛,所以我先说一下我的一个实习经历吧:我是在 20 年 4 月 - 7 月的时候在深圳腾讯作为后台开发实习了 3 个月,在腾讯转正之后 8 月份来到了 PingCAP 实习,然后也是转正之后休息了一段时间,今年3月份又重新回 PingCAP 继续实习。

Q:其实你在腾讯做后台开发也好,在 PingCAP 做 Cloud 也好,包括你自己 GitHub 的 Profile 里都提到了一个词“Database”,所以你是更倾向于去做一些偏底层、Infra 的一些技术开发吗?这是实习过程中发现自己的兴趣所向呢?还是一早就规划好的呢?

J:是的,其实是因为当时在找实习的时候认识了几个做数据库的朋友,然后也在他们的影响下深入学习了一下分布式的相关技术,当时是感觉分布式技术比较贴合业界目前的技术导向,也有一定的技术挑战性,也就慢慢变成了兴趣。

实习这件不小的事情

Q:有一部分本科生,找实习看中大厂背景,有些看中待遇,对于一舟你而言,你找第一份实习工作的时候,最大的考量点是什么?

J:我当初找实习的时候其实是比较看重工作内容的,然后当时也正好面试过了腾讯和字节,然后腾讯的工作内容也是我比较喜欢的,所以当时就决定去了。所以最大的考量点我觉得是工作内容,包括进去之后需要做的事情,这些的话我觉得可以提前问一下所属 team 的 leader 或者 mentor。

Q:经历了大厂的一个实习经历,为什么下一份实习是找的创业型公司,你觉得两个公司对你而言,最大不同的感受是什么?

J:因为在腾讯的实习的时候正好因为工作的一些内容,会接触到数据库相关的实现,所以也就在这过程中认识了 PingCAP,当时也对这种 geek 的公司比较憧憬吧 。然后就试着投了一下简历,结果就过了:)而且在广州也有 Office,所以本着离家近的原则就回广州实习了。

我觉得最大的不同就是扭螺丝和造火箭的区别吧。在腾讯的部门因为体量大,所以很多东西都已经较为成熟,很少会有所谓的“造火箭”的机会,而在 PingCAP 的时候,很多东西还不是很成熟,所以经常可以 “造火箭”。当然这并不是说 PingCAP 就比腾讯更好,只能说是各有各的优点,可能在 PingCAP 的时候就会有更多造火箭的机会,但在腾讯的时候就可以体验到更正规,更成熟的一个开发流程,而且内部学习资料也有很多,可以学到挺多的东西。

Q:你希望从实习中获得什么?你更看重你入职实习的公司哪一点?

J:如果是实习的话,我比较看重的是技术的方向,就我个人来看的话实习不需要很看重公司的前景,我觉得只要能学到东西就挺好的。

Q:所以作为一个应届生,其实你会在意你简历上“在大厂实习过”这种实习经验背书吗?作为一个实习前辈,你会和你的学弟学妹们说找实习先看大厂吗?

J:我其实是不太在意“大厂实习经历”的,我觉得一段实习经历最有价值的应该是在这段时间里你做了什么贡献,也就是所谓的产出,所以也就像前面说的,我更在意的是在实习过程中会做什么,而不是在哪里做。所以我也不会说“找实习先看大厂”这种话,我觉得还是要挑部门,也要看你想要做什么。

实习之前

Q:在实习之前,我觉得你是对自己一个未来和方向有一个相对明确的规划的人,比如你说过“写代码”是将来的工作,这个过程中也自己做了一些玩具,所以你的技术启蒙是什么时候?你觉得写代码这件事,最吸引你的点是哪里?

J:技术启蒙是当初小学的时候,电脑课会教我们C语言,但当时只是叫我们按照书上的代码一个个打下去,然后运行就画出了一个圆,当时还挺好奇的,然后小升初的那个假期就学了 C 语言的语法,做了一个贪吃蛇的小游戏,然后初中的时候也试着做过一个一元一次方程的计算器,为我当初的初中作业节省了不少时间:)。

写代码对我来说最吸引我的是它可以是创造性的,因为我本来就蛮喜欢玩一些创造类的游戏,所以写代码我也偶尔会做些看起来挺好玩的东西,像是刚刚说的小计算器,还有在大学的时候,也用树莓派做过一个智能镜子和 Wi-Fi 放在家里。(旁白:类似 GitHub 开源的项目:https://github.com/MichMich/MagicMirror

还有写开源产品,当 Contributor 可以让我认识到很多的人,像是贵司的 Wey Gu,他在我一开始刚刚参与进 Nebula 社区的时候给予了很多的帮助,和来自各地的人在社交平台上交流,去到其他城市还可以找到人来面基交流一些技术上的见解,我觉得这是一个挺好的事情。

安利时间

Q:给 Nebula 社区的小伙伴安利 2 款你觉得比较好用的开源软件吧

J:这个的话就安利一个我觉得还挺好用的 github1s 吧,它是一个可以在浏览器用 VS Code 看 GitHub 上 repo 代码的东西,使用也很方便,我之前也经常拿它来看Nebula 的代码,然后的话就还是给自己公司的 TiDB 打个广告吧(GitHub:https://github.com/pingcap/tidb)开源的分布式数据库,可以来看看,也可以尝试成为我们的 Contributor ,有奖品拿~

对话 Nebula

Q:有什么建议给 Nebula 产品和社区吗?

J:其实我之前在贵司的 community repo 里面提过一个 issue(issue传送:https://github.com/vesoft-inc/nebula-community/issues/9),里面有我对你们的社区的一些建议吧,其实就是优化一下 Github issue 的 label,然后可以多一些源码解读类的 Blog。然后关于 Nebula 产品的建议的话我觉得就是可以尝试一下优化一下编译的繁琐吧~当然可能只是因为我菜,我在编译 nebula 这一步花了不少时间:)

以上为社区 Contributor——江一舟的专访,更多社区活动见 Nebula Community 仓

欢迎阅读本文的你,在 2021.08.08 来北京和我们现场交流图数据库技术,NUC·2021 活动报名传送门

浙ICP备20010487号