这是《开发者说》的第23期,本期我们邀请的开发者是王立文,干了16年程序员,从事远程工作6年,对于一个能坐得住,耐得住寂寞的人来说,远程工作是实现工作与生活平衡的完美工作,如果你也想尝试一下远程工作或自由职业,一起听听他的故事吧。
1、请自我介绍一下。我叫王立文,快40岁了,老家是江西的,现在南京定居,主要工作在家带小孩,做饭什么的,成为家庭主妇了,有项目就接一些项目做。
我是2008年毕业,一直干到现在,干了16年程序员,国企私企外企,包括外包什么的,各种类型的公司都走过一遍,自由职业的话大概是六年前开始的,去年开始转全职了,全职自由职业,技术从后端到前端都干过。
2、分享一下自己的职业经历,如何走上程序员的职业道路的?作为程序员,最开心的一刻?我大学读的专业就是计算机,当时编程就是C,我大学算是普通二本吧!就业机会一般,但是那个时候互联网行业是风口,比较火,工作很容易找,毕业的时候就去一家单位去实习,还报了一个培训班,那时候的培训班还是比较稳扎稳打的,老师都是各个行业比较顶尖的大牛来讲课,当时也学到了很多东西。之后在上海进了一家外企,跟英国人去合作,我们是负责中国区的业务。紧接着就去华为做了几年外包,华为各种各样的人都需要。
像我们这种没什么资源,没有什么家庭背景的人就是靠自己,拼了命的去学各种各样的知识,看各种各样的书,学各种新的技术,只有这样拼命,才能有机会留在一线城市。就是推着你往前走,根本都不需要你自己去寻找,要是稍微落下一点,就意味着你的薪水就要下来,你可能就要去做测试了,可能就要去做IT支持一类的工作了。反正就这么一直坚持到现在。完全就是被推着往前走的,公司不要求我加班,我还要自己主动加班,去学一些东西,你知道十多年前的时候,技术更新是非常快的,就是你很害怕,被落下的那种感觉。
生存是一方面,从内心来讲,对编程还是有热爱的,大学那会儿,放完暑假大家都回去了,宿舍是没有空调的,在最热的顶楼那一层,我也是主动留下来,一身都是汗,光膀子在那边写C语言,也看不到什么钱或者看不到什么公司要你,你就在那边写,觉得这个还蛮有意思的。还有iPhone发布,乔布斯的演讲,国内互联网的火爆,在这种氛围下,每个程序员都有那种改变世界的冲动,你是发自内心的喜欢写代码。
但工作久了之后,职场上你的工作就偏应用,很多重复性的工作会消耗你的热情,棱角也被磨平了很多,对技术确实会有一些倦怠。我自认为赶不上塔尖那些人,但是我在各个公司基本上还是天花板的存在,技术上不存在遇到什么问题我去问别人,倒不是说我怎么样,不愿意去问别人,是我觉得习惯了,就是自己能解决的就自己解决,也正是在攻克一些难题的时候,那种成就感是最棒的,包括别人来问我,向我请教经验或者问题的时候,我帮他们解答,还是会有一些满足感的,所以这些也是促使我这么多年的一个推动力!
3、第一份远程工作是如何接触到的?18年的时候,我在那个平台上注册了一下,突然有个电话打过来,他说有个紧急的单子,找了很多人,一直没有匹配到,我那个时候正好也有空,我就看了一下需求,也不是特别难的事情,就接了那个活。虽然钱不多,但相当于去给他救了这个火,那个人也比较感激,加了微信之后,后面又推了一些事情过来,就这样算是了远程工作。
后面投入的精力越来越多了,慢慢的就把那个账号的等级做的比较高,口碑也还行,就一直这么做下来。后来小孩出生之后,考虑到需要更多的陪伴,自己年龄大了,工作方面也遇到了一些瓶颈,综合考虑之后,就决定辞职全职在家做远程工作了,那时候我做远程工作的收入已经和上班差不多了。在家里,时间还更自由更灵活一点,在家里,你想躺着就躺着,你想歇一会就歇一会,上班的时候,肯定不能这样。
4、什么样的程序员适合成为远程工作者?它有哪些优点与缺点?我做了十几年的程序员,其实不是那么容易坚持的,如果你不是特别能坐得住的一个人,或者你是特别外向的性格,就是希望通过跟外界的沟通才能获取能量的那种人,那是不太适合的。
我有天然的优势去从事远程工作,首先是能坐得住,第二,可能就是这种电话或者是视频沟通,对我来说可能效率要比面对面要高一些,我曾经做过一个单子,全程大概就是一年,我都没有跟他见过面,也没有跟他视频过,一开始他不了解我,有个什么需求,他就要打电话过来,就要语音,一开始我还会接一下,我一听三五句话就能讲清楚的事情。他非要打个电话过来,我就烦了,因为我可能当时正在写代码,老是被你这样打断,我就说你用文字说就好了。大概通了一个月的电话之后,后面大半年,他就是文字,后面导致有一些很大的需求,他也是文字发给我,我一看就不好意思,我就说像这样比较大的需求,你可以给我打电话,对我来说用文字或视频的方式,反而对我来说比较合适一点。
还有一些通用性的要求,比如说耐得住寂寞,沟通要抓住重点,还有责任心,虽然你是隔着屏幕远程工作,你还是要替对方去着想的,你要将心比心去给人家解决这个事情。解决问题的响应速度,解决疑难问题的速度,这个基本的职业素养是必须的,你在跟人家合作过程中,要给人家这种比较靠谱的感觉。
5、在从事远程工作的过程中,印象最深刻的项目?国内外项目有何差异?曾经有一个项目,对方是一个比较大的物流单位,老板是一个懂技术的产品经理,比我聪明,就是脑子转得很快的那种,跟他学了很多技术以外的东西,我跟他合作很愉快,任何需求他都能三五句话描述清楚,这样就节省了我很多时间,我都不用理解分析,直接就可以开始干了,一句废话都没有。就非常对我胃口的产品经理,一个好的程序员挺难找,但是一个好的产品就更难找了,他是核心,是产品的灵魂,所以我对他还是印象很深的,后来因为合作的关系也成为了朋友,加了一下微信。
技术成长方面有提升但不多,对于一个程序员来说,学习能力是不能丢掉的,始终保持对技术的苛求吧,当时我就碰到一个事情,客户要让我写一个小程序,之前我根本没写过小程序,他要求我写一个小程序出来,我当时硬着头皮去写,把那个小程序看了一下,边写边学,花了两天时间给它弄出来了,否则你可能会失去这个客户。
国外的客户专业要求更高一些,比方说React,React Native这些东西是国外客户用的比较多,国内的话,VUE、Web3或者写动画的,写3d的比较多,还有现在流行的AI的一些技术,他需要的是比较新的比较快的,能够帮他迅速解决问题的技术,或者是一些比较偏门的技术,而不是一些大众的东西,就是可能钱会比较少一点。你写过一个插件或者一个开源项目,正好是他需要的,他有可能直接就买过去了,这些东西我觉得会比较值钱一点。
国外的需求还是比较规范的,他会一五一十的把要求给你写清楚,要达成什么目标,写的很清楚,也会事无巨细跟你沟通开发细节,还是比较nice的。国内有些老板直接跟你说一个大概完了,时间要求又很急,恨不得你7x24小时上岗给他弄。
国外项目跟你沟通的人基本上都是懂技术,国内就什么都有,产品也跟你沟通,测试也跟你沟通,甚至自己老板直接上的那种,而且国内的坑稍微多一点,待遇的话,现在国内这么卷的情况下,待遇一年不如一年了。
6、作为远程工作者,你遇到过哪些坑?刚开始做的时候,我就遇到一个不付钱的,还给我评价打很低,我代码还给他了,当时把我气的够呛,当时也没想那么多,这种情况不多,但很气人,主要看老板的人品,你多次沟通之后,自己要有一个基本的判断,对人性要有一些基本的把握。
还有一种就是他不停的给你提新需求,围绕这个需求细化完了,你改了一版给他之后,他又有新想法,又让你改,直到我改到第五版,他还不满意,我每次给他改完之后,他就说我看一下,回复我就说做的不错,但是我又想到什么了,就是就花了好多时间,但是钱并没有增加,所有一定要前期沟通的时候,确认好需求,并且沟通好修改的次数,不能无休止的更改,要么就加钱。
7、你如何评价程序员这个职业?优点与缺点?程序员还是很可爱的,我刚工作那个时候,还是一个很令人羡慕的职业,整体行业的薪水还是比较高的,现在慢慢的回落了,门槛也越来越低了。
现在像我这个年龄的,基本上是属于半退休的一个状态。我也带过徒弟,很多事情忙不过来的时候,也交给他去做一些基本的工作,你会发现,现在的年轻人基本上只是把它当做一个赚钱的工具,没有那种发自内心的热爱吧,对写代码有一种敬畏。像我带的那个徒弟,他没有单子的时候,他扭头就去做发传单的工作去了,或者是当客服去了,有单子的时候再写点代码,我跟他说了很多次,我说你要把基础弄好,有时间看看书什么的,他完全听不进去,他们觉得程序员与服务员是一样的职业,那不是一个高深莫测的职业,或者什么了不起的事情。通过你写的代码,发布一个产品,全球的用户都可以使用,你是有可能去改变世界,像这种的冲动与热爱,现在已经完全没有了。
8、对于自己的生活与工作,未来有何期待?因为我老婆她全职上班,我现在属于家庭主妇了,就做饭带孩子做家务了,有点业余时间就会再看看书之类的,对目前的生活状态还算满意吧。
对于远程工作,希望这个行业能够再规范一些,一个更加公平的平台,能够吸引更多优秀的程序员进驻。我自己希望能够跟平台合作,把自己的个人品牌打造好,能够接到更多的单子,收入更多一些,生活更好一些。