你是高级程序员待遇?

发送私信成功
满足所有需求,助您轻松工作
你是程序员还是工程师?
11:28 && 浏览量(1087) &&
“程序员”和“工程师”之间的区别并不仅仅是名字好听与不好听。
我刚刚工作的时候,面试官曾经跟我说:好好干两年,可以迅速从程序员成长为工程师。当时我觉得太诧异了,从很多招聘启事来看,“程序员”不就等于“工程师”吗,只是“工程师”更好听一些而已。等我工作久了,才知道“程序员”和“工程师”真的是不一样的——程序员只写程序,工程师写能在现实世界中创造价值的程序。
可惜,很多软件开发人员未必清楚两者的差别,甚至做了很久也只算程序员而不算严格意义上的工程师。所以我就自己的观察和经验,谈谈程序员和工程师的差别。
第一、工程师不写黑箱程序
“程序=数据结构+算法”,这个著名的公式大家都知道,不幸的是,它不适合描述工程领域或者现实世界的程序。有很多程序,数据结构和算法都写得很 棒,功能足够强大,系统足够复杂,但是——它很难调试,一跑起来就无法停止,而且谁也不知道程序现在到底在干什么,里面发生了什么。
别觉得好笑,我遇到过很多工作三四年甚至五六年的开发人员,仍然不停地生产黑箱程序:出现问题的第一反应是直接杀掉进程重启(天哪你们的程序不能安全关闭吗)。当然还有更生猛的,直接用开发机连上生产数据库(防火墙上开个洞)去调试。
你说他们技术不好吗?明明各种技术问题也能搞定。你说他们没有系统意识?做过的程序也不简单。但是,他们做的充其量只能叫“程序”,而不是工程上成熟的“系统”。
怎样的程序不是黑箱?你需要考虑它的层次划分,你需要考虑哪些(功能之外的)运行信息必须暴露和记录,以什么方式暴露记录,你甚至还需要考虑这些暴 露和记录对性能的影响,以及程序需要对外提供什么操纵接口……当你把这一切都考虑清楚,写出能够让运行细节“尽在掌握中”的程序的时候,你的一条腿就迈进 了“工程”的大门。
这方面,互联网和软件开发的大厂会更加关注一些,但也不是说个人就毫无追求的空间了。网络爬虫大家都会写,大家也都知道如果要数据抓得准,调试起来 很麻烦。我有个朋友在某大厂写过一套“可视化”的爬虫,可以用逐步操纵语句的执行,迅速定位问题所在。这种水平的工程师,属于可遇而不可求的类型,每次说 起来大家仍然啧啧称赞。
第二、工程师注意实现和接口分离
Java面试的一道经典问题是:请描述抽象类和接口的区别。通常,大家都会知道“接口”和“实现”要分离。不幸的是,很多人理解的“接口”,只是狭义的特定语言提供的Interface,而没有考虑“接口”真正的含义。
接口的真正含义是什么?计算机最擅长处理的是信息,它可以让信息脱离现实的障碍高速流动起来。如果说“实现”是干脏活累活,“接口”就是发出干脏活累活指令的窗口。脏活累活干一遍就足够了,但发指令的窗口却可以有千千万万。
更具体一点说,完成功能的是程序员,完成功能并且设想它会在什么情况下使用,并且让人方便使用的,是工程师。我见过不少这样的程序:登录会话一开始 放在本地内存里没问题,到了要切换到数据库里方便会话转移就得大兴土木,虽然要做的其实仍然只是存取而已;程序自动加载的数据出了问题,就根本不能手动加 载;以前手动加载的数据,改成自动加载就要推倒重来……
有没有接口意识,能不能真正区分接口和实现,这是区分程序员和工程师的一大标识。
第三、工程师注重功能的逻辑联系
很多系统都在不断的变化和改进过程中,程序员看到的是功能点,工程师看到的是功能点之上的逻辑。
任何系统当然都是由若干功能构成的。但在功能点之上,还需要一张有逻辑意义的大网,才能把功能点组合起来,把复杂度降低,成为大家能理解的对象。最简单的“登录”,就包含数据输入、数据验证、登录信息记录等等功能,“登录”是这些功能的逻辑集合,也是理解这些功能的基础。
随着时间的推移,业务的增长,新功能可能越来越多,比如用户数据的加载,对好友的通知,广告的推送准备等等。这些功能实现起来当然都容易(因为很具 体),但功能堆积的后果是复杂度急剧上升,因为功能之间的逻辑联系被切断了。所以,工程师必然需要思考,这些功能应该怎么组合,放到哪些具有逻辑意义的动 作——比如“登录”里去?正是经过这样持续不断的思考,系统的复杂度才能够被一直维持在较低的水平,容易让大家理解。
这个例子看起来很简单,但做起来却没那么容易。我有时看到复杂的系统操作手册,简直让人哭笑不得:1) 点这里;2) 点那里;3) 输这个…… 这些操作对应的逻辑意义那么准确,分明就该是一次性自动完成的啊,把它们割裂开来的后果大大提高了系统的复杂度,既不方便维护,也不方便操作。最后来擦屁股的,只能是开发人员自己。
我经常反思自己接受的教育,在学校里写程序,和工作了写程序,有那么一点相同,但又好像完全两回事,到底有什么不同,只有亲自体会、思考了才能明白,所以我想把自己的所见所感写出来。悟性好的有机会接受很好训练的同学,估计不需要了解这些。但对于没有这样条件的同学,但愿我的这点念叨能给你们一点帮助。(文/余晟)
& 收藏(2) 收藏 +1 已收藏 取消
& 推荐上头条 推荐 +1 推荐上头条 已推荐
xiaoqiaoyy:
回复@pang:
文章上传作者
xiaoqiaoyy的热门文章
暂时没有该作者的热门文章噢~&
暂时没有热门文章噢~&
开发者交流群:
DevStore技术交流群2:
运营交流群:
产品交流群:
深圳尺子科技有限公司
深圳市南山区蛇口网谷万海大厦C栋504
Copyright (C) 2015 DevStore. All Rights Reserved
DevStore用户登录
还没有DevStore帐号?
快捷登录:提到程序员,除了代码你还能想到什么?_36氪
市场合作,请您联系: media_
品牌广告合作,请您联系: media_
企业创新合作,请您联系: corp_
地方合作,请您联系:
满足以下场景,获得更高通过率: 1. 新融资求报道 2. 新公司求报道 3. 新产品求报道 4. 创投新闻爆料
36氪APP 让一部分人先看到未来
为你推送和解读最前沿、最有料的科技创投资讯
一级市场金融信息和系统服务提供商
聚集全球最优秀的创业者,项目融资率接近97%,领跑行业当前位置:
作为一名程序员,你值得骄傲
发布时间:
浏览次数:
很多人都看不起程序员,一提到程序员人们都会想到&屌丝&、&宅男&、&情商低&等等词语。网上也有很多调侃程序员的段子,当然其中不乏有一些是程序员自嘲,自嘲也好抑或是别人的调侃也罢都不重要,一笑而过,只不过是为生活添了一些作料。
随着互联网行业的振兴,程序员的需求量日益增大,其工资也是在一点点增加。但是这并不是程序员追求的唯一价值目标,薪资水平无所谓高低,那要看自己的生活标准是什么。如果追求奢华的生活那你的薪资少的可怜的,如果追求平常人的生活,那你的薪资对于其他人来说就是高不可攀的。但是程序员所追求的生活乐趣不仅仅只是物质的满足,相反我觉得物质反而是次要的。程序员追求的更高的生活质量在于心理和精神的满足。这里说的程序员仿佛成了圣人,没错,就是圣人,即使不是圣人那也是亚圣。
对程序员的定位这么高,有人该不同意了,继续攻击以&屌丝&、&宅男&、&情商低&。这些人怎么就这么执著呢?&宅&自有宅的资本,有些人想宅但是&宅&不下去,当他独自一人待在家里的时候会感觉相当的无聊,这时他会使出浑身解数努力想在自己身上找出让自己宅下去的东西,但是他发现这根本不可能,除了一具空壳自己已经再也找不出什么值得留恋的东西了。这时只能去外界寻找那些可以驱赶那让人恐惧的无聊,于是就有这样的一群人聚到了一起,都想从对方身上得到某些可以填充自己的东西,可殊不知是&无聊+无聊=俩无聊&。渐渐的他们依此为乐,并且美之名曰&社交&。更有趣的是他们渐渐的将它发展成为一门&学问&,甚至有人出书来专门讲解这里面的玄妙之处,说的那就是一个字&&玄,可谓&玄之又玄,众妙之门&。
而这时的程序员呢,因为没有走进这个&玄门&,所以被门里的人冠以&宅男&、&情商低&的高帽。殊不知在门里的人每次想着如何去扩展无聊而使自己不无聊的时候,程序员正在屋里&凝神静想,健指如飞,噼里啪啦,杯茶之余一屏代码,不亦乐乎&。
接着人们继续冠以&屌丝&于程序员,说住的条件差,吃的也差,一台电脑、一张桌子、两盒泡面,一天就这样过去了。虽说条件差但其中的乐趣却不足为外人道也。古人云:&贤哉程序员,一箪食,一瓢饮,人不堪其忧,程序员不改其乐,贤哉程序员!&。(精神可赞,但是为了身体健康还是把泡面换成饺子吧!)
当然程序员也有自己追求的圈子,那就是几个程序员坐在一起谈论自己新进正在做的项目,互相之间提出自己的建议,然后谈谈自己的想法。可能这一次&清谈&就会诞生一款伟大的产品。
正是这些&屌丝&、&宅男&、&情商低&的程序员做出了一款又一款的产品,使那些&玄门&里的人玩儿的不亦乐乎。
编程是一门技术更是一门艺术。编程的技术要求程序员具有严密的逻辑思维,还有永不间断的学习的脚步。技术发展很快更新也很快,其知识的广度与深度更是仰之弥高、钻之弥坚、瞻之在前、忽焉在后。这就使得程序员不断的学习不断的进步。编程是一门艺术,具有很强的技巧性,能充分激发程序员的发散思维,每个程序员可以按照自己的想象尽情的去发挥。同时编程的艺术之美又体现在每个程序员懂得分享,分享自己的想法,分享自己的代码,分享自己成功的喜悦。
程序员为这个世界创造了巨大的价值,我是一名程序员,我以我骄傲。
除非注明转载,本站文章均为原创,欢迎转载,转载请以链接形式注明出处
本文地址:
扫一扫,关注我们哦!
Design By 迹忆  摘要:本文写给30左右还奋斗于编写岗位的程序员们,因为在这个年龄段,可能技能、岗位、收入都已相对稳定,但同时,大家或多或少有些不同想法,或收入,或前途,或即将创业的想法......如果你还是刚毕业或参加工作一两年的程序员,希望不会左右你好好学习技能的心,好好在本岗位好好发展下去。文笔有限,若有不好之处,勿喷,只作大家交流一下内心深处真实想法!好久没写点东西了,借此机会让自己冷静下来,好好沉淀一下。&
  先介绍下本人基本状况:成都人,2008年本科毕业参加工作,从事程序员职业,毕业后在上海工作了4年,2011年结婚,2012年回成都,2013年有了孩子,买车,2014年6月辞职至今,和合伙人在雅安这边做项目,辞职前我和老婆的年收入共20万左右。如今第3个项目已接近尾声,这几个项目的利润也让我有了相对打工较好的回报(7位数,当然还有部分没到位),自己出来做事,每天披星戴月,挥汗如雨是很平常的事,自然和上班的舒适生活没法比,其中感触颇多啊。文笔有限,若有不好之处,勿喷,只作大家交流一下内心深处真实想法!好久没写点东西了,借此机会让自己冷静下来,好好沉淀一下。
  可能和很多人生活工作轨迹雷同,从一开始工作只想好好学习技能,能在上海这个大城市解决自己生存问题。但工作两三年后,生存问题基本解决,但又面临结婚买房,才发现自己工资少得可怜,刚开始工作时候的想法可能让人有点坐不住了。我和老婆都是成都郊县一普通农村家庭,家里供完我们大学毕业实属不易了,其余的事得靠自己解决。
  结婚后在我和老婆都留在了成都,老婆毕业后一直在成都一家猎头公司做顾问,我也在成都找了个工作,新蛋科技(成都)公司,呵呵有认识的我的吗?说实在的,当时找工作有点急,也没过多地了解新公司就去上班了,其实也是主要解决工作问题,其他没多想。上班后,一直觉得应该做点什么,快30岁了,不能老这么下去了,闲暇日子都会和老婆在想,该做个什么事情呢?上班打工终究不是办法啊?
  就这样来到了2014年6月,一次偶然机会,老婆家一个亲戚对我说,他一个朋友在雅安那边在谈一个项目,在找合伙人,你要不要试试?和大多人一样,这时候心里还是很复杂的,心里开始犹豫:
  1.一旦辞职出去,没有工资,怎么维持现在的开支,房贷、孩子,这些问题肯定首要考虑因素  2.合伙人了解不多,基本没打过交道,能力怎么样?  3.启动资金怎么来(每人准备150万,共300万)?  4.自己出去意味着转行,等把项目完成,然后呢?程序员的技能丢掉一两年还能不能重新继续干下去?  ....
  当时这个情况下,我的想法可能代表了大部分上班族,算了吧,不要轻易去冒险,现在两个人的收入也还过得去,再说了,启动资金怎么来,卖房卖车?也没那么多啊...
  在老婆的支持与鼓励下,我决定了,30岁了,还不努力拼一把?难道还要等40岁,再也没勇气拼的年龄还会有想法?既然决定了,就开始行动了。
  第一步就是筹钱,我把能想到的所有亲戚朋友各个打电话说了一遍,一周下来,共借到58.5万,其中大部分都是承诺给别人计息的。合伙人也筹到一部分,我们加起来就有了100万左右。剩余部分,通过老婆这位亲戚中间担保,向别人借了200万,月息3%。资金问题解决了,提出辞职,而且要快,每月的利息就有近10万,谁还坐的住,一周后就来到雅安启动项目开始行动。  第一个项目开始...  第二个...  第三个...  注:本文旨在分享程序员这个年龄的想法与作出选择过程,项目的中间过程怎么操作就不详细说了,有兴趣的可以留言,等以后有时间再说说吧。不过发生的事情确实太多了,真够写一本书了。  项目还没完,工作仍在继续,我也不说什么给大家分享成功想法,毕竟我真的不认为自己能和成功二字挂钩,分享下我这一年半的心得吧
