马工——gap期远程开发者:“不稳定”是焦虑点。

程序员说未来 2024-12-03 05:28:36

这是《开发者说》的第26期,本期我们邀请的开发者是马工。马工毕业于南京理工大学,13年工作经验,有独立设计和开发大中型系统的经验。远程工作经验丰富,目前处于gap期,面对家庭开支略有压力,不稳定的收入是直接焦虑点。其中提及年龄、工作、技术、收入、负担......你是否也有共鸣?

1.请先简单自我介绍一下

哈喽,大家好。我是远程开发者——马工。然后很高兴今天能够在这里,跟大家分享一下,我在远程工作中的一些经验和切实体会。

2.目前的工作、生活、收入状态如何?满意自己的现状吗?

目前是有在工作,但是同时也在找工作,而且也在做一些远程开发的工作,处在一个过渡阶段。

生活状态的话,这个也不能说特别的满意吧,因为涉及到这个自身的隐私,我也不大愿意说太多,现在还是感觉目前这个情况不太稳定,有待进一步调整。

3.分享一下自己的职业经历,如何走上程序员的职业道路的?

我的经历呢,没什么特别的,应该说是比较普通。因为我大学就是学的计算机专业,然后工作之后,就顺理成章的进入了互联网行业做软件开发。现在回头看,就这么一路磕磕绊绊地走过来了吧,一直到现在还是在IT行业继续工作。

4.作为远程工作者一路走来,你遇到过哪些坑吗?

坑肯定是有的,因此要步步谨慎,多加考虑。

第一,接项目的过程中本身就是有被坑的风险的。最开始呢,因为一些远程项目,它的来源是很多的,包括一些求职平台上以及其他各大媒体平台,你就会去接到一些项目。稍不留神就容易打水漂。

第二,合伙人项目的收益不稳定性。之前做过一些合伙人的项目,这种的话我觉得还是要慎重一点。因为有些合伙人的项目吧,可能本身他们这个发起人,也不是很确定这个项目的收益。毕竟我们做项目,最后肯定都是要看收益的嘛,而像合伙人这种呢,收益就充满着不确定性,这是一个点。

第三,再一个是技术的局限。就是有一些项目,它是属于外包,当然这个如果说是作为一个过渡就还好。如果说长期做外包的话,感觉还是被限制在一个技术框架里面了。

第四,提防白嫖的甲方。这一点其实我现在还没遇到,但是客观存在的。像有些技术入股的项目就要警惕,你有可能会遇到骗子。还有所谓的什么合伙人,可能前期那个项目,他自己都还没谱,运营、设计什么都没有,就找了几个人,还全都是远程。到头来老板自己不用出场地,也不用交社保,就白嫖了一个团队,要做东西出来。忙活一阵,最后啥都没有,这种情况也可能会有。但是机会总是风险和机遇并存的,假如说你遇上一个靠谱的团队,靠谱的老板,然后那可能这个产品成功了,也可能因此实现财务自由。

5.有哪些进行远程接单的技巧可以分享一下吗?

首先有必要找一个靠谱的平台。像你们程序员客栈,找这种平台接单,这个是比较靠谱的嘛,这种跑路的风险也不会有,然后老板放心,开发者自己也放心。还有一种,就是通过一些求职平台,然后他们会有一些兼职的岗位给你,但这种的话他可能就会有一些程序员或者甲方跑路的风险。

远程开发这里,它其实还是有一些其它技巧的,这里主要是指工具。我之前在公司和家里,可能会两头跑。然后如果接了一个远程工作的话,可能不管在哪个地方,就要能打开电脑随时做。然后这一块的话,平时用的代码库、一些文档工具,以及你在手机上就可以进行一些操作的工具,比如说文件同步、云同步、代码管理等等。如果说兼职做远程,你也在坐班工作,工具上一定要注意,这是我一个体会。我以前经常会有一种状况,我可能在公司的时候写了一些东西,有一些文档看完之后,等我回到家里却发现找不到了。然后这个时候,那边甲方又急着要这个东西。那怎么办呢?我只能再往公司跑一趟。我觉得这是一个技巧吧,就是要注意很多这种远程协同的工具,可以保证不管在哪里,拿过来就能用,就可以开始干活。

再一个就是远程的话,沟通还是比较重要的。因为毕竟不是面对面直接交流,而且有时候可能直接语音还不大方便。而一个项目、一个需求点、一个问题,平时花在沟通上的时间,可能比你去敲代码、去做技术方案的时间还要长。可能一个问题,你问清楚了,就会发现很简单,你去技术实现,去敲代码,去实操的时间很短,但是你需要把更多的时间花在沟通上。明白需求,才能合作愉快。

再就是,你要想获得一个比较好的收益的话,你肯定就要多多益善。你只有一两个兼职项目的话,收入肯定是不太理想。但是你做得多的话,面临的问题就是,你时间可能会不够用。这个时候的重点就是,你做什么东西一定要快,包括你学习一个新的技术,你用一个新的框架。

6.远程工作和坐班对比,自由度和收益怎样?更青睐哪种工作方式?

