您好,欢迎来到12图资源库!分享精神,快乐你我!我们只是素材的搬运工!!
  • 首 页
  • 当前位置:首页 > IT资讯 > 最新资讯 >
    转行做程序员之前你应该考虑的三件事
    时间:2016-07-19 20:40 来源:网络整理 作者:12图资源库 浏览:收藏 挑错 推荐 打印

      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 法则」,就像许多人说的:

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

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

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

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

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

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

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

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

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

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

    (责任编辑:admin)