一、想想做什么
  对于在公司上班尤其奋斗在一线的程序员,学习总结的重要性固然不多说了,但也别埋头一直冲。与此同时,自己问问自己,自己需要什么,想成为一名什么样的人,很多时候就会得知其实自己是否适合上班,还是适合创业,或者其他什么?打工,创业本身当然没什么对与不对。
二、培养几个知心朋友(哥们)  买车除了家用方便,还有就是能扩大你的交际圈,千万别因为结婚有孩子了就忽略这个关系,把收入的一部分作为一项必要开支,经常性地找找朋友聊聊你的想法。此外,这种场合下千万不能抠,男人的社交场合下,很多时候还是比较看重的。因为我遇到过曾经一杯20元的茶钱谁买单的情况,一份40几万的合同没签下来的情况,别人可能在意不是那20元钱,在意的是处事的诚意度,男人做事一定要大方。
三、分叉口的选择  前面说到过我怎么选择继续上班,还是辞职做事,当时我是这么分析的,看看是我一脑子热还是合理否?假如,我一直选择做程序员,以现在的发展来看,未来5年乃至10年后,那时候我会是什么状况?月薪2万还是3万?仍然是程序员还是做了部门经理?如果这些你都不确定能认清自己,还有什么原因让你继续留在目前岗位?别看当时自己的月收入也有5位数,除去日常开销、养孩子、养车、还房贷,连给家人买份保险,逢年过节给长辈点钱,遇到朋友结婚随个份子钱都紧张,更别说买车位甚至再换车或者再买套房了。我当时也想的很现实,觉得确实要拼一把了,你觉得呢?
四、借钱  出来做事,借钱这个事情100%会遇到,从小的开支一两万到大数目几十上百万,能借到钱真的要靠你平时的积累。
  1.大资金。
  如果没记错的话银行定期利率一年也就是三点几。如果觉得项目有搞头,想拼一把,哪怕有利息,3%的月息可能对于我们打工的来说觉得很高了(这样说更直观点:100万本金,每个月偿还的利息是3万,这应该是社会上借贷普遍放款标准吧),这些都是成本开销,值得你投入。今年上半年有一次真又遇上资金问题,最后想办法把自己的按揭房拿去做二次抵押贷款,又贷款20万,月息0.8%左右(银行的,不高吧)。前不久,有个亲戚做的资产抵押银行贷款5000万房款下来,他别提多高兴呢。想想一年前上班的我,肯定不会这么大胆的投入,觉得抵押资产是不见的光彩的事情,现在完全能体会到能从银行贷到款,真的是有能力。
  2.小资金
  有时需要遇到两三万需要及时周转,我们大多数会选择向亲戚朋友开口。都说能让你记住的莫过于雪中送炭,而非锦上添花。向亲戚朋友借钱人人都会遇到,在这一年多时间里,有的问都不问我在做什么或者有赚的机会没有的就向我伸出援手,真的打心底的很感激他们,也有担忧我的还款能力,拒绝借的,虽然别人有别人的原因,但经过这一两年的多次借钱,真的能让人看清楚很多人、事,哪些是真朋友,哪些只能作为泛泛之交,这一点,借过钱的肯定深有体会。
