‘壹’ 为什么程序员是一个跳槽比较频繁的职业
程序员这个行业存在着这样的现象,有些刚毕业的大学生因为没有见过世面,一不小心被忽悠到那些处在创业阶段的“公司”,拿着实习生的工资干着全办公室的活,而且经常被老板拉过去谈人生理想,刚毕业的程序员都是涉世不深的小男生,那里经得过这些老狐狸的忽悠,一招画饼充饥就在那幻想未来美好生活了,但凡事都得有个度啊,时间久了次数多了,小白也变了,只能跳槽另谋出路。
我觉得跳槽的主要原因有两个,一个是自身原因:因为大多数刚出来实习的程序员大多数对工资方面的要求不是很高,因为他们也知道,自己现在是属于学习阶段,知道自己的价值是多少,所以一般不怎么要求工资,但是一旦工资几个月之后,对整个体系有了较大的了解之后,就要要求有对等的工资,因为在一个技术部里面每个人的工资都是不等的,这样会觉得自己有那价值但是没有那回报,心里也就有些变扭,也就有了跳槽的想法了。还有一个就是当自己有过硬的技术时,一般也会考虑自己出去单干接项目做。
另外一个就是公司体系问题,在国内外包公司之多,所以大多数的程序员也是在外包公司做,而外包公司的规模参差不,大多数也是在剥削压榨程序员,各种坑也是居多,管理层体系混乱,这也是造成程序员跳槽的原因
1.互联网技术风起云涌,变化之快。公司制定的涨薪制度都有着统一的标准,不会因为某个编程语言热门而增大涨薪幅度。但是新进员工的薪资待遇往往是根据市场幅度在变化的。 so,常常听到老员工抱怨,那个新来的谁谁谁,哪哪都不如我,工资却比我高。
2.据不完全统计,互联网行业的创业公司从天使走到D轮概率尚不足2%。大量初创公司的关门倒闭,致使一些程序员“被迫离职”。
3.互联网公司会根据市场的变化做一些战略调整,内部转岗已是家常便饭。比如本人之前所在的项目组,所做的产品是web端的直播平台。后经市场调研,公司打算将重心放到移动端,部分web组的老员工也就转岗到了移动端小组。 我想说的是,如果企业内部的调岗不符合个人的职业规划,那么也是程序员跳槽的一大原因。
不邀自来,本人目前从事嵌入式软件开发,也算是程序员大军中的医院,下面来回答一下这个问题:
按理说,薪水高,工作环境尚可的工作一般都是很稳定才对啊,但是据一份调查发现连Google,Amzon这些大厂的程序员的平均在职周期都只有1~1.5年,可见程序员频繁跳槽不是我国或是某个企业特有的,一线国际名企都如此别说国内小厂了, 那么为什么造成程序员为什么会如此平凡的跳槽,我们来分析一下:
IT产业发展迅猛,市场需求旺盛,程序员有更多选择
虽然我国的计算机行业起步很晚,但这不影响IT产业在我国的迅速发展,发展就需要相关内容的人才,同时我国计算机的培训起步也不是很早,早起的人才主要是理论研究并不都是真正写代码的,供求关系不平衡,导致程序员在就业市场上比较抢手,各行各业一旦某种人才紧缺自然导致有价无市的感觉,所以,各厂想尽办法招聘让程序员,诱惑多了选择自然多了,选择多了跳槽就频繁了,这是见怪不怪。
IT行业存在一种“倒挂”的行业怪象,程序员更愿意跳槽
“ 倒挂 ”是指在某个行业内部,由于行业的特殊性,从业人员的薪酬待遇和业务能力以及技术水平不相关的现象,这种现象尤其在程序员行业存在,一个刚大学毕业的新鸟在待遇薪酬方面可能秒杀一个已经工作四五年的优秀程序员,换谁也受不了,没有工作经验还需要人带的新人工资居然比带他的人高,有些企业宁愿花5000块钱新招一个新人也不愿意多给老程序员多加1k来完成同样的工作,坐等通过技术积累来加码自己的报酬的希望破灭后,那些受到不公正待遇的程序员通过跳槽去涨薪了,在猿圏有句话更能说明这个问题“People who stay in one spot earn less than those who move(经常换工作的人比那些安分守己的人赚的更多)”。
公司没有给程序员提供良好的职业发展规划
虽说职业规划都是自己为自己规划,但是自己的规划能否按计划顺利实施很大程度上取决于公司是否为自己的员工有良好的职业规划,显然,一家没有为程序员薪酬增长和职位升迁做过精细规划的公司,让程序员不在有安全感或是让他们没有期望,换做谁都得跳槽另找下家。
程序员厌倦了代码工厂式的工作,想尝试新鲜的东西
计算机行业是一个日新月异的行业,此外程序员是一类喜欢挑战新技术的特殊人群,很多公司的业务模式单一或是业务稳定了,程序员的工作变成流水线的单调模式,他们早已厌倦了日复一日的代码搬运工的工作,一旦尝试新的技术并且一改往日的单调与无聊,那么它们会在合适的机会换个领域,此外,程序员是青春饭行业,代码工厂式的工作会让他们没有安全感,因为这会让他们失去市场竞争力。
从业人员层次不一,淘汰提高了程序员跳槽的几率
IT的迅猛发展,在巨大市场需求的推动下,编程行业门槛编低,导致从业人员良莠不齐,可能一时的冲动或对自身判断不足而走上程序员之路,很多人发现程序员并不是媒体所报道的光鲜亮丽,工作压力大,无休止的加班都会使一些不适合做程序员的人淘汰出局,这在职场非常常见,尤其是刚毕业的新人,这就外界感觉程序员跳槽更频繁了。
提到跳槽比较频繁的职业,我想除了题目中提到的程序员之外,应该还有餐饮企业的服务员,餐饮企业服务员跳槽基本就是三种情况,一是薪资低,二是工作好找,三是工作时间长。
我们再来看看程序员跳槽,其实也不外乎是这三个原因。
一、薪资低
看了这一条,你可能会说,程序员薪资怎么会低,刚毕业的就能拿到个7、8千块,如果是硕士毕业就拿个1.5万一点儿不奇怪。
这里说的薪资低不是指薪资行情低,而是每个人都觉得自己的薪资低,对于程序员来说薪资水平差异很大,但人们往往并不关注工作本身,或是人的能力而关注的是自己怎么比别人少这么多,但在本公司可能调薪并不是件简单的事,所以只能通过跳槽来实现工资的上涨了。
二、工作好找
程序员现在可以说是一个热门岗位了,从业人员比较多,但是需求量也很大,如果你是个程序员,简历更新之后,估计每天5、6个面试邀约电话都算少的。因为工作好找,所以工资势必也就水涨船高,谁也不怕裸辞,工资要求不高,只涨个20%今天离职,估计3天后就能有新工作。
三、工作时间长
程序员工作时间长是大家有目共睹的,有个说薪资高,工作时间长很正常,但人的欲望总是无止境的,没钱的时候想要钱,有钱的时候想要时间和自由,薪资支撑的满意度最多也就能维持半年,长时间高负荷的工作会让人产生厌倦,这个时候就会觉得自己工资的性价比不好,要么找更高工资的,要么就找没那么累的。
因为现在部分公司涨薪速度比较慢,跟不上市场的价位。
打个比方:
如果你有拼搏精神,愿意在下班后精进技术、学习,
等几个月后技术成熟了再跳槽,可以一下子就翻倍,甚至直达15k。
但是要正确地跳槽:
第一,找一个符合自己期望值的平台,让自己的价值和技术得到最大的发挥。(这里和薪资没有关系,最重要的是适合自己)
第二,不要只为了加薪而跳槽,不断地去一个新地方,自己的职业生涯也在不断地清零,不符合长期的发展。
引起程序员跳槽的原因有很多,但是在所有的岗位中程序员的跳槽频率确实高于其他工作岗位,一般程序员跳槽的原因有这么常见几点:
第一、由于互联网是一个很不错的创业方向,很多人有着不错的创业项目,然后开始组建自己的技术团队,这时候就需要很多的程序员组成产品开发,而由于程序员的工资支出较高,往往在产品还没有进入收益期的时候公司很难支撑下去,或者缺少产品推广资金,这时候程序员就会面临跳槽的可能。
第二、在成熟的互联网企业中,由于项目的开启,而组建新的技术团队,随着产品上线,企业将更多的精力投资在产品的运营上,而对做技术的程序员来说每天的工作都是很清闲,失去了项目研发期的忙碌,让程序员感到无所适从,从而引起跳槽。
第三、就是大家常说的一点,不跳槽怎么加薪。这也是程序员跳槽比较普遍的一个问题了,很多人由于不满现在的薪资待遇,但自己却有了很多的项目经验,所以选择找下家公司,通过以往的项目经验来提现自己的价值,从而达到自己想要的薪水,这也就是程序员找工作的时候,工作年限时间是一个因素,更重要的是一共参与开发了多少项目,并且更具项目的大小代码量是一个较为重要的因素。
第四、就是有些程序员是追随技术的,他们认为在软件开发的外包企业中虽然每天都有繁忙的项目要完成,但是对自己而言却是千篇一律的重复性代码的敲写,甚至是直接使用企业自身比较完善的库或者框架完成程序的开发,觉得对自己的技术提升没有太大的帮助,从而选择跳槽。
第五、接受别人的老项目进行改造,由于原先的程序员并没有留下太多的技术文档进行参考,所以每天都在纠结一句一行的代码,再就是程序开发的很多思维思想并不清晰,这就让程序员很纠结了,所以在与老程序相爱相杀了一两个月后,实在受不了上级的催促以及难以完成代码的整理重构而离职,放弃。
欢迎程序员的你在评论中分享自己的跳槽原因和经历
作为一个在这个行业呆了十几年的老人感觉上程序员这个职业算是跳槽频非常高,据不完全统计程序员流动性不低于百分20,相比别的职业已经算是很高的了,为什么程序员这么容易跳槽,由于程序员这个职业特殊性决定的,是什么推动了程序员这么多跳槽的勇气。
1.就目前中国软件行业的发展,虽然说程序员的数目越来越多,但高手却是急缺,主要还是前期积累不够,再过些年可能会稍微改观些。技术高手的数量在上升但是软件公司的数量以及业务需求的增加更快,所以给人一种很直观的感觉,很多大公司是一直处于缺人状态。
这种状态催生了程序员的跳槽,有更好的待遇,为什么不选择跳槽,这也属于人之常情,有些程序员离职也不是因为呆的多不开心,而是外面的诱惑实在太大,出来混还不是为了多挣点钱,有待遇更好的就走人。
2.程序员这个职业本身来讲属于重度的脑力劳动,说的再夸张点就是吃青春饭,毕竟年龄大了竞争优势在减化这是不争的事实,趁着自己还年轻还能拼的时候,去挣钱多的公司,其实还存在一种大家容易忽略的现象,整天的加班加点很容易造成一种很压抑的心情,换个公司换个环境放松下,可能会人觉得有点矫情,但现实中的确存在很多,或者在薪资相差不大的情况下,换个加班稍微少点的公司,这都是换公司的理由。
3.现在很多招聘网站特别是一些猎头网站滋生了,程序员的不稳定性,把程序员当作商品来运作了,很多猎头只要在网上搜到合适的人,就开始千方百计的运作,真有点经纪人的感觉,这种无形之中增加了程序员的不稳定性,而且也在无形推动了这个行业薪资的上涨,其实很多人值不了那么多钱,但物以稀为贵,现实就是这种状态。
目前市场上讲,程序员的薪资的两极化越来越严重,水平差点的大家都不想要,水平高的大家都跟打了鸡血一样争抢,很多人觉得程序员这个职业已经不行了,主要还是没爬到食物链的顶端,把技术搞得扎扎实实的大把机会等着你。
希望能帮到你。
因为对其他的行业不太了解,所以也没办法对比出来程序员跳槽是不是比较频繁。
我身边的程序员,有在一个单位工作十多年的,有像我一样平均三四年换一家单位的,也有跳槽比较频繁的,平均每年都会换一家单位。
能频繁跳槽,我分析不外乎几点:
岗位多 特别是在北上广深这些IT行业比较发达的城市,程序员真的是不太愁找工作(工作能力不错的前提下),真的可以说,在一家单位做的不爽了,直接在招聘网站上把简历打开(招聘网站上的状态设置成考虑跳槽的状态),就会有不断的有面试电话打进来(当然大多数主动打电话的单位都是外包,哈哈)。
我跳槽的时候,都是主动给心仪的公司投递简历,基本都是可以得到面试机会的,而且通过率也挺高。
大部分IT公司,每年涨薪都不是很多;而跳槽一次的话,至少得涨个30%吧。
我在第一家单位的时候,起薪3K,每年涨500-1000,是不是很可怜。第一次跳槽,工资就从5K涨到了8K。
第二家单位第二年就涨到了12K,但是从此以后,就是每年涨1K的龟速了。第二次跳槽的时候,月薪虽然涨的不是特别多,但是按照年薪计算的话,应该涨了有60%以上了。
当然也有涨薪比较快的单位,我的一个朋友在一个神奇的网站工作,研究生毕业工资一万左右,现在工作有三年了,刚刚涨到了20K。如果你在这种单位,好好珍惜吧。
在外包公司的,想去一个非外包公司,跳槽。
传统行业的,想去互联网公司寻求技术发展的,跳槽。
互联网公司的,想去传统行业养老的,跳槽。
小公司的,想去一个大公司,跳槽。
大公司的,想去初创企业当个技术合伙人,跳槽。
......
欢迎大家在评论中分享自己的跳槽原因和经历,还有说说跳槽涨了多少钱,哈哈。
干得不爽,只好选择辞职。作为一名老程序员,在一家创业公司做了三年多互联网开发,我现在终于解脱了。三年中加了两次薪水。第一次700,第二次770。第二次年头加薪,我要求提高500,老板说董事会规定一次只能加那么多,然后要到6月再满足我。于是到了6月份,我发现并没有提高500,问之,说到7月份加。快到7月份,有一天晚上项目经理要我留下来加班,我饿着肚子一时间也搞不定手上的任务,就擅自回去了。结果,老板知道了就取消加薪计划。5月份以来公司制度越来越严格,首先是安装摄像头全日监控员工行为,其次规定上班时间不准使用手机,除非工作需要;再次,除了查技术资料,浏览各大网页需要申请;制度下来后,公司天天像在牢房里渡过,这样的工作环境,请问大家会喜欢吗,能否继续坚持?我是走了……
为什么程序员是一个跳槽比较频繁的职业?
因为好的程序员确实值钱,连带着不那么好的程序员也相应的值钱了。
其实是现在这个行业导致的,互联网的世界里,就算是一头猪站到了风口上,也能飞的比大师兄还快。
不是你不明白,是我变化快程序员本身是干技术活的,技术迭代比较快,所以一般程序员都有较强的自我学习能力和自我迭代能力,随着时间的延续,本身的能力水平提高了,那么肯定期望与之匹配的待遇,但往往很多公司的迭代速度是很慢的,承担不了程序员这种高薪成长,所以往往满足不了程序员的需求。
那么只能跳槽啦!
老用户与狗不得办理
还有就是,往往软件公司也好,互联网公司也好,很多老板都喜欢招新人给高薪,但是老人年年不涨薪,最后的结果就是老人纷纷离职,这种情况也造成了外界看来程序员频频跳槽的现象,但往往都是情非得已啊。不给涨工资啊。
那么只能跳槽啦!
跳一跳更 健康
老公司的暮气沉沉和新公司的造气蓬勃形成了鲜明的对比,在老公司任劳任怨,每年涨薪不超过10%,但是一跳呢,工资普遍double,这种风气形成并且传播,明眼的程序员肯定待不住了啊。
那么只能跳槽啦!
其实苦的是HR,老板不给力,还让留人,你告我咋留!!!!!
‘贰’ 一名java程序员是如何走向巅峰成为一名阿里
你好,在例如阿里巴巴这样的bat互联网大厂的程序员,都有非常明确的职级体系,具体如下。
1、阿里工程师岗位职级
阿里巴巴集团采用双序列职业发展体系:
一套体系是专家路线【P序列=技术岗】,程序员、工程师,某一个专业领域的人才,一共分为14级,从P1到P14,目前校招最低从P4开始。
一套体系是M路线,即管理者路线【M序列=管理岗】,从M1到M10。
一般来说,应届毕业生刚入职到阿里为P5,工作1-3年之后升职到P6,阿里一般到P7才给配股票。
阿里P8架构师作为阿里的“IT架构灵魂人物”的角色,他们不仅做着架构师的本职工作,还同时做程序开发,写核心代码的工作。另外,架构师依旧是技术高手,编程能力依然是一流的。
但根据当前的市场需求,互联网大厂们对于普通Java开发人才需求逐年锐减,而对互联网架构师人才的需求招聘量已经上升到50%,因此薪资更是不可同日而语。
对于想学习互联网架构师的同学来说,北大青鸟、课工场等优秀品牌都是不错的选择。课程根据招聘需求制定,包含全部分布式微服务技术,对标阿里P8级别架构师。
希望我的回答对你有所帮助
‘叁’ 程序员线上接单靠谱吗哪里可以直接与甲方沟通
程序员线上接单是一种常见的自由职业方式,具有一定的灵活性和自主性。但是,也存在一些风险,如可能遇到骗子、赖账等情况。因此,在接单前应该仔细了解甲方的信誉和资质镇派,签订合同并考虑可行性和风如明险控制等方面。
如果您想直接与甲方沟通,可以通过一些平台来实现。比如,一些自由职业网站和平台,如猪八戒、码市、开源中国等,提供有相关的线上接单服务,可以选择相应的项目进行接单,并通过平台与甲方沟通,以保证项目的安全和可行性。同时,这些网站或平台也提供信用评价机制,可以更好地评估甲方的信誉程度,渣旅告并降低风险。
‘肆’ 工作一到五年的Java程序员遇到瓶颈应该如何提升
工作了5年的Java程序员,该如何提升,做了3~5年Java开发,你已经积累了不少项目经验,扩宽了技术广度,也许已发力成为团队管理者。到了这个阶段,大家却常有这种感受:感觉自己卡在瓶颈进步缓慢,技术水平很难像早期一样实现大幅突破?
其实大家往往忽略了这一点——提升自己的架构认知(工作5年左右程序员必须重视架构认知的提升,这会很大程度上推动你今后的成长)。架构的本质在于面对业务场景给出优雅的解决方案,使得业务能够快速迭代和持续交付,从而达到降本增效的目标。提升架构认知高度,就像达克效应所描述的一样,要敢于从愚昧之巅跳到绝望之谷,通过爬升开悟之坡,从而达到架构认知的巅峰时刻。到达巅峰时刻也就掌握了架构背后设计的哲学,面对具体业务场景在架构层面你便能够轻松应对,以无招胜有招。
提升架构认知,要紧抓3个关键点:业务洞察力、技术视野、原创力(执行力)。
1.业务洞察力是技术战略层面的问题,在当下能够做出合理的判断,清楚公司做什么事情收益最大;
2. 技术视野即技术选型能力,是技术战术层面的问题,在清楚做什么事情后,需要进一步解决怎么做的问题,也就是能够给出合理的技术选型方案:是完全基于开源的方案,还是基于开源二次开发的方案,还是完全自研的方案;
3. 原创力(执行力)是技术落地执行层面的问题,一旦技术设计方案确定后,需要能够快速Rush完成。
这3点层层递进,最重要的是先把技术战略问题思考清楚,然后再进一步解决技术战术问题,最后是快速落地执行的问题。
工作5年左右的程序员,在原创力(执行力)层面比较有竞争力,往往欠缺技术视野以及业务洞察力。后面2点更加重要,这2点解决的是架构设计哲学问题,是架构师能够持续拥有竞争力和影响力的立身之道。
举个场景的例子来详细说明:一提到分布式锁问题,大多数人想到的方案是基于Redis的Master-Slave模式来实现。这个实现方案行不行?分布式锁本质是一个CP需求,基于Redis的实现是一个AP需求,乍一看基于Redis的实现是无法满足的。脱离业务场景来谈架构都是耍流氓。
从技术战略的需求层面来看,如果分布式锁在极端情况下获取锁的不一致,社交业务场景能够接受,那么基于Redis的实现是完全可行的。如果业务是交易场景,分布式锁在极端情况下获取锁的不一致性无法接受,那么基于Redis的实现方案是不可行的。在锁强一致性的场景下,需要采取基于CP模型的etcd等方案来实现。
‘伍’ 程序员在上班时,允不允许大量的看说明文档来帮助写程序
程序员日常开发工作,基本是上离不开阅读文档,这也是很多程序员喜欢两个显示器的原因。
项目方面
技术方面
是不是很多人都认为,如果在开发过程中,还要不断地翻技术文档,说明他的开发能力不扎实。其实不是这样的。
首先IT行业技术升级换代的速度太快,当我们大多数公司还在用Java8的时候,Java11都已经出来了。如果非得要程序员熟知每一个类、每一个方法,是很不现实的。
很多时候我们只需要了解有这么一个东西,作用是干什么的,具体的细节可以在用的时候再去翻文档,比如方法名字是什么?参数有几个,都是什么类型的?
所以我们都习惯至少两个电脑屏幕,一个屏幕写代码,一个屏幕看文档;如果豪一些的话,再加一个屏幕展示日志信息。
看文档的屏幕要买竖屏!
我们团队
我这几年也带过几个团队,对于每个团队成员,我对他们的要求是:实现需求的前提下,最好能对所用的技术有一定的了解,千万不要从网上抄过来一段代码就用,这样是很危险的行为。所以鼓励大家多找一些资料,最好是阅读框架的官方文档。
现在的团队,我已经这样要求了:代码写累了,或者觉得自己没有状态写代码,可以找点儿自己有兴趣的技术文档学习学习,这个技术甚至是可以跟现在的项目没有关系的。
首先,我不是程序员,我是一个设计工作者,不过我来说一下我的观点:很多人以为程序员像电影里的一样,啪啪啪几下键盘,屏幕数据飕飕的变,其实真实情况是程序员写代码就像学生写作文,也会遇到不会的词语跟修辞手法,那这个时候就要停下来想一想,查一查,看看例子是怎样写的怎样用的,写错了还要划掉(删掉)再来,至于这个大量不大量看的情况,如果这个是个新手,那肯定是可以的,那如果是个老手,还需要大量时间查说明文档,那就说明这个项目肯定不会小,不是一两天能做完的,那一个用月做单位的项目,用一个天做单位的时间来查文档,不过分吧!程序员也是人,不是因为他的工作高端,就觉得这个人万能,他也会当机,要吃饭,要休息,也会忘记一些东西,所以请各位多多体谅,能一起工作实属不易,感恩2018,谢谢。
这个问题怎么说呢,开发过程中会遇到各种各样的问题,没有一个人是全能的,也没有人可以绝对的说自己在整个项目中不会遇到一点问题,不去查东西,自己大脑里的东西完全可以让我把这个项目测测底底的做完,并且没有任何bug。
上班的时间,也没有老板或者谁在后面一直看着你去做东西,大家都挺忙。文档是干嘛的,文档本身就是用来看的,甚至很多项目开始之前,总监都会让你去搜集一些这个项目可能会遇到的bug,可能会用到的效果,尽量在之前找到比较好用的插件,这样会节省很多时间,自己如果写代码的话不可能百分百的确定没有人和bug,但插件不一样很多插件都是前辈通过很长时间慢慢完善出来的插件,所以很多人才会用。所以你提问的可以肯定的回答你允许。
程序员上班的主要工作就是看说明文档,根据说明文档编码。如果实在没有说明文档,有时还得亲自披挂上阵写说明文档。
写接口的有API文档,写通讯协议的有协议字段说明文档,写数据库的有数据库规范文档,
总之任何一个大公司文档扮演的一个至关重要的问题,因为形不成文档,公司管理就会陷入混乱不堪的局面,当某个核心员工离职后,下一个接盘的程序员会丈二和尚摸不着头脑,一头雾水,边填坑边骂娘,有了文档就可以看文档结合代码,了解其中模块逻辑以及结构,包括哪些坑不能踩等等好处。有些公司会专门有文档工程师这个职位来专门负责整理各种文档,并且保存在服务器上。
好的文档都是程序员等人智慧的结晶,是一盏指路明灯,是一条通往光明的道路。程序员不能看说明文档等于在黑暗里摸爬滚打,有了说明文档才迎来了黎明的曙光。
说个我遇到的2个真事吧,
第一个,公司找的外包公司写项目程序,已经要交付了,发现有几个功能没做,产品经理和开发那边都找我,我一个搞运维的又不懂,只能让他们去对开发文档,我也就顺便看了看,开发文档中明确的写明怎么做,然后就让他们就重新按开发文档继续写,
另一个,由于 历史 原因业务系统处于托管状态,只有部分参考文档可用,开发那边只能按当前已有文档进行开发参考,开发那边也一直在根据现有相关文档进行开发,杯具的是这帮子不仔细看,有问题总想着我能直接给他们答案,我也只是会用而已,开发我还真搞不来,然后和他们一起看开发文档,加密算法部分给她们指出后,问题解决了。
所以我觉得,开发团队在开发中很有必要阅读开发文档,这可以避免绕圈子,也会清楚开发文档中提供的内容。
先说观点,我认为看文档没什么问题,但是“大量”这个程度很难衡量,按照需要看文档是个非常重要的事情。
需要花费时间的情况 不需要花费大量时间的情况 小结
在工作中阅读文档其实也是工作内容的一部分,而且现在大多数互联网公司都靠KPI进行考核,平时就算你把时间都用来看文档没关系,最后KPI没完成一样会被公司淘汰。所以公司不会阻拦你花费时间看文档,最多你老板会提醒你浪费这么多时间看文档而没有实际的产出会对你年终考核造成影响罢了。
题主对文档的定义不是很明确
第一个是需求说明文档
这个是在开发过程中必不可少的文档,只有清楚了开发需求,程序员高效率的开发,程序员一天的工作时间并不是都是在写代码,而是在看文档,了解需求,理清思路,只有什么都清楚了,写代码或许只要十几分钟。
再者对于一个项目新人来说不看文档了解需求,没人给你从头到尾的在讲一遍需求,你不看文档自己发挥?进入项目是和别人共同开发,你不肯能不顾及之前的代码规范。
第二个是开发文档
就拿微信开发来说,微信开发不是每个程序员必须会的东西,但是用到了怎么办,还不是去看他们的开发文档,只有将开发文档思路理清楚了,才可以进行下一步开发。
第三个是API文档
在前后端分离的开发模式中API文档是必不可少的文档。不看API不知道数据是什么样。也就是不可能顺利的和后端进行结合。
兄dei,假设你是程序员,你在写程序时,旁边会有人守着你吗?
假设你不是程序员,你在做本职工作时,旁边会有人守着你看你怎么做事吗?
答案肯定是没有的。谁会闲着招个人去监督你,看你用什么方式去完成给你的任务。
所以,其实你看不看大量文档,没有人会在乎,关键是你自己,建议自己写东西时,不要一味的复制粘贴,要有自己的想法。太依赖文档对于自己成长很不利
当然允许看文档。
要知道,随便哪个类库,都有无数的类和方法,每个方法又有若干参数,鬼知道它们都是什么意思,谁的脑子能记得那么多内容。别说是人家提供的类库,就是自己写的代码,过一段时间也不记得什么意思了。没有注释和文档,怎么看懂代码?
如果没有需求分析文档,程序员怎么理解正在开发的这个软件的基本业务流程?
如果没有架构设计文档,程序员怎么理解软件各个功能模块之间的功能与业务逻辑?
如果没有接口文档,那么多类和方法,都怎么调用,会返回什么值,难道靠猜?
……
在日常开发工作中,不仅允许看文档,还会强迫你写文档。如果你写的文档别人看不懂,别怪领导骂你不认真。文档对于软件开发的重要性是不言而喻的。
还有一个秘密告诉你,那些经常写文档的程序员,要比不写文档的程序员工资更高。
真的!!!
迎娶白富美,从会写文档开始!
这个问题要根据具体开发的功能模块来看,不过原则来说,花大量的时间看说明文档,至少给人的印象是经验不够丰富,开发能力有待提高。
具体来说,如果是普通的功能开发,技术挑战不大,这种如果还要看文档,会被认为是开发能力问题。如果是有一定的技术挑战,公司在这方面的积累比较少,开发团队也对此有共识,这种问题看文档无可厚非,当然如果能业余时间学习相关的知识,会给团队留下开发能力强的印象。对于一些前瞻性研究,公司没有任何技术积累,或者全新的技术方向,这个看说明文档是加分的,甚至可以要求公司购买相关书籍或者在线培训,当然,自己啃下来会更NB。
‘陆’ 程序员的压力有多大
作为一名程序员,压力来自于生活中各个不同的方面,写代码完成工作只是一部分。
第一就是来自家庭的压力,其实和大多数人一样,程序员的第一压力来自于家庭。单身的被催婚,结婚的又为生活中的琐事各种闹心。所以一个和谐稳定的家庭可以减少程序员绝大部分压力。
第二是来自学习的压力,为什么是学习呢?因为IT技术变革和更新非常快,不想落后就得不停地学习,一个不擅长于学习和研究的程序员职业道路走不远,因而也会因为自己的学习脚步跟不上而产生恐惧。
第三是来自房子的压力,大多数程序员特别是在一线城市的,想买房太困难,去二三线城市发展,薪水很低,所以就像一个围城效应。有房产的程序员就比较自由了,没房产的就会压抑一些。
第四种压力,工作!没得说,遇到坑跪着也得填完。
第五种就是年龄大了干什么工作的压力,毕竟程序员是青春饭的,到了35岁左右可能公司就要裁员了,随着年龄的增长可能脑力活着学习能力都在下降,敲代码熬夜的话可能会熬不住的。
关于程序员压力的问题,网上普遍认为程序员“压力大”、“996”、“易猝死”,就算直接采访程序员:“你压力大不大”,估计不同的人也有着不同的答案;下面我根据十多年的程序员工作经验,谈谈自己的看法。
关于加班,关于996
首先不能否认,作为程序员,几乎没有没加过班的,只是加班多少的问题。有些公司常年996,甚至到半夜也是经常的事情;能够正常下班的公司,也至少在需求紧急的时候,项目上线的时候加加班。我现在在一家金融公司的IT部门,这些时候都是需要加班的:
但是,根据我的观察,很多公司、很多人996都是 “政治996” ,他们的工作量并不需要996,而是因为公司要求、领导要求、回家也没事儿干等原因,留在单位直到很晚。对于真假996我的看法是:
程序员的压力究竟有哪些?
那么程序员的压力究竟有哪些,在我看来,有这几个方面:
不过在我看来,哪些行业又能说毫无压力呢?既然选择了这个行业,那就坚持下去,如果真的觉得自己不太适合做程序员,那就果断转行。
我将持续分享Java开发、架构设计、程序员职业发展等方面的见解,希望能得到你的关注。
项目工期的压力
从我的从业经验来看,尤其是从事互联网行业的程序员压力是很大的,经常会遇到来自运营那边的紧急需求,比如什么时间要上线个活动,时间都卡的很死,如果上线不了,对整个公司来说影响很大,我还清楚的记得,有一次公司临时来了一个很重要的对外的合作,公司要求七天内上线,如果不上线,就会影响投资方对我们的投资,没办法啊,我们整个开发团队,七天没回家,在酒店住了一周封闭式开发,幸运的是,我们完成了,如期完成了项目上线,类似这样的事情还比较多,有时候会让人心力憔悴,还好那段时间我们年轻,扛了过来。
加班的压力
首先选择这一行,我们就应该有清楚的认识,加班是避免不了的,比如 996 这个概念有一阵子被炒的很火,我个人觉得,在一段时间内,比如为了赶一个项目上线,进行996我觉得是可以接受的,但是长时间,比如一年两年都是这种状态,你就得思考这正常吗?问题出在哪了?这个公司是不是值得呆了?其实出现这样的情况,大多数是内部管理问题或者所谓的领导为了迎合老板的喜好,政治996,如果收入又不高,占用太多的私人时间,就没有了自己的生活,除了工作就是工作,你没有办法去提升自我,长久下来,你的技术会与时代脱钩的,建议尽早离开。
年龄增长,工资增长慢,收入少的压力
随着年龄的增长,曾经我认为年轻的90后,也慢慢的30了,也不小了,大多数已经结婚有孩子了,虽然到了这个年纪,工资大概能到2万左右了,但是这两万真的够用吗,房贷,孩子教育,赡养老人、自己的各种生活开支,算来算去,自己能留下的钱已经所剩无几了。
我曾经看过《云栖社区2017中国开发者调查报告》中显示中国开发者月收入水平在10000元以下的占49%,另有32.2%的人月收入在1万~2万元,真正月入10万元及以上的高收入群体仅占1.4%。 社会 普遍认为开发者群体是高收入人群,而实际上,相当多的人并不是。其实我们大多数程序员只是一个普通的打工仔而已。我们要正确认知这个现状,拿高薪的只是少数而已。
技术更新太快的压力
作为开发的我们深有体会,就拿我从事的前端来说,前端几乎每年都有新的东西出现,有时候还没学完,新的版本又出来了,为了让自己的职业有保鲜期,不落伍,只有不断的逼迫自己学习,不能有丝毫的放松。及时自己从事了管理岗位,对技术我也不敢丝毫的怠慢,还是在不断的充电和完善。
每年涌入不少新人的压力
我们都清楚,如果要是从事基础的编程工作,门槛并没有想象的这么高,基本上培训学校出来的人只要有几个月的时间,高中基础的人,出来以后也能上手基础的项目工作。因此造就了每年有大量的新人来到这个行业,刚入门的新人,工资低,又年轻,多少对我们这些比较一般,还从事基础编码的程序员增加不少压力。没有谁是不可替代的,即使你是老员工,有时候公司为了生存和发展,也不得不牺牲一些人老人,去招聘能力又强又便宜的新人。
焦虑:在别人眼里你很“光鲜”,其实你就是一个普通人
我经常会遇到身边的朋友这么说,你们这些在北京工作的人,尤其是做互联网开发的,年薪也至少50万+了吧,甚至还补充到,我朋友或亲戚谁谁,在BAT、微软、华为做开发都年薪百万了,难道你不是吗?每次听到这个问题,我真的是很无奈笑而不语,难道真的是自己很失败吗,千万不要被身边的人左右了你的心情,你需要清楚的认识到开发者群体中只有少数人能成为管理者或高薪的技术人才,绝大部分还是普通人。一定要把自己的心态放平,不要被这些所谓的外因,让自己整天忧心忡忡焦虑,做好自己就行了。
如何摆脱这些所谓的压力和焦虑呢?静下心来,踏实工作,做好职业规划
首先我们要清楚的认识到我们是一个很普通的人,特别随着年龄的增长,尤其到了中年之后,面临着年轻人的压力同时还有生活的压力,确实要求我们有着强大的内心,生活确实很艰难,千万不要给自己定性认为自己不行了,你越这么认为,生活就会越针对你。
其次想必大家和我都想过这个问题,如果我40岁了,还要和现在一样从事这样基础的业务代码工作吗,环顾四周,这么多小年轻,我和他们从事一样的基础工作,是不是很尴尬,IT行业发展太快,需要不停地学习,年龄大了身体不如年轻人,就容易被淘汰。
然后你还要思考自己是不是一直要走技术路线,对开发来说,经验没有太大帮助(少数还是有帮助的,比如技术架构的能力),而且技术淘汰速度快,就拿我们前端的jQuery框架曾经是多么的火,自从有了vue、react后用的就少了,这就说明了一个问题经验往往很快就过时了,而转管理岗位又太考验天分了,比专研技术更难。技术路线,坚持精进和学习,跟着潮流扩充自己的知识体系,是没问题的。但是开发能力只是个工具,做到最后牛的还是那些思维能力好、推演能力强的人。你在走技术路线的时候,千万别忘记了基础学科的学习,比如数学,计算机基础理论。(搞AI的那帮人水平真高。大部分都是博士、数学等基础学科方向毕业,而且接受过很好的教育,而这样的人才,即使不在互联网行业做开发者,往往也能获得高收入,因此比我们选择更多),所以建议大家在条件允许的情况下,考一下本专业的研究生,让自己的理论和思维更加宽阔起来,及时以后不从事这个行业了,也能有更多的选择。
最后,如果你实在坚持不下去了,无非就是转行,你就要提前思考下做什么,找个一个自己的兴趣爱好,比如先做当下比较流行的自媒体,短视频,或者弄个生意都行,还有一个比较有意思的事情,我也忘记在哪看过的文章,说的是一些一线技术大牛40多岁后,利用自己的互联网思维,搞起了传统的餐饮行业,而且弄的还很不错,可见传统行业也未尝不可,只要自己喜欢,有时候我就想着弄个奶茶店,哈哈。
小节
今天和大家聊得比较多,请大家见谅,我们要清楚的认识到,天无绝人之路,不要杞人忧天,做好自己就行,我们就是一个普通的人,平平淡淡过好自己,做好职业规划,坚持学习就够了,老天是不会不辜负努力付出的人。
对于科班出身的程序员我不是很确定,但是对于非科班出身,尤其是培训的程序员,他们的压力真的是非常大,每一个坚持下来的同学都非常了不起!
金三银四的时候,一位老学员和我说的:自己经人推荐,面试一家大企业,技术面试通过了,但在谈薪水阶段,hr很明显的传达,表示自己是非科班出身,不是特别满意……虽然最后还是拿到了offer,但心中不免有些意难平!
相比于计算机相关专业,作为非科班出身的学员,从开始工作到有2年经验这个阶段,跳槽几乎都会“被照顾”到这个问题,这很容易让人产生对自身的不认可。同时因为基础不够扎实,对所学知识半知半解,不确定更大,从而加深自卑心理。有的时候明明已经学好了,但总觉得心里没底。
焦虑解决不了问题,只能拼命学习!
晚上下班回去依旧学习,像现在的算法,Python都自主的学习;
因为非科班的出身,刚开始基础不算好,所有周末都会去上海徐汇的图书馆学习;
这只是他和我交流中说到的这几句,但是这几句话背后付出了多少努力只有他知道吧,这仅仅只是自己在学习方向的压力!
而面对职场,还有各种各样的压力向每一个程序员袭来,尤其是危机意识很强的人。因为技术变化也是非常快速的,而程序员可以说的上是技术前沿的职业,面对这种变化比旁人是更加清晰的,为了延长自己的职业寿命,多少程序员已经开始自学Python、自学算法了,为的就是在今后的变化中自己能有竞争力!
你说压力大不大,每个人都有压力的,毕竟 互联网带来了机遇,也放大了焦虑,在焦虑面前,谁能淡然一笑!
没有哪一项工作不辛苦,没有哪一项工作毫无压力。对于我们来说,最重要的是正面压力,让自己成长。
作为一个曾经在Oracle、阿里、网络都待过的程序员,来谈谈我对这个问题的看法。我认为,程序员的压力,一部分来自工作环境,一部分来自内心的焦虑。
来自工作环境的压力
来自工作上的压力是必然的。特别是互联网公司,长期处于快速迭代的节奏, 并且以结果为导向,以成败论英雄。笔者从业多年来,曾经几度面临崩溃的边缘,好在通过不断调整,内心变得强大从容。总结下来工作上的压力可能来自几个方面:
来自内心的压力
身在职场,工作是永远都做不完的。其实更多时候,压力是自己给的。这里笔者主要来剖析一下自己所面临的问题:
做好规划,时刻保持竞争力
有压力不可怕。在外企朝九晚五,也会面临诸多压力。在互联网公司小步快跑,加班成了一种常态,压力更不用说。那么我们要做的只能是调整好自己,直面压力,获取更大的成长。
欢迎关注笔者,每天分享架构干货 。
程序员加班多,压力大,有多大呢?有辣么大!
我不说压力有多大,我就说说为啥压力会这么大。
作为程序员,需要通过编程做出一款产品,然后把产品卖给客户,这样才能有持续的收入。而程序员的压力很多是来自自己公司的销售和客户。
1、自己公司的销售
销售要把产品卖给客户,就需要与客户坐下来,大家一起开个会,销售向客户介绍自家产品,有时会出现吹牛皮吹过头的现象。比如产品某个功能目前没有实现,或者未来很长时间也不能实现,但是销售已经夸下海口了,不能自己打自己的脸啊,于是,这压力就转到程序员身上了。
2、客户的需求
销售或者项目经理与客户开会,谈某个项目落地的事情。由于客户比较急,要求多少多少天之内落地,于是压力又集中到了程序员身上。
3、还是客户的需求
项目落地了,但是客户的需求随时在变化。每变一个需求,程序员就要改动一次。如果需求变更比较急,程序员又要加班加点了。
程序员的压力总是有的,在压力中挺过去海阔天空!
程序员的压力有多大?
压力肯定有,至于说程序员的压力是不是最大的,那就不知道了。各行各业的压力都大,主要压力来源于几个方面,就看自己的调节能力了。
1、工作压力,这个主要根据项目,要求按时交货,必须加班加点完成。特别是产品调试阶段,出现BUG的话,基本都是通宵,想办法来解决问题,有时候连续几个通宵。
2、知识更新太快。前端几乎每年都有新的东西出现,有时候还没学完,新的版本又出来了,为了让自己的职业有保鲜期,不落伍,只有不断的逼迫自己学习,不能有丝毫的放松。及时自己从事了管理岗位,对技术我也不敢丝毫的怠慢,还是在不断的充电和完善。
3、家庭的压力。虽然说程序员的工资高,基本都在加班,没有时间谈个恋爱啥的,家里天天催。结了婚的,由于天天加班,不能好好的陪伴家人,也容易产生家庭矛盾。
4、程序员对年龄要求严格。一般程序员过了35岁,企业基本就不再会录用了,所以程序员必须在35岁钱,完成两件事,一,赚足钱,实现财务自由。二、努力提升成为管理者。过了35岁的程序员,没有走上管理岗位的,基本都考虑转行了。
欢迎留言讨论
都这样了,还有啥说的~
这个需要区分在什么单位或者是部门做开发以及开发软件的性质。工作中的压力来自几个方面,包括如下等一些方面:
首先,工作进度压力是指要在规定的时间完成开发任务,上级确定的开发完成截止时间前必须完成任务,而开发工作具有很大的不确定性,每个系统的开发都和之前的开发工作有不同,虽然所用的技术是类似的,但总能碰上不一样的或者需要公关的技术。所以为了完成任务有时只能加班加点,还要预留足够的时间做测试等,每个人都不想拖项目的后腿,不能因为自己一个人延期而影响整个项目的进展,所以平时最大的工作压力来自进度压力。
第二点,软件开发的技术更新非常快,参与开发时会碰到很多你不熟悉的技术,包括新的技术选型所采用的新技术,也包括开发软件所涉及的业务领域的新技术,比如软件涉及到系统安全,就需要学习加密解密,边学习边开发导致难度增加,还要保证进度,所以压力就大。
另外,如果所从事的是核心系统的开发,比如电信的线上计费系统,互联网的线上实时运行的系统,开发这类系统的压力也会比较大,因为如果这类系统运行出错,则影响会比较大,会导致使用者的经济损失和恶劣的影响,所以从事这类开发的都需要小心翼翼,尽可能的避免出错,需要严格的审核和测试,这种对工作后果的担忧会对开发人员产生很大的压力。
总体来说,程序员的压力还是很大的,但也有一些单位或者项目对开发进度要求不紧或者对成熟的程序员来说没有什么难度,又或者说是不太重要的系统,参与这样的项目会则会相对轻松,但熟悉的工作对开发者的技能提升有限,就看个人如何取舍了。
是很大,这个行业能在这么短时间发展的这么好,应该说是目前发展最好的行业之一吧。发展这么快,技术不断更新升级,必须保持学习的状态,否则很难做好这行,将面临的就是淘汰。
这个行业薪资相对高,从业人员素质比较高,大都不安于现状,每个人都不甘心落后,再加上大多公司都采用末尾淘汰制,不努力的淘汰掉。每年都有大量优秀的毕业生加入,竞争压力可想而知。
钱不是那么好挣钱的,通过薪资就可以看到一个行业的压力。
‘柒’ 转做IT,这些坑你知道多少
选择自学还是机构培训
首先这不是一个问题,只是一个选择。小编认识的大牛中,既有通过自学入坑的,也有培训后步入工作,走上人生巅峰的。不过相对而言,IT培训普遍培训费用非常贵,正常来说顺利找到工作也要半年甚至是一年才能还清。
这个选择的关键问题是自学能否成功。自学成功需要几个前提:
能自己或者在人帮助下找到权威教程或者视频,不要在学习材料上来回切换,从而怀疑自己的决定
能够坚持稳扎稳打的学完一个知识,并配以练习,很多人的误区是认为自己已经掌握,而放弃巩固的机会。事实证明这种学习方式是不牢固的。而且三天大鱼两天晒网的学习态度,学习任何东西都是耗时而且效率不高的,必须对自己的动力和尿性有点基本的认识。
对于学习中自己无法解决的问题是否有足够的动力去解决。其实方法很多,网络上可以解决90%的问题,另外可以找人请教。
经济和身体上是否准备好转换行业
转换行业要做好半年内没有工作的经济准备,如果报培训班的话,更是要将培训费用考虑在内。 很多转行IT的人靠信用卡或者银行借贷来完成培训,甚至有的在很高的利率下借用一些借贷平台的资金,小编是不推荐的。当然,如果能够顺利转行,不是高利贷的情况下总能还完的,但是有些在这些压力下天天玩游戏度日就有些不止所谓。
由于程序员工作的属性,小编觉得腰椎等各种不能久坐,不能长时间学习的人转行的可行性是值得商榷的。
零基础(专业)是否是个问题
由程序员相关搜索关键字排名可以看出,很多人关心没有基础是否能够转行的问题。
这里小编认为对于做程序开发的是否需要计算机专业的问题,答案显然是不必的。
程序开发是门应用的技术,并没有大量背诵记忆的内容,对一名入门开发人员的要求一般是熟悉语法,能写基础的代码。因此门槛不高,有基本的计算机知识,能弄懂26个英文字母就算吧。
据统计,计算机开发从业人员大部分都是非计算机专业的,所以不要觉得非计算机专业会有不可逾越的鸿沟。
英语水平对编程是否重要
英语好对于编程来说是有优势的,很多第一手资料可以从国外网站上获取,但是大部分人也就是仅仅是有少量的单词量而已。
现在不管是google翻译还是网络翻译,都使用了人工智能的技术,能够理解整句或者整段的含义。在必须要查阅英文资料时,使用翻译工具也是一个不错的选择。
是否有从事软件行业的决心
一个人的职业生涯也就短短几十年,选择行业或者转行要思虑周全。
有些人花费大量的精力、时间和金钱转入互联网行业,玩了一圈发现对编程没有很大兴趣而转入其他不相关的行业。
三思而后行是对自己基本的负责态度。