主要还是看你自己喜欢的工作方式吧,这个我有一个就是跟大众不太一样的看法:远程工作,可能是更累一点,而且他这个自由度呢,其实也没有大家想象的那么自由。因为就是你接了一个单子之后吧,甲方他可能会随时找你,白天晚上的都有。而且因为毕竟是远程,他这个甲方的老板呢,他看不到你他不知道你是不是在干活,他不知道你是不是在打酱油、在摸鱼。所以说他一个要求过来,然后你可能要马上响应,而且最好就是当天给他解决。

我更倾向于兼职吧,就是说最好你有一份比较稳定的工作,再做做兼职。我接触到的远程项目,一般来说收入是比较一般的,肯定是不如有一份这种稳定的工作那样令人安心。因为这个做远程兼职,就是会给你一种,吃了上顿没下顿的感觉。就是比如说这个项目可能短期之内,一个月两个月就做完了。然后如果说你是全职做远程的话,你可能会焦虑:哎~我这两个月把这个项目做完之后,后面还会不会有新的这个项目过来啊。也包括收入,以及你个人的职业生涯,都会有焦虑存在。

总的来说,如果时间比较充裕的话,可以去做远程工作的尝试,我个人觉得这种是最好的。如果处于gap期的话,远程工作、兼职确实不失为一种良好的缓冲方式。

7.什么样的程序员适合成为远程工作者?

首先,技术方面要非常全面。因为全职工作,他不是说你来挑工作,是这个项目需要你做什么,然后需要什么技术你就要会。就是我时常觉得就是说,平时要做好各种技术栈的积累,就是有时候你看到一个项目,你觉得这个项目挺好,然后收入也不错,但是你可能技术没有达到他的要求。

跟一份这种稳定的工作,有一点不一样的就是,比如说你要是在一个大厂去做这种资深的专家,你可能只需要在这一块深入下去,去积累就好了。但是我觉得,去做这种远程的开发,去做不同的项目,这个时候你就要更全面,就是前端后端,包括这个Devops各种技术栈,都要熟悉。

其次,我觉得就是——诚信靠谱,这个比较重要哈。我之前也见到过一些人干远程,反正也不签合同,又没有什么法律约束,然后可能你给他干完活了,老板就不理你了;也可能有些开发者觉得,这个东西好难,我做着做着做不下去了,然后我就不想干了,最后就失联了。程序员跑路,以及甲方跑路,这种情况都会有。

既然你拿到这个项目,谈好了,那你就认认真真去做。因为我自己合作过的几个项目,这些老板对我评价还是挺好的,然后到现在也一直有长期的合作。这样的话,其实你也不用担心我干完这一单,还要再去找新的,还要再折腾一遍。需求和业务这些都要再熟悉一遍。在做兼职项目、远程项目,一定要诚信要靠谱。在这个过程中,你是能够为自己积累一些资源,积累一些人脉的,还是希望程序员自己能够坚持下去吧。

8.做远程工作有没有什么其它感悟和心得?

远程工作这个算是一种保障,但是怎么说呢,也不是十全十美的。就我接触到的这些远程项目来说吧,先从这个甲方来看,他一般不会把非常非常核心,或者说是非常重要的东西交给远程开发者去做。且对于远程开发者来说,你拿到的项目可能都是比较短期的,很少有说能够做一年以及更长时间的,自然做远程肯定会面临的一大情况就是不稳定。有时候做着做着,就想着:算了,我不如找个班上算了。经常会有这种想法,这些也都是现实情况。

而且远程中,我接到的项目都是一个人在做,前端后端、甚至于设计美工都要自己一个人做。所以说技术方面,我觉得问题不是太大,这些东西,我觉得都能够很快的学起来。这对于不同的人来说,也是一种挑战。但还是说稳定性是最大的问题。当然如果说你要是能接到一个收入很高,钱很多的项目,能够持续做下去,那我觉得继续干下去也没什么不好的。

此外,互联网行业加班,“996”甚至”007“是比较普遍的嘛。你在任何一个行业工作,这种情况,那肯定还是要接受嘛,我们作为打工者,好像没有太好的选择。还是赚钱为主,现实一点。因为是一直坐在那里的长时间工作,腰肌劳损、肥胖、三高这些职业病可能都会有,但是这个也因人而异吧。大家可能对于这个程序员这个群体,好像是有点把它特殊化了,其实我觉得像开发者、程序员,大家都一样,职业病每个行业都有。不用太焦虑,当然健康问题还是值得关注。

9.丰富的Java经验,您如何看待Java现状?对年轻人有何建议?

Java这一块,我觉得,虽然现在各种技术语言确实很多,但我觉得Java它还是后端这一块最主流的开发语言,尤其是在某些业务要求场景,就是高性能、稳定性要求比较高的业务场景,像金融、大数据这种。这些场景,这个Java仍然是最主流的开发语言。包括大家在求职的时候也会发现,像Java这一块,薪资水平应该是相对于其他的技术语言,会更高一点。

