点击蓝色“黄小斜学Java”关注我哟
加个“星标”,每天和你一起多进步一点点!
作者:老去的80后
来源:zhuanlan.zhihu.com/p/99944212
大家好,我是D哥,今天无意中发现了一篇文章,想着最近有不少读者都来咨询过“我想要转行程序员,到底该不该?” 这个问题,所以就分享出来,希望能帮助到大家,欢迎积极留言讨论,以下是正文:
我是85年的,计算机专业普通本科毕业。在一个二线城市,毕业后因为自身能力问题、认知水平问题,再加上运气不好,换过多份工作,每份工作都干不长。导致我30多岁时,还一事无成,也几乎没有积累到什么经验技术、行业知识等。甚至还一度去开过网约车,送过外卖。
转行程序员前,我每个月收入仅三四千元。2017年下定决心,准备转行!我知道自己最大的劣势就是年龄太大了,但考虑再三,因为以下几个原因,我还是决定走这条路:
1.我目前的情况已经算是城市里的底层了。我不会做生意,没其它经验和技能,性格偏内向,销售和交际也不太擅长。所以我不怕失去什么,因为也没有什么可失去的。
2.我想学个谋生技能从新开始,而学开发最适合我。因为我并非0基础,毕竟大学时学的这个专业,而且自己也曾经很喜欢编程。
3.我对待遇的要求不高,只要工资有5k以上就行。如果能有6、7 那我就太满意了。
当时我的瞎推断:因为国内出生率特别低,以后可能没那么多年轻人供雇主挑选,所以我们这些中老年人,也有一定的机会。
受到一些心灵鸡汤的鼓励,比如什么种一颗树最好的时机是十年前,其次,就是现在!
我辞去工作,开始在家自学web开发。主要的学习方式就是在网上看视频教程。那些视频教程,初级的基本上免费。中高级的有些会收费,大概50-300元左右一套。反正“学费”上我没花什么钱,总共不到一千元吧。
先是学了些前端基础。在学后端时,犹豫了下学PHP还是JAVA。在我读书时是学过JAVA的,虽然已记得不多了。于是我就想学个新的吧!还因为PHP比JAVA简单,更适合中小型项目。我这个情况,肯定进不了大厂,做不了大项目了。所以就决定学PHP。(现在有点小后悔了)
学完前后端基础后,我还跟着视频教程,自己做了两三个简单的项目。在我学习过程中,让我比较有自信的是——没遇到什么挫折。当然,肯定遇到过各种问题被卡住,但自己都去百度解决了。
接下来开始准备找工作,第一个难点就是简历。
快32岁的人了,如果老实说刚自学出来没任何实际工作经验,肯定是没人要的。没办法,只好去包装简历,说成有两年开发经验。瞎编简历的过程还是很困难的。以前呆的哪家公司,做了什么项目,完全凭想像去编造。
然后海量投简历,艰难地面试,不断地被淘汰......当时我的信念就是,大不了我花一年时间去找工作,找不到就继续学,直到找到为止!最终我花了近两个月时间,可能参加了20次的面试,才勉强找到份工作。
因为没有实际工作经验,造假的简历,是很容易被发现的。只要稍有经验的面试官,多追问你几个细节,就露馅了。因为你并没有做过,不可能编造出全部的细节。所以面试过程很艰难。说几次印象深刻的:
1、一家特别小的公司,还是与人合租的办公室,我当时见到的员工,似乎只有两个人。与技术面试官简单交流了几句后,他当场决定录用我,让我明天来上班,并且说稍后会发短信给我确认。但不知道为什么,后来没再联系我了。
2、另一家小公司,还是在居民小区里办公,不过办公环境还不错,约有七八个人的样子。与面试官交流的地点是在生活阳台上,面试官坐着一个简易塑料板凳,旁边是个洗衣机。和他聊了较长时间,自以为他问的所有问题,我回答得都不错,也很希望拿到这个offer。满心期待的回家等了好几天,结果也没下文了。
3、也是一家在居民楼里办公的小公司,办公环境给人压抑的感觉。去的时候就遇上,老板模样的人,在对开发人员大发脾气,那些开发人员都不敢支声。然后那老板对待我们这些面试者,态度特别粗鲁,抱怨我们为什么早到了10分钟?笔试的内容甚至包含直接给他们现有项目找bug,和改bug。我心中生气,中途离开了。
4、最后能找到工作,通过面试,主要是运气。是老板直接跟我聊的,没经过技术面试官。老板觉得我有相关行业工作经验(其实没啥帮助),又是统招本科,专业对口,就直接决定录用我了。如果当时他让懂技术的人来面试我下,估计我多半过不了。
那是家小公司,连同老板在内,总共十几个人,给的待遇是6k。这待遇对于开发来说,算是最低水平了。但我当时还是很高兴。说出不来怕丢人,比起以前的工作,6k对我来说已是高薪了。
刚去上班那段时间,还是发现了很多“新奇”的东西。比如,原来还有一个岗位,叫作“产品经理”。以前我一直以为,只需要有开发人员撸代码就行了。更让我汗颜的是,我都不知道PHP也是可以做APP的。恰好我看的那些视频教程,都没提到这点。讲课的例子,以及做的实战项目练习,全是pc网站!
当我同事滑动着手机告诉我,app中的这些数据,都是接口中获取的。我点头,装作原来如此的样子。其实内心却震惊了:然来PHP还可以做APP啊,真是牛B!没错,我就是这么菜,甚至当时我都搞不明白,啥是api接口。感觉这是一个很难的东西。还把它和OOP中的"接口"搞混了。因为他们都叫“接口”二字。
在那里呆了两三个月后,我就没那么白痴了。给我安排的日常开发任务,都能按时完成。呆了半年后,我渐渐地发现。我后端同事些,水平也不过如此,可以说基础还不如我,我还时不时给他们解答下技术上的问题。当时我还有点飘飘然了,觉得他们只不过对业务更熟悉些。
现在的我回想起来,当时我的看法大致没错。道理很简单:愿意去这家公司,拿6-7k工资(除了工资以外,啥也没有)的程序员,只能是初级水平。
经过一年的时间,我已成长为一个合格的增删改查工程师。这里已学不到什么东西了,现在回想起来,那个公司没有任何技术氛围,在里面呆着,有一种养老的感觉,外部没有什么动力和压力,逼自己继续学习。
经朋友介绍,我跳槽去了另一家公司,很顺利地通过了笔记和面试,工资开的9k。
刚去的第一个月,我经受了很大的压力。部门负责人,看我年龄这么大,就以为我是一个很牛逼的人。就给我安排了些较难的任务,我很费力的完成了一两个后。他就给我安排了个更难的,说:“这个都是架构师搞了的,你好好研究下吧。”我就在焦虑和不安中,研究了一周,还是云里雾里的,只好鼓起勇气跟他摊牌了,说我做不来。还好那负责人也没说啥,安排我做增删改查的业务了。
我第一家公司,还有个大问题是,用的都是些落伍的技术。而我在第二家公司这里也跟上了主流的技术。比如git(上家是svn)、laravel5(上家是tp3)、 docker(上家是phpstudy) 、前后端分离(以前是混起的)、任务进度管理系统(上家没有) 、专业的测试工程师(上家是运营人员兼测试)等等。光是学习和熟悉这些,我都花了大量的时间。
这里开发人员的技术水平,和上家公司完全不是一个档次的。氛围也和第一家公司不一样了,同事们经常聊各种新出来的技术。哪怕聊点8卦,也是以IT新闻为主。他们聊的东西,很多我都听不懂。让我深感自己知识面的狭窄。
这里的学习气氛也浓厚。做过开发的都知道,忙的时候真是喝水都顾不上。但有时没事,又闲得很。上家公司在没事干时,大家就偷偷玩游戏、看视频、小说等。这里没事时,大家就是看文档,学新东西。
两三个月后,我慢慢适应这里了。但还是那个问题,一直让我焦虑——年龄。同事闲聊时,我最怕聊到年龄的话题。哪怕和年龄有一点点关系的话题,我也会警觉。比如同事们聊起用的第一部智能手机。我一般就不接话,因为我用的第一个智能手机还是palm!
但是,怕什么还是来什么了。
有一次聚会,又聊起年龄。每个人就在说说笑笑地报自己的年龄。轮到我时,我强笑着说:“我嘛,永远18岁。”一个正常情商的人,都会明白,这就是不愿意说,识趣的话应该也就别多问了。但是,在坐有个同事,情商真的太低了,他直接跳出来说:“他85年的!”此时,刚走进来一个95后同事,听到“85年”这三个字,顺口就说了句:“卧草,谁85年的啊?”当时我感觉整个空气都凝固了,我的大腿控制不住的抖动,背上密密麻麻地出汗,把衬衣都湿透了。我只好举手示意,说:“是我,我是85年的...”当时我的尴尬和羞愧,永远也无法忘记。
目前我工资12k,仍然是一个技术普通的后端开发人员。对于这个收入我是知足和满意的。
我是个脸皮薄,性格敏感的人,2020年又要满35岁了,哎!
其实让我目前感到尴尬和羞愧的并不完全是因为年龄。而是我的年龄和技术能力完全不匹配!公司中也有年龄和我相仿的人,但在我的眼中,他们都是技术大牛了。感觉什么都懂,随便说一个问题,他们都能给你上上课,讲讲底层原理。当我新听到一个技术概念,觉得很新鲜,正准备去了解个大概时。他们不仅熟悉,甚至还知道茴香豆的茴字,有四种写法!
青春逝去,时光不再。比我聪明,比我入行早的人,都还在努力,我现在能做的,只能是继续努力学习,仅仅希望不要那么丢脸。
# 我的现状
3月初,我一个朋友的朋友,是一个小公司的老板。他想给自己公司做一个内部用的业务系统,联系上了我。
真是巧了,正好我才重新学完前端。充分了解了这个项目的需求后,我发现不算难。价格我就报了4万,对方毫不犹豫的答应了。
我一个人撸后端和前端代码,前端只有pc端,前前后后,加调试修改,一共花了一个多月时间完成。交付后,那个老板很满意。不过这种私单,我感觉是可遇不可求的。我去网上各种发包接单平台看了下(比如猪八戒),价格都是超低的。
不久后,又因为一些朋友关系。了解到健身房相关行业的软件需求。比如约课,会员管理之类的。有两三个人打算新开健身房的人,都对我说,你只要把这个系统开发现来,我肯定买(付费模式是月付或年付)。我就去仿造其它健身房系统,做了一个类似的多商户SaaS系统,用户端是微信公众号。结果没想到做成后,之前答应说一定买的,却因为各种原因,要么没开成店,要么推迟开。我挂到网上去,也没卖出去。不过我也并没有在意,就当自己学习了,练手了。
能搞这么多事情的前提,是我目前呆的这个公司,比较轻松。有时整整一个月都没啥事。
对于那些一毕业就干开发,目前不到30岁,但经常听说程序员只能做到35岁,并为此焦虑的同学。请你们尽管放心,只要你们做的不是养老的工作,每年在技术上都有明显进步,找到好工作绝对没问题。至少在中型公司当个leader是没问题的。
但在此劝那些30多岁想转行程序员的人,如果你们像我一样,不是一个脸皮厚的人,一定要慎重!
不过如果呆在那种10个人左右的小公司,这种年龄尴尬,要稍好点,但就没什么技术氛围了,成长较慢。
# 你是否有兴趣和能力去做好开发?
有个简单的方法,可以判断自己是否有能力。那就是回顾一下自己中学或大学时的数学成绩!
如果数学成绩好,说明你有天赋,反之就没有。
这并不是说,做项目开发需要多少数学知识——相关性不等于因果性。
只是因为,数学成绩好,代表你比较聪明,抽象思维能力强,这是开发所需要的。
我自己读的是一个普通中学,普通大学。我的数学成绩,一般在班上排名前5。我自己感觉就是学初级、中级的知识较容易。高级点的知识,学起来就特别吃力。
我公司里有位同事,很年轻,技术特别厉害。我就很好奇,问了他一句:“你大学时,是不是数学很好?”结果他回答,他数学一直是全校第一名。
# 你的现状是什么?
如果现在有份收入不错,且能长期干下去的工作,那也没必要去转行。
反之,如果像我当初一样,做着一份毫无前途,月收入仅三、四千元的工作,那可以考虑转行。
# 你的年龄?
如果你还年轻,大概在26岁以下,且前2个条件都满足,那可以去转。
而如果像我一样,当时都30多岁了,要慎重。
— 【 THE END 】—
公众号 [黄小斜学Java] 全部博文已整理成一个目录,请在公众号里回复「m」获取!
最近面试BAT,整理一份面试资料《Java面试BATJ通关手册》,覆盖了Java核心技术、JVM、Java并发、SSM、微服务、数据库、数据结构等等。
获取方式:点“在看”,关注公众号并回复 PDF 领取,更多内容陆续奉上。
文章有帮助的话,在看,转发吧。
谢谢支持哟 (*^__^*)