查看原文
其他

郑泽康:一名热爱技术的“保安”|OneFlow U

OneFlow社区 OneFlow 2022-06-13



郑泽康,一流科技研发工程师。2021年,他毕业于深圳大学通信工程专业。业余爱玩英雄联盟,用FL Studios“瞎鼓捣”电子音乐。 2020年7月,他开始了在OneFlow的实习之旅,期间一个人“solo”过所有文档,并尝试写CUDA算子。2021年正式毕业后,他全职加入OneFlow,主要负责CUDA开发和优化,并且随着不断解决技术挑战,逐步构建起了技术自信,从最初的“脚本小子”成为了独当一面的CUDA工程师。现在,他又把自己的学习心得传递给了正在OneFlow实习的同事们。
由于他每天早上第一个去OneFlow办公室开门上班,因此自诩为“一名热爱技术的保安”。不过,由于近期深圳疫情限制,OneFlow大门已经很久没等到“保安”来开门了。
以下为郑泽康自述。

高考完的那个暑假,我买了一本《C Primer Plus》自学C语言,也就是那时开始接触编程的。

到大学后觉得黑客很酷,当时也学了一些Kali Linux和网络安全的知识,不过也只是“脚本小子”的水平。当时正是数据分析和爬虫的热潮,网络上各种铺天盖地的广告,也是那时候开始接触Python,学习爬虫,用Scrapy做了个爬取论坛照片的应用。再到后面就是进入学校实验室,对着D2L学习计算机视觉知识。

基础知识其实会贯穿程序员生涯,所以大学时,打好编程基础很重要,编程基础牢固后,学习新知识也会比较快。不用过分追逐新兴热点,编程书其实不用看特别多,只需要看比较经典的如《C++ Primer》、《CSAPP》就可以了。
 
真正上手做项目就是一个建立技术自信的过程。它的重要性一方面在于能更好地帮助你完成任务,如果一直抱着畏难心态,很多事情推进不下去。另一方面,对于一些看似花哨的技术方案,有了技术自信后也能把握它的重点。
 
当然,一些比较困难的项目有人指导你就更好了。你可以选择投简历去企业实习,也可以在GitHub上为OneFlow这样的开源项目做贡献。
 
(不放个人照片了,放个全能汤姆猫,啥都会)

当初,我就是在一个线上讲座了解到OneFlow的,德澎面试的我,针对我的简历问了一些问题,感谢德澎哥没有为难我。入职后,从2020年7月底到2021年3月,我在实习期间做的工作还挺杂的,大到一个人solo完所有文档,小到帮忙画论文图例,还有补充API文档,写一些Python代码拼接的算子,再到后面用cpp、CUDA写一些简单的Elementwise算子
 
我认为,这期间我是在"赚取"别人的信任。只有别人信任你,觉得你靠谱,才会带你参与更有技术难度的任务。每次攻坚难题说不痛苦那是假的,但是带来的成长是巨大的。
 
那是我第一次也是最后一次在企业实习。在深圳大学正式毕业后,2021年7月1日,我也正式全职回归,一方面是因为OneFlow的技术氛围比较浓厚,另一方面我敬仰很久的高手如德澎、建浩都在OneFlow,很想和他们一起共事。
 
转变为全职以后,身上的责任更重,工作难度也有提升。期间很高兴的一件事是实习期间我敬仰的俊丞找到我,让我做Batch Permute的优化(还好没白看那本CUDA C PROGRAMMING GUIDE),想到自身卷不动算法领域,而国内的CUDA资料不是很丰富,CUDA算子还有很大的优化空间去挖掘,就入坑CUDA了。
 
我开始主要负责CUDA算子开发和优化,根据算法组的需求补充缺失的算子,有时候还要支持算法组同事Profile模型性能,优化具体实现,处理事情需要更加靠谱才能被人信任。
 
我的技术自信也是在俊丞、郭冉带我完成Permute算子优化开始逐渐建立的。第一次做算子优化工作,对CUDA编程不是很熟悉,Profile工具也不太会使用,还经常写Bug。那两三周确实很煎熬,我每天都是愁眉苦脸,只有俊丞天天笑嘻嘻。当然,最后算子测试效果非常好,远超其他框架的实现,自己也更有信心了。

近期,我们研发的一套关于推荐系统的组件OneEmbedding即将推出,敬请关注。

OneFlow是一家技术氛围浓厚,相对自由的公司,特别还支持远程办公,这意味着你需要有强大的自驱力,足够自律。也欢迎你的加入。

其他人都在看
点击“阅读原文,欢迎下载体验OneFlow新一代开源深度学习框架


您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存