在量化公司写后端是什么体验
我是学教育的,第一份正经工作是在量化公司写 PHP。
一、我是怎么进去的
我毕业于北京师范大学,学的是教育,专业课也有 C 语言和 Java,但内容都很简单,深度和广度都不能和软件专业的相提并论。我对编程挺感兴趣,其他课学得不怎么样,但这两门课成绩还可以。
我这种非软件开发科班出身,怎么毕业后第一份正经工作会做了后端开发呢?其实在我做程序员之前,还做过饭店,保险,跟开发最接近的是毕业前后跟一个连续创业者做了一段时间 livecode,但当时也没开发啥内容,代码是那个老板写的,我主要跟着一起跑业务,装点下门面,或者去创客营做做宣传和简单培训,去各个地方参加展会等。后来的转折点是因为深圳创客火爆,老板让我一个人来到了深圳,想在深圳找找机会。但过来没多久,老板就生病回家养病了,公司实际上就这么黄了。
于是我只能重新开始在深圳找工作。当时的我,没有什么职业规划(有的话也就不会去搞什么饭店保险和 livecode 了),投简历也没有什么明确目标,哪个公司联系我,我就去。所以当时并没有投多少简历,也没面几家(都没什么印象了),有印象的就是后来入职的这家量化公司的面试,创始人技术学历都很好,公司做的是量化,但也需要网站前后端开发,看我对写代码感兴趣,代入他自己的经历,说大学学什么的不重要,现在技术怎么样不重要,最重要的是兴趣。有人愿意给我机会让我去做开发,我当然开心,于是我就这么进去了。
为什么选择量化公司,而不是当时火爆的互联网。其实不是我不想,而是以我当时的技术能力和经历,根本没有资格进互联网公司。也不是我选了量化,当时我并不知道量化是什么,是这个公司的创始人选择了我。
在这之前,我根本没有待过正常公司,也不知道正经上班是什么感觉。入职第一天什么感觉我忘了,但在这家公司,总体是非常开心的,不仅做的是自己喜欢的事情,而且给了我入门和学习成长的机会。虽然技术刚入门,但其他方面表现还可以,入职后没几天,创始人就给我加薪并升职当了组长。
二、日常工作到底什么样
这是家小创业公司,当时一共也就十几个人吧,分工没有大公司那么一个萝卜一个坑,主要业务就两块,销售和开发。开发又分了两块,一个是量化客户端的开发,用的 C++,一个就是我这边的互联网端的网站开发。量化客户端比较复杂,也是真正会和量化策略打交道的研发。这一块人比较多,我进去时就有好几个。我这边的互联网业务,就两个人,我和一个前端。
那当时我做了些什么呢?公司刚成立没多久,业务很简单,互联网业务,其实就是个论坛。公司负责技术的老板,也就是招我进来的那个 C 哥,用了个论坛框架 discuz!,已经把网站搭起来了。我的工作,就是基于这个框架,做二次开发和日常维护。discuz! 是个 PHP 框架,这也是我为什么进去后写的是 PHP 的原因。这也是我第一次写 PHP,当时是一边看文档一边写,而且写的是生产环境代码。现在想来我们当时确实很草台班子。
我们的业务模式,后面变成了 To B(学校),论坛除了客户学校内部的一些学生外,并没有多少人访问。而且后面给每个客户定制,论坛是打包一起送的。于是复制了一堆定制站点,部署在微软 Azure 云上,这些站点就由我们负责维护。除了论坛,站点上还有一些其他的需求,慢慢地我就发现 discuz 不太合适了。我印象中 discuz! 没用多久,在我有一定基础,掌握了一些其他开发框架后,我们就把 discuz! 换掉了。在我离开这家公司前,后端用的框架是 Laravel,前端用的是 Vue。
当时是我刚做程序员,也是第一次写 PHP。刚开始每天的工作就是找到需要修改的页面路由在哪儿,代码改哪儿,然后边改边试。而且 discuz 当时前后端耦合度很高,修改很麻烦。说不好听点就是每天在写 bug,修 bug,循环往复。印象最深刻的一个 bug,就是当时有个购物车计算的功能,总是修了这儿,那儿又不对,来来回回修了好多次。现在想想,当时我那个技术,在别的公司就是被开除的水平吧。好在这个创业小公司,给了我足够的自由度,可以让我边做边学,一路踩着坑成长。
别的量化公司什么样我不知道,当时我们公司跟其他公司最大的不同,就是几乎全员炒股,我的炒股生涯也是从那时候开始的。创业公司人又少,工作节奏也不是很快,大家所有人都认识,平时大家讨论最多的内容之一就是股票,有时候也和公司量化研究员聊聊量化策略,学到了很多东西。
三、那段经历留下了什么
技术上,那段经历,让我从一个外行,从入门到熟练掌握前后端开发,从只会简单代码片段式开发的新手,到学会代码抽象,从只会 discuz,到能快速熟悉其他框架,基于各种框架快速深度二次开发的程序员。没学到的,是大公司里的工作与处事方式。
公司做量化策略的同事,都是高学历高智商,跟他们相处,拓宽了我的认知边界,也让我对 A 股有了初步认识。即使炒股这么多年我从没用过量化,但我也没像大部分散户那样基本亏损出局。而且,这些年我的业绩还不错。我现在的存款,大部分都是在股市挣的。
其实在那儿工作挺开心的,入职没多久,老板就给我升职加薪了。从刚入职的 6k,到 9k,到 15k,我印象中好像就是几个月的事情。那后面为什么离开了呢?这个要细说话就长了。创业公司从来都是九死一生,加上两位创始人之间的故事,公司业务的变更等,继续留在公司对我已经没有太多成长的可能了,具体这里就不展开说了。
回头看,这段经历给了我软件开发的背景,给了我后来职业生涯从 0 到 1 的起点。没有这段经历,可能就不会有我后来入职手机公司做影像 PM 的机会了。我很感谢这段经历,也一直特别感激当初给我机会的 C 哥。
四、结尾
从这家公司出来后,我休了半年假,期间注册了个一人公司,在外面独自接单开发。也和校友做了一小段中小学课外培训。因为和校友理念分歧,课外培训没做多久就放弃了。至于独立开发,单倒是接到了,也做了,但是我这个性格,实在不适合做一个唯唯诺诺的乙方。加上当时我和另一个合作的乙方,双方技术栈不一致,我也无法忍受对方落后的技术水平,也不想替他们背锅。最后吵了一架,我把做好的东西无偿给了他们,直接就退出了。
不接单不做课外培训,只能去找工作。我不想永远做开发,于是基于自己的经历,去投了项目经理,面了几家后选了一加手机的影像 PM,那是 19 年。后来一加被合并回 OPPO,不喜欢 OPPO 这种大公司里的工作方式,太多卷生卷死的无用功,我就又离职了。本来想继续做 PM,没想到一家扫地机公司给了一个质量运营的岗位,不用做 PM(PM 太心累了),又能利用自己开发和 PM 的经验。我本来就是个讨厌一成不变,喜欢尝试新东西的人,于是没想太多,就入职了。
但是小公司的特点,就是永远在变。入职后工作职责一直在变,部门组织架构一直在变,没多久,我们整个部门都变没了。剩下的几个人被转岗至其他部门,我去了项目部,做起了 PMO(原来公司没有 PMO 岗位,我是第一个),也就是我现在的岗位。
工作了这么多年,每次换工作,同时也换了岗位。前后端开发给了我研发的视角,也给了我一定带技术团队的经验。项目经理又让我摆脱技术人员喜欢单打独斗的习惯,学会了去找到合适的人干合适的活,学会了使命必达。质量运营和 PMO 的经验,又让我多了一份站在公司层面的全局视角,从前端销售到后端职能部门,从产研到制造,我知道了一个产品是如何从设计稿变成产品再送到用户手上的。现在公司规模越来越大,也让我看到了一个公司是如何变革如何快速成长的,并有幸参与其中。
现在,我这个非严格意义上的 PMO(我也不知道其他公司的 PMO 具体干些什么活,但我敢肯定跟我不一样),碰上 AI 时代,有了 Agent 的协助,不知道以后我又会干些什么不一样的事情?未知,但依然期待。不管能不能干成什么事,我会在这儿把这些经历都记下来。