2013-2014年间,全世界吹起一阵写代码的风潮,各大媒体疯狂报导,鼓吹年轻人不管所学为何,一定要学写程序。时不时就会看到「程序员是最有钱途的工作之一!」或者「连奥巴马都开始写代码,你能不开始吗?」这类的文章,不管金钱诱惑、名人带头,仿佛全世界都在疯狂的做程序。就算到了2015年底,不时仍有这类文章出现。相对之下,许多人认为自己目前工作很糟糕,包括老板高压统治、工作内容乏味、薪水仅能糊口等等,看到文章里头那些「高薪」、「出国工作」、「热门职缺」的字眼,是不是都想转行呢?今天就整理一些建议给大家。

  第一件事,程序员都在做什么?

  首先,程序员的领域有许多种,我以前被电影骗了,以为程序员就是电影里头的黑客,只要几秒就可以把非常大的系统架构给完成,凡提到入侵、破解、渗透等字眼,黑客都可以轻松处理。但说实在,「黑客」只不过是程序领域其中的一个范畴,举凡手机软件、网站、数据库维护、服务器、大数据等等,每一个领域都是一门专业,不光只是我们平常看到「Google工程师」、「Apple工程师」那样简单的分类法。

  所以,当各大媒体都在鼓吹转职成程序员的时候,大部分谈的都是软件工程师(software engineer),最主要还是因为软件是我们日常生活最常接触到的,包括桌机软件、手机软件、网站,都是这几年如火如荼在发展的项目。

  以下说到的程序员,指的都是软件工程师。所以工程师到底都在做什么?就工作来说,不超脱以下五件事情:

  1,跟其他工程师讨论

  2,编写代码

  3,解决bug

  4,和用户沟通

  5,和产品撕逼以及被老板骂

  对于水平比较初级的程序员,改BUG这个步骤会占掉绝大部分的时间,而且过程是非常无聊且漫长的。找一位工程师问他处理过最愚蠢的错误,一定回答是「为了找一个错字耗了一整天」,听起来有没有很浪费时间?没错,就是这么浪费时间!甚至,各种错误都是「屋漏偏逢连夜雨」,每当你最需要专心做其他事的时候,错误就出现了,然后手边原本规划要做的事情就这样搁置了,进度来不及,最后就被老板骂。这绝对是刚学程序开发的常态。当然,在这些错误当中,我们去学着如何写出更好的程序,避开那些给自己埋下的地雷,减少错误发生的机率。随着时间推进,我们就很少再犯这样愚蠢的错误。

  但难道高手程序员就不用改BUG吗?很遗憾,资深的工程师不只要处理自己的错误,还要处理别人的错误,越资深遇到的问题越棘手。相信大家都知道不少企业会捧着大笔钞票去找资深工程师,而这之中除了要写新软件以外,许多软件开发都是要请人来擦屁股的。就像创业家面对各种经济、心理、社会的压力一样,工程师就是在面对各种程序上的问题,有可能是针对复杂程序当中产生的一个bug,也可能是公司服务采用的技术发生了问题。

  例如很有名的GitHub攻击事件,当大家都认为Ruby on Rails技术很安全时,突然被人抓出严重的安全漏洞,这时如果我们在公司中恰巧使用了相同版本的Ruby on Rails,是否也因此要为公司解决这个问题?

  因此,在工程师生活中,其中一大要务就是要解决问题。如果每天都在面对这些情况,自己是否还能乐在其中?

  第二件事,不要被媒体的宣传蒙蔽了双眼

  程序员薪水超高?

  行行出状元,所有领域都有办法赚取高薪,但对程序员来说,情况比较符合「80/20法则」,就像许多人说的:

  工程师饿不死,但也存不了什么钱。

  不管是能力普通、只会听命行事的程序员,或是遇人不淑、老板吝啬的程序员,大概都无法取得高薪。若是半路出家的程序员,刚开始必然无法期待有超高的薪水,也很难找到商机立即创业,尤其转职的筹码较少,不像其他工种的学生许多有底子、有作品,找工作较为容易。

  要谈高薪,还是得拿实力来谈,若是无法针对中型的软件项目设计出良好的构架、或是对自己擅长的技术还不完全了解,那对于薪水还是不要有太高的期待,而这些都是需要经验累积的。刚起步的程序员,对媒体报道分分钟年薪百万这类天花乱坠的形容词别想太多。

  根据程序员客栈www.proginn.com这么多程序员的经历,刚起步的程序员只要有耐心,绝对能找到一份工作薪资可供生活,外加存点小钱。身为程序员,希望大家对普遍薪资较低的情况能有所抵制,对于过低的薪资要勇敢拒绝,接受的话只会放任无良企业继续用相同薪资雇用其他程序员,加上自己生活质量和士气也会跟薪资一样低落。

  转行成为程序员后是否美好?

  真正转行成为程序员了以后,问题才是接踵而来,很多事情等着探索。例如学历就是一大难关,程序员这个行业是看重学历的,当然这边讲的不是说一定要名校毕业,而是「本科系」这件事情是相对重要。我相信很多人都吃过这个亏,转行前一度以为可以靠一股热情打天下,殊不知在面试许多公司时,老板听到并非本科系都会眉头一皱。有一位好心的老板在通知面试未录取的时候,也同时说:

  “工资是和学历挂钩的,这是全世界通用的法则,未来你想成为资深开发者,这更是每位老板都会看的。如果没办法再修一个学位,至少要能提出证明你对这些机器、算法等硬底子的学问都有点基本认识。”

  虽然感到震撼,但这确实点醒了我,程序员并不是单单会一项技能而已,而是要对整个领域略知一二。

  另一个难关就是要保持热忱,程序开发技术推陈出新的速度超越其他领域许多,在工作压力下,许多人会选择不去学习,导致进步的速度跟不上整个世界翻新的速度。可能有在接触的人有听过近几年Web前端技术的战国时代,从Java延伸出来的框架多如繁星,从目前最热门的React Native,到前一两年窜起的Angular.js、Ember.js,外加之前打得火热的Node.js和io.js战争,每一年都有爆炸性的改变。

  假如我今天是专精Web前端的工程师,在这些技术出现时,势必要了解他们要解决的问题、优点、缺点等等,并决定有没有需要使用这些技术来改变现有的构架。例如公司现有构架是直接用纯Java实作变数即时更新,如果改用Angular.js,可以大幅减少代码的数量,直接交给该函式库来处理。今天假如我们没有特别探究这些技术,未来在寻找其他工作时,技术主管也会期望你稍微了解这些技术。简单来说,你不前进,别人也会推着你前进。

  这只是其中一个例子,程序开发领域在小地方都有无限多的变化,必须不断学习、接受改变。转职前,很多事情我们想的很美好,但在转职后,才知道这个领域有他自己的法则,在这边无法一一列举,但不管怎样,如果有决心、有热情,这些难关对你来说只会是长远路上的一块小石头。

  第三件事,你对写代码真的那么热爱吗?

  对于热情这件事,不得不再次提到二八法则,因为有80%的热门技术是由20%的人所构架出来。不管你未来所钻研的是哪种技术,总会在领域中有一些神人,他们可以1个人就超越10个的产值,对该技术有非常完整且深奥的了解,并且针对难懂的问题有非常优雅的解法。这些人决定了未来技术的走向,例如目前市面上的大型商业软件,许多都是由少数人将构架完成,后续才是由许多工程师进行维护、更新。

  你想成为那些「大神」吗?虽然许多程序员做了一辈子也没办法,但仍然要保有那「想要成为大神」的热情,才能得到担任程序员的快乐。在生活中程序员不只会遇到系统错误,更常会遇到使用者给予的意见,包括常在Google Play或App Store上看到的评论:「这软件超烂」、「一分都嫌太高」等等,没有重点却严重打击士气,也是生活中的一部分。反之,尤其在大型项目上线,陆续收到使用者说回馈说:「使用上变得更方便了,谢谢你们!」这类温馨的评论让人非常有成就感。抑或是在钻研特别技术,而成功让项目有大幅成长的时候,例如用Go语言将部分Ruby on Rails的API服务重写,让整体速度提升20倍以上,这些数据都会让程序员非常有成就感,也是工作上很大的满足。

  反之,当我们只想着要每天安安稳稳的写代码、维护项目,以上那些情况就绝对不会发生,我们整天只会自怨自艾,对现况感到不满却不改善,把所有的错都推给使用者、推给主管、推给别人。那不如不要转行了,不妨待在自己目前的位子上,好好过生活即可。一定要充满热情,想要成为「二八法则」中的领导者,跳进程序员这个圈子才有意义。

  小结

  当你决定成为一名程序员的的时候,你要对自己做的事情有热情、想要不断学习、发掘新知、研究新技术,否则转行一点意义都没有,如果想安稳过生活,不如就找一个无聊的工作,专心研究股市吧,这样的生活质量会比程序员好多了!