四、项目运作  我一直说的是做事,或者做项目,而非创业,一方面可能这个类型的项目不是一直长久做下去的,再者说创业就会给自己扣一顶很大的帽子,让人倍感压力。只有出来自己做事,项目在你手上要学会去运作,才能站在一个&老板&的角度来思考人员、资金、产品、成本、利润、税金、法律等等问题,如果遇上困难或大麻烦,老板会在心里计算利润、损失,怎么做才能弥补或者降低损失等等。而打工,旱涝保收,一个月上22天班,拿固定工资,遇到困难交给上级,是有本质区别的,要成长,一定要多方面成长。
五、关系  我们做的项目都是政府类的,资金安全,这是决定开始前提,但和政府部门打交道,会多很多麻烦事,不但要会说,还要会做。现在回头想想,进入社会这个大环境,很多关系都是前提,关系到位了,很多工作可以开展顺利,反之不然。举个例子,有一次我们要收一笔款,所有手续已完毕,就等对方财务划款,可找了几天,要么会计在,出纳不在,要么出纳在,会计没在,几天下来,你能想象到问题出在哪里吗?(也许一般的人会想,走正规程序,该怎么就怎么?但你想过没,100万的款,晚一月利息就是3万,1天又是多少,哪有时间和对方耗)最后绞尽脑汁,从领导入手,解决问题。问题得以解决,但其中耗费了多大的人力财力,其中的层层关系是多复杂是我先前想象不到的,就不细说了(可能大家会猜到送礼或红包,这是政府部门一贯作风,也算猜得对,呵呵。但远远不止你想得那么简单),维系多段关系,是顺利开展工作的前提。
六、三大因素  个人认为:项目、人、资金,缺一不可。  1.项目。好的项目是前提,好项目是自己花成本认真去分析评估得出的,这个不必多说。不是靠脑子随便想想,百度一下就能知道的。
  2.人。永远要知道,做事的核心在人,而非其他,包括资金。需要布局,合理安排,做到因岗设人,整体推进。现在那么多成功人士为什么都有合伙人?没有一个人能承受全部困难,那样压力太大了,过程中一定也要有人一起来分担:需资金的时候,几个人找总好过一个人找;遇到麻烦事,几个人协商解决等等
  3.资金。之所以把资金摆在最后,是有原因的。前不久看到园里有个朋友讲创业的,总结出资金是影响他创业的最大障碍,找人需要钱,找办公地点需要钱,后备的房贷孩子都需要钱,影响他下决心的最大问题是钱。以前我也这么想,创业?没钱创什么业。一听到别人说谁谁在创业,首先想到的是他家庭条件好,有房没贷款、有车,老婆有收入做后盾,诸如此类的,既然我有这个想法,我想也有很多人和我想法一样。我们这不是在为自己找借口不是吗?如果你遇到和我一样的情况,你会做辞职并且背着高额利息,并且可能很长时间没收入的决定吗?
