入坑代码行业
看着越来越高的发际线,我开始对着镜子会议自己是如何踏上代码这条不归路的。
我的专业是啥都学的"电子信息工程",一个集硬件软件于一体,一听就高大上的专业。是的,我们要学电路,通信,c语言,微机原理,汇编语言,信号处理,图像处理,算了,太多了。
你说我们算是计算机专业么?你说算吧,我们又没有数据结构,算法相关的课程,对计算机的认识,估计就是知道word怎么操作的。
你说我们不算计算机专业么?又得知道计算机x86,arm芯片指令。
就在这样不明不白的专业中学习了四年,我们毕业了。大部分同学都成功转行到了软件测试行业。而我则利用我"专业的"51单片机技能成功在毕业之前找到一份实现工作,用"世界上最好的语言"做网站。如果不考虑大学学习的c语言,那么,PHP就是我的第一语言。
迷茫的探索
开始做网站,很大一部分工作都是调前端界面js,css之类的,php也是写一些业务CURD代码。那个年代,兼容浏览器真的会死人的,特别是对于我们这些搞PHP的人来说(你试试去兼容ie6看看)。当真正上手之后,开始怀疑"PHP真的是最好的语言"吗?
当时的行业场景,手机开发刚开始流行,于是开始转android开发,记得刚开始的时候还是android2.3,当自己真的在自己手机上跑起一个应用程序,那种感觉真的很好。但是随这时间的流逝(也没几个月),国内安卓版本开始越来越多。除了版本,还要兼容各种屏幕,品牌。突然感觉这和当时兼容浏览器有啥区别,又开始迷茫了。
手机应用的新起,另一个改变就是接口交互。后端的程序开发开始越来越单纯。你只需要考虑数据的正常返回就可以了,不用去考虑各种界面。似乎这才是自己所追求的。于是开始一头扎入后端的开发当中。
经过5年开发,目前在一家跨境电商公司任职PHP高级工程师。
自己变化
从业多年,回过头来看,还是有很大的变化。
从当年无知无畏到目前"畏手畏脚"。当初因为自己所学不多,基本上上手就是撸代码,无法全面的看到各个问题直接的关联性,在程序的设计上往往会有很大的欠缺,也会留下一些bug。而如今,基本上一个问题要考虑很多中异常,边界情况。对于这些异常情况都需要在开发之前找相关的责任人确认再开发(不确认,出了问题就得背锅)。
急躁不安到现在平平淡淡。程序员对于测试提的bug。反应无非就是三种:
1,什么,我的程序怎么会有bug,一定是你操作不对
2,哦,我看看
3,你描述一些操作场景(根据场景秒出解决方案)
我自己当年也是相信自己的程序没有bug的。但是慢慢的学会平淡接受了。虽然目前还没有办法给测试同学秒出解决方案。
对于需求的变更,真的很烦。刚开始入行的时候,我也在想,这些产品经理整体没屁事干,就动动嘴皮子,今天改这,明天改那。这个版本加的内容,下个版本删掉。后来才发现,要是没有他们,我们可不就失业了。再说了,老板是给工资的。再后来才发现,其实产品经理也不轻松。元素需求是要你做一个淘宝出来,产品经理要把这个"淘宝"的需求细化的解释给需求执行人员,同时协调好整个需求所需要的资源,最重要的是他们得背着那口那么大的锅。
当然,这还是取决于你遇到什么样的队友,这个行业不乏精英也不缺猪一样的队友。
对公司的看法
每到毕业的时候,总会有写人问是去大公司好还是去小公司好。这个真的得看情况。
如果你家里有矿,当然去小公司好。否则建议你去大公司。
我当时在小公司实习,后来有机会去大公司实习,确实大公司和小公司差别很大,和你心里所想的"大公司"差别也很大,于是我就"得瑟"的从大公司跑了。就这一步走错,我就把一副"王炸"的好牌打成世纪烂牌。
在大公司,需要你有造飞机的潜力又要你又拧螺丝的实力。也许你什么也学不会,但是你肯定会学会"待人",另外你也肯定会自带大厂光环。
在小公司,你需要又九头六臂,还要抗压能力(不抗压,公司倒闭咋办),单身最好(单身狗好加班),离家近(晚上加班方便)。你能得到的有可能是你三年干倒六家公司的简历,有可能是三个月就黄了的项目经理,以及那0.1%的希望实现的大饼。
其实只要认清楚工作只是一份工作,选择就很好选择了。千万不要不自己的工作和自己的理想绑在一起。这只不过是一份自己干的得心应手,可以给老板带来利益,给自己带来生活收入的劳动力出卖交易而已。你的理想是你自己需要额外去实现,也只能你靠自己去实现。
好了,颠三倒四写了这么多。总结而言,对新入行的小伙伴以下几条建议:
1、敲代码要认真,但是不要对工作出现的事情太认真,平淡对待
2、身体是自己的,理想是老板的,身体要紧
3、找工作不要相信谈理想的,不要被外表迷惑。要有自己的独立思考能力,拒绝被忽悠。遇到欠薪立马走,不要相信什么快发了的鬼话。
4、大公司可以镀金,能力提升靠自己,并不是小公司给你的,所以不要相信小公司能力提升快的鬼话
5、干这一行,你要学的精,又要学的广。
6、一入红尘深似海,发迹无边上头顶,照顾好自己的发际线