程序员嘛,可能就是需要有一股这种专业的精神,来把它搞好。
今天我们采访的嘉宾 @Jenk,从大学就开始接触互联网行业。毕业后,他从一个前端开发逐渐转向全栈。他喜欢尝试新技术和好玩的东西,一切皆源于他的兴趣爱好。尽管他曾经只是一个普通的前端开发,但他的“危机感”比较强烈,如今偏离规划走向 Team Leader,变得越来越忙碌。尽管这使他感到非常累,但他也能够适应。无论未来如何,他都会热情地投入他所热爱的事业。
在思否社区的五年中,他在社区分享了很多前后端的知识和经验,为别人解答了很多问题,并成为了社区 2021 年、2022 年的 Top Writer。我们非常荣幸邀请到 Jenk,以下是我们对他的访谈。
Q:向大家简单的自我介绍一下吧~
大家好,我是王志超,博客名叫 Jenk,其实就是 Jenkins 的缩写。95 年出生,老家山西,毕业于西安交通大学,目前已经在西安定居,已婚,有一娃三岁。
Q:目前工作中主要使用哪些技术?
现在做全栈,所以前后端都会用到一些,前端主流的就是 JavaScript、CSS 还有 HTML,框架主要就是 Vue 和 React,后端的话就是 Spring Boot,跟常规的一些东西。日常工作中其实没有固定用的技术,一般是项目里需要什么新的东西,就去学什么。目前主要使用的还是前端三大框架,Vue、React 还有 Angular。目前主要就是 JavaScript 还有 Java 这两种技术。
Q:团队的构成是怎样的,日常如何分配工作?
我们团队现在基本上是 1 个高级开发,剩下 3 到 4 个中级开发,还有就是校招生。做项目的话,功能可能有难有易嘛,一般就是按业务模块的难易程度去分配活。业务上主要是我去拆分,由难到易,再分下去。我一般先去识别这个模块难不难,如果不难的话,又分给谁做,然后再跟大家确认一下,没问题就可以开始做了。每次都是这个流程。如果我对后端不了解的话,这个时候我会从后端里找一个我觉得比较靠谱的人,把这个事情委托给他。
Q:你是如何进入程序员这个行业的?
大学读的计算机相关专业,算是从大学就已经接触了计算机这个行业,毕业后也就做了这行的工作。当时主要有两种选择,一种是后端,一种是前端,因为感觉前端的展现方式比较新颖,画面感比较强烈,后端相对要枯燥一些,所以就先选了前端这个行业。
Q:你是如何成为一名全栈的?
首先我对后端也比较有兴趣,因为我觉得想要和后端人员进行无缝交流的话,你得懂他的东西。比如说,前端让后端加一个东西,他会跟你说这个好难啊加不了,但是你认为这个很简单,怎么加不了呢?如果你懂的话,我就可以跟他说你应该这样加,他就会想这个人是懂的,不能糊弄了。如果你不懂,他就会说,这不好加,怎么怎么样,先把你诓住了,你说那行吧,那就前端来搞一下吧。之前就是这样的,现在不是了,现在就会先分析一下,这个到底是谁的问题。现在作为管理了嘛,遇到了前后端有问题的时候,前端认为该后端做,后端认为该前端做,我看了这个问题,说这东西在后端做不合理,怎么怎么地,在前端做不合理,怎么怎么样,就把那种分歧给解开了。
所以说我为了甩锅,为了能甩好锅,所以就去学了后端。我用后端做过一个完整的项目,这样算入行了,然后再慢慢地积累。
Q:你最难忘的一段工作经历是什么?
我刚工作那会儿,可能自己比较菜吧,做一个功能模块,有时候加班到了凌晨两到三点,那会的提交代码什么的公司里面也有推送嘛,我在两三点提交了一段代码,然后领导们看到了,就让我早点休息。现在回过头来看,我觉得那段时间主要是自己能力不够,缺乏学习,其实做事情前还是太着急了,很多东西都要先去想一想,大体的架构是怎么做的。所以那会儿我觉得主要是太菜,造成的影响就是熬夜到很晚。
那个时候有很多技术还是新的, Angular 2 刚出来,国内大家都还在用 AngularJS 和 Vue 2,基本上没有相关的资料,然后我用 Angular 2 遇到了很多问题,去查国外的资料,很多问题也不好查。当时我就去论坛里面去找,或者去 StackOverflow 里找人私聊,问这个问题该怎么解决,这个怎么怎么弄,就这样去问问题。因为搜索引擎已经搜不到什么的东西了,只能边学边去做,比较费时间,就会加班到很晚。
其实我完全可以下班就走,可以不去弄这个东西,但是我觉得,程序员嘛,可能就是需要有一股这种专业的精神,来把它搞好。
Q:工作至今,有哪些重大的转变?
最大的转变就是我从一个前端转变成了一个初级的全栈。现在其实已经不是一个纯开发了,现在在带团队,带了一个 20 人左右的前后端的产品测试的一个团队,已经偏离开发岗位了,也在做开发,但是做得比较少。
一开始我的规划是最终往技术方面发展,现在我的规划有点变化,往 Team Leader 的方向去发展了。其实对我来说我觉得这两个都可以。转方向的原因主要有两点吧,第一点是现在确实也不太需要太多的开发岗位了,现在招聘也不再去招初级的开发工程师,我们现在招聘都是高级起步,所以开发的岗位其实是越来越少的。其次就是,当时公司对人员晋升有一些培养计划,有意向的人可以尝试一下,然后我就选择尝试一下。这样的话,如果要当团队管理的话,需要掌握前后端的一些相关知识,得懂一点才能去指导别人,刚好我也都会一些,就想尝试一下。目前来看,总体上还可以,各方面都能把握得住,转型初期还是比较顺利的。
Q:如何学习一项新技术?有哪些比较受益的学习方法?
之前我刚刚接触这些技术的时候,可能我认为最快的就是去看别人的项目,就找一些开源项目去学习,看他们的代码。比如说我要做这个功能,我就去看代码,看别人怎么做的,遇到不同的语法就去看官方文档。现在的方式是先去看官方文档,然后再去找一些相关的项目,类似主要是去看别人代码去学习。如果没有代码的话,那就只能是去翻文档了。
其实最早我是看视频来学习的,但是我觉得太费时间了,而且视频的含金量也参差不齐,所以就抛弃了这种方式,不去看视频了,觉得自己差哪块就看哪块。现在就是直接去看文档,看代码,读代码,不要一味地去看“XXX 学习视频”这种东西,有的时候废话特别多,我觉得浪费时间。
光自己学还不够,还要跟别人分享才能进一步巩固。为什么老师上课越来越熟练,就是因为他每天都在给别人讲,讲了以后学生又再问他问题,他就又去解答。一开始我弄了一个 QQ 群,帮大家解答问题,后来加入思否社区之后,我又在社区上去帮别人回答问题。在回答问题的过程中,我也可以学到很多东西,扩宽我的知识广度。举个例子,比如说我在社区发现了一个比较好奇比较喜欢的问题,我就去搜一遍,然后再验证一下,我发现刚好也是对的,然后我再去回答这个问题。这样提问者得到了答案,而我也学会了一点我喜欢的那部分知识,就是这样的一个过程。
Q:对未来有没有什么规划?
规划的话,在短期内应该还是往 TL 方向去发展,做得更好一些。近期内可能还需要再去提升一下自己各方面的软实力吧。有时候感觉自己缺少一些项目管理方面的专业知识,实战经验是稍微有了,但是理论可能是没有的,不知道应该通过什么样的方式,去对大家进行引导。就是野路子能走通,但是可能不正规,要学一下官方的方法。
Q:如果可以重新选择,是否还会当程序员?
这个问题我问过很多朋友,有的已经转行了,有的去创业了。程序员这行毕竟有些吃不消,如果后面转型没转好,确实是个青春饭。比如到了 40 岁的时候,如果做的不是那种高级开发岗,就是些无关紧要的边角料的工作的话,随时可能因为业务变化被裁掉,这个危机感还挺强烈的。
如果重新选的话,我可能就不会选这行了,可能会选一些金融类的行业吧,或者那种研究院之类的,偏国有一些的工作,资历越长,越稳定。包括我的弟弟妹妹,我都没有让他们入这一行了,我让他们的选择方向就是去考与设计相关的,比如给排水等等。互联网太快了,你看现在出了 AI,谁能预料到?AI 它可能代替初级程序员,谁也想不到。但是那些传统行业的话,前期的工资可能不太高,可是你越往后,年龄越长,职称越高的话,薪资水平也是慢慢会上来的,所以还是看个人怎么选了吧。
目前的想法就是先拿着钱,后面干不动了再说,怎么样都能混口饭吃嘛,反正就是干一行爱一行吧。
Q:开源带给你最大的收获是什么?
我的开源项目现在有 700 多星了,是一个接口服务。最开始做开源是群里有个人问我,有没有这样一个接口,可以实现地址识别什么的,我说我帮你做一个吧,他说还不错。然后我就上了一个基础版本的,就是可以调用的。后面发现我要不停地去维护这个东西,因为用的人确实挺多的,我就弄了一个终极版,接口是免费给别人调用的,但是如果要用这个源码的话,就需要像我们知识付费了。很多人为了把这个部署到自己的公司内部,或者是想更稳定一些,就会向我们付费。
所以开源最大的收获就是一个知识的分享和与其他人的一些意见交流吧,还有一个就是偶尔有一些零花钱。
Q:对于刚入行的开发者有什么建议吗?
我刚入门那会儿,让我去弄一个新东西,首先我是恐惧的,我没有接触过这个东西。现在可能不太一样,现在就是要学什么那就学呗,现在学习的文档也比较全嘛,你就照着文档照着资料,公司要什么就学什么就可以了。不会那就不会呗,不会就再去学呗,公司会给你时间去学的,总不能因为你不会这个东西就把你开了吧,心态要放宽嘛。之前就是太年轻了,总担心我不会的话公司会把我给怎么样呀,心理压力会比较大。
等社会经验稍微多一些,掌握了一些学习技巧,就能用什么学什么了。而且公司里的每个人都是你的资源嘛,都可以利用起来嘛,问嘛,以前觉得不好意思问,现在觉得不会就问嘛,他肯定会跟你说的。
如果你喜欢学的话,比如说现在上班不是很忙,那么所谓的摸鱼,就有两种方式去摸鱼。一种是刷微博刷视频,还有一种叫技术摸鱼,就是我去用新的技术搭一个什么项目也好,做一个什么页面也好,这是一种成长的摸鱼,学习的摸鱼。所以我的建议就是前期尽量多去做一些这种学习性质相关的摸鱼,这样在技术上的提高才会比较快。
小编有话说:
Jenk 说感觉自己对开发也没有什么特别的激情,就是喜欢新技术和好玩的东西,一路走来都是兴趣在驱动自己,从而更加深入地去专研学习。我想这也正是编程的魅力所在,永远走在最前线,永远能创造出新事物。希望我们能永远保持这种热爱,一路前行。
欢迎有兴趣参与访谈的小伙伴踊跃报名,《思否有约》将把你与编程的故事记录下来。欢迎大家扫描下方思否小姐姐二维码或直接私聊我,进行报名。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。