七、成长  时间虽然不长,一年零7个月,在社会的大环境下也确实增长了见识。以前怕与陌生人打交道,出来做事后,几乎每天都在和陌生人来往。一年多下来,由项目纠纷引起的,进过3次派出所,2次交警大队,2次法院。如果我还在上班,这些地方可能一辈子都不会去一次,每天在办公室,除了上班、加班、下班以外,什么都不会发生,不知道这样算好事还是坏事。
八、关于转行  最后,我说说我自己作为一名程序员的转行。的确,我做了次大胆的尝试,踏入了一个完全陌生的行业(卖个关子,具体是什么行业不是本人重点),以前以为不做程序员,我可能会饿死。我想鼓励大家,没大家想象中的严重,社会虽然残酷,但一条活路肯定是有的,因为现在大环境下需要人做的事太多了。很多成功人士也是一直在转行,先做一个项目,在过程当中有新想法,新项目的注意是很正常的,认真做事,不断地调整方向,选择就不会错。如果你问我项目完成后的打算,我会告诉你暂时没打算,但99.9%不会选择上班。
  结尾:这些都是关于个人这一年半的遇到的事得闲谈,想法也不代表是对的,但都是我自己的想法。大家从文章可以感觉得到,写文章的时候心情却是很浮躁,老是静不下来,没办法,年底的麻烦事太多了,很多烦心事要处理,年关年关,这个年关怎么过?...(待续)