建议的话,根据我自身的一些经历,试着谈谈我的观点。

第一,包括八股文在内的基础要扎实。因为我在公司也面试过一些新人,比如说大学生。我觉得呢,Java这一块最重要的还是基础。网上不是有很多那种八股文嘛,大家可能觉得,那个八股文好像很没有用啊,然后就是我面试的时候去背一背就完了。但其实八股文还是很有用的,它是很多人在平时的项目中积累下来的很多有用知识点。然后面试的时候,非常有可能会问到一些点。那些都是很基础的东西,一定要扎实一点,一定要掌握得牢靠。

第二,技术栈要全面。往往大家可能觉得,后端的我就只干后端,只了解后端的技术就可以了。但是其实作为一个远程开发者,前端后端,包括运维这些各种技术,这方面都要了解。否则就会失去很多接单机会。

第三,英语这块是非常重要的。因为现在有很多人会觉得,反正也有AI了,也有各种工具,英语学不好无所谓了。但尤其对于开发者来说,英语的掌握是必不可少的。因为技术这一块,很多其实都是国外比较领先嘛,包括各种语言框架、技术这块,而我们用的很多技术生态,其实都还是以英文为主。很多官方的技术文档也是英文的,阅读原文得到的信息和资料也比较准确。如果说你不看英文文档的话,去找中文的信息,得到的信息可能第一不是最新的,第二也可能不是很准确。当然如果精力允许的话,能再涉猎其它语言自然是更好的。同时,包括你去做一些开源的项目,你去提交、去问问题,这个英文的场景也是非常多的。

当然退一万步来讲,如果你不会英文,若只是平时做外包,实现一个需求,写一些增删查改,这个英文好不好也没关系。但是你要往像架构,这种更资深方面发展的话,英文这个还是要过关的,更利于积淀和实现更高的追求。

10.是否使用过AI辅助编码的工具,有何感受,它对你有何影响?

有的,我现在就有在使用。我本身是做Java后端的嘛,然后有一些项目会有前端的技术要求。这种在做的时候,就会借助一些AI工具,像ChatGPT,可以生成一些代码片段使用,确实很快。包括平时你写一些,像正则表达式、CQ语句,你把你的表结构扔给他,然后说一下你的要求,他就能很快地告诉你。确实AI这一块,绝对是一个极大提高开发者生产率的工具。我觉得这应该是将来每个开发者,都要掌握的一项最基本的技能。目前主要还是工作中去用的场景,就是把它作为一种工具。个人而言,其他的文生图、生成视频,这些用的倒是比较少。

随着现在这种潮流、技术趋势,这些工具应该会有一些更高级的场景。但不完全像有一些说法是觉得在若干年之后,这个AI会取代部分的程序员。对于这个说法,我觉得全面取代不大可能,但是至少现在确确实实会有一些影响。举一个比较具体的例子,就是比如说本来一个小小的公司,他可能会要三个人:一个后端,一个前端,一个运维。但是如果有了AI这个工具之后,很有可能这三个人的活,一个人就可以干的了。就是说AI它会提高你的效率,而且会给你提供很多的解决方案,尤其是技术这一块。但是说它完全取代一个行业,这个我觉得短期之内还是不大现实的。

11.如何看待35岁危机,会因此感到焦虑吗?

现在网上有一个很不好的趋势,就是说这个35岁魔咒,大龄开发者和大龄程序员,好像就是说找不到工作之类的。可能因为整个互联网行业还比较年轻吧,不否认这种现象会存在。但是我觉得,做技术开发,是可以一直干到老的,而且随着你经验的积累,各种技术的积累,你的价值会体现出来的。这也算是一个我的期待吧。

说不焦虑肯定是假的,像我的话,各方面压力也是真实存在的。而且因为现在所谓“大龄程序员”,更增加了年龄焦虑。感觉这个年龄大了之后,求职好像确实会碰壁更多。

这一点我自己确实遇到了,就是有时候在投简历的时候,对方一看,你超过35岁了,会说“我们就要35岁以下的”,然后可能连面试的机会都没有。

在我看来这种现象也不是针对我一个人,这是一个很普遍的情况,我觉得倒也没什么。各行各业都有这种“年龄关卡”不至于将IT行业过于特殊化。反正做技术,最重要的是你自己手里要有技术,然后你自己要有经验,不管你找工作也好,还是说做兼职,或者说你自己去做一个技术产品,这个技术始终都是看家的本领,这个才是核心。

我身边有很多以前做技术的朋友,他们确实都转行了。对于我自己来说,首先我本身是很热爱技术的,而且在技术方面也非常擅长,然后做开发感觉非常得心应手,各种项目都可以做。还是希望能够,就是说如果自己还干得动的话,我觉得还是会继续做技术。

故事征集:

《开发者说》是我们最新推出的一个访谈栏目,邀请了一些国内外有趣的程序员来分享他们的经验、观点与成长故事,我们尝试建立一个程序员交流与学习的平台。

欢迎大家推荐朋友或者自己来参加我们的节目,分享与对话是一件利他又利己的事。

0 阅读:13