转行做程序员之前你应该考虑的三件事相关推荐

  1. 我不是学计算机专业的,想转行做程序员,怎么办?

    我不是学计算机专业的,想转行做程序员,怎么办? 1.很多人想转行程序员是因为互联网行业薪水高.但坦率说,进入互联网行业道路千万条,转程序员的难度第一条.而且这个岗位还始终伴随着持续的加班.无尽的学习. ...

  2. 特别策划:非计算机专业如何转行做程序员?

    随着互联网的飞速发展,云计算.大数据由"热点"到落地,也带动着市场对软件开发者的需求,而目前国内软件开发从业者本已供不应求.互联网的火热不仅给软件开发者带来更为广阔的空间,就业薪资 ...

  3. 关于要不要转行做程序员的问题

    写在前边: 种一棵树,最好的时间是十年前,其次是现在. 什么时候开始都不晚. 这篇文章废话少说,我作为一个普通本科电气工程及其自动化专业的人转行作为Python程序员来说的经历到现在已经工作两年了,距 ...

  4. “转行做程序员”很难?这里有4个建议

    近几年来,传统行业多处于经济下行,加上互联网行业的赚钱效应,想要转行到这一行的人越来越多,其中程序员这个行业更是很多人梦寐以求的. 但另一方面,我们也发现,这些想要转行的同学们往往会遇到很多困扰.就在 ...

  5. 如何看待 30 岁转行做程序员这件事

    在我自己的知识星球上,有位读者问我:池大如何看待30岁转行做程序员这一现象? 这句话的潜台词是 30 岁转行做程序员是不是可行.当时我的回复是:为什么不呢?不过读者并没有买账,非让我写一篇文章回复他. ...

  6. 30 岁转行做程序员,晚了吗?

    点击名片 关注我们 Change Yourself 30岁,而立之年, 在这个尴尬的年龄段, 我选择了转行做程序员! 如果本科毕业,30岁正常至少有五六年工作经验了.这时候选择转行,意味着要抛弃已有的 ...

  7. 零基础、学历无优势、逻辑能力一般”,能转行做程序员吗?

    此前,拉勾数据研究院对程序员群体做了一次深入调查,并发布了<2022程序员群体职场洞察报告>,报告显示,"高薪"依然是程序员的职业标签之一. 在调查的程序员群体中,年薪 ...

  8. 如何看待30岁学编程,转行做程序员这件事,从零开始真的可以吗?

    一位读者私信我,他问我说30岁零基础学习编程,准备转行做程序员还行不行,他说现在从事的公司已经到达了上限,想试试做程序员行业,然后询问我的意见.我给他说了我的看法以及一些建议之后,心中也有了写这样一篇 ...

  9. 转行做程序员之前必须考虑的三件事

    2013-2014年间,全世界吹起一阵写代码的风潮,各大媒体疯狂报导,鼓吹年轻人不管所学为何,一定要学写程序.时不时就会看到"程序员是最有钱途的工作之一!"或者"连奥巴马 ...