阅读(...) 评论()相关文章推荐
在这个炎炎夏日的周六夜晚,坐在电脑旁边的我静下心来,认真的review了一下本周在公司的工作情况,内心竟有些波澜,遂提笔而写。(以下文字纯属有感而发,非技术文)。
我们公司有个新...
生活目标其实就是一件如果你愿意投入精力去做,就可能达到的事。怎么找你的目标呢……...
本文完全是我自己对软件外包认识,可以说是个“议论文”,请大家看的时候可以从自己的角度出发,来感受这篇文章里面所涉及的内容。 我所知道的外包人员的职位: 1. 程序员。 2. 软件测试人员。 3. 实施...
programmer_sight
聚焦职场生活、职业选择、适应、发展、转型、技能Get,有料,有趣,有能量。
我在微信订阅号“程序视界”的...
版权声明:本文为foruok原创文章,原文转载至http://blog.csdn.net/foruok/article/details/。
目录(?)[+]
我在“漫谈程序员系列:咦,你也在混日子啊”一文中描述了一种混日子的现状,有朋友说该文只提到了设置目标告别混日子而没有展开论述“如何设立目标”、“怎样为目标而努力”这两个关键问题,也就是说,我提出了问题...
健康程序猿系列之男人晚睡的7大危害前言
作为一名合格称职的程序猿,熬夜加班是一种习惯,但是这种习惯对自己是百害而无一益的。别让坏习惯影响了自己的健康。危害
你知道晚睡对男人的危害有...
程序员啊,难道我们就是为加班而生的?
作为一个程序员,你不能接受哪些话?你又说过哪些伤人的话?
程序猿是一种近几十年来出现的新物种,是信息革命的产物,在行为和物种归类上我们也可称为码字猴。程序猿是人类在科技研究上的一种新兴进化,拥有无与伦比的耐力、超越时代的智商、横穿社会的苦逼相和低于人类平均寿...
他的最新文章
他的热门文章
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)}

我要回帖

更多关于 一句话证明你是程序员 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信