最新文章

  1. 修改模拟器的IMEI号
  2. 深入WPF中的图像画刷(ImageBrush)之1——ImageBrush使用举例
  3. 上海交大提出多模态框架「EmotionMeter」,更精准地识别人类情绪
  4. 解决Bazel:Error: LinkageError occurred while loading main class com.google.devtools.build.lib.bazel.
  5. 关于github里readme编辑的方法
  6. Windows 动态链接库 DLL 浅析
  7. Fabric中的Transient Data与Private Data
  8. 固态和机械硬盘组raid_电脑是固态硬盘好还是机械硬盘
  9. Python趣味编程3则:李白买酒、猴子吃桃、宝塔上的琉璃灯
  10. C++循环的内存释放问题?
  11. 网管学习日记-ospf认证
  12. onContextItemSelected 与 onMenuItemSelected 的那些事
  13. java内存结构不包含堆,JVM之详细分析java内存结构模型
  14. GNS3中下载路由器
  15. uploadify php demo,uploadify HTML5 版本,多图上传
  16. win10家庭版开启远程桌面(带rdpwrap.ini)
  17. CI24R1低成本国产2.4G无线收发器芯片替代XN297精简版SI24R1
  18. 小叮当的2021年年终总结
  19. 音乐播放器app android,mp3音乐播放器
  20. HashMap、ConcurrentHashMap原理分析

热门文章

  1. 腾讯副总裁林松涛接替黄凌冬出任虎牙董事长
  2. selenium自动化测试一一实现自动登陆音乐
  3. 我的周刊(第066期)
  4. 宝讯网捷电商:拼多多怎么扫条形码找商品?
  5. 【转】获取Windows系统明文密码神器
  6. 【橙子日记30】从零开始的毕业设计
  7. vulkan管线学习6
  8. 教育培训机构官网站源码留学签证学校美国教育全屏大气
  9. Windows7 3D桌面设置
  10. 京东图片爬取(requests+lxml 最简单的方式)