IT八卦

IT八卦

刷爆全网:一个中科大差生的8年程序员工作总结(下)

科技创新王叫兽 发表了文章 • 0 个评论 • 61 次浏览 • 2021-05-14 15:35 • 来自相关话题

2018 年前面说到,2017 年开始频繁出入医院,同时项目也越来越忙,我渐渐的开始喘不过气起来,最后医生也给了结论,需要做手术,手术有不小的失败的几率。我和妻子商量后一咬牙做吧,如果失败就走地下的路子,但是可能需要准备一笔钱(手术如果成功倒是花销不会太大),... ...查看全部
2018 年

前面说到,2017 年开始频繁出入医院,同时项目也越来越忙,我渐渐的开始喘不过气起来,最后医生也给了结论,需要做手术,手术有不小的失败的几率。我和妻子商量后一咬牙做吧,如果失败就走地下的路子,但是可能需要准备一笔钱(手术如果成功倒是花销不会太大),哎,古人说一分钱难倒英雄汉,真是诚不欺我啊,这个时候我已经开始萌生离职的想法了。怎么办呢,生活还是要继续,我想起了经常来单位办理贷款的银行人员,贷款吧,这种事情保险公司肯定不赔的嘛,于是我办理了一笔贷款,准备应急。

项目结束,离职

时间慢慢的时间走到了 8 月份,我的项目已经告一定段落,一颗卫星圆满发射成功,深空项目也通过了初样阶段我的第一份工作也算有始有终了。我开始在网上投递简历,我技术还算可以,沟通交流也不错,面试很顺利,一个月就拿到了 6 个 offer,其中就有大菊花厂的 offer,定级 16A,25k 月薪后来政策改革加了绩效工资 6k(其实我定级和总薪水还是有些偏低了和我是国企,本来总薪水就低有很大关系,话说菊花厂级别后面真的是注水严重,博士入职轻松 17 级)菊花厂的 offer 审批流程是我见过最长,我当时的接口人天天催于流程都走了近 2 个月。

我向领导提出了离职,离职的过程很痛苦,有过经历的人估计都知道,这里就不说了。话说我为什么会选择华为呢,一是当时急需钱,二是总觉得搞嵌入式的不到华为看看真的是人生遗憾。现在想想没有认真去理解公司的企业文化就进入一家公司还是太草率了:

如果你不认同一个公司的企业文化,你大概率干不长,干不到中高层,IT 人你不及时突破到中高层很快你就会面临非常多问题;公司招人主要有两种人,一种是合格的人,一种是合适的人,合格的人是指技能合格,合适的人是指认同文化。企业招人就是先把合格的人找进来,然后通过日日宣讲,潜移默化把不合适的人淘汰掉。

入职华为

经过一阵折腾终于离职成功,开始入职华为。离职我做了一件比较疯狂的事情,当时因为手上有一笔现金了,一直在支付利息,心里就像拿它干点啥。那时由于看病,接触了地下 XX 市场,听说了 B&TC,走之前我心一横买 B&T&C,后来不断波动,最终我还是卖了,挣了一些钱,但是最终没有拿到现在,果然是考验人性啊。

2019 年
成功转正

华为的试用期真长,整整 6 个月,每个月还有流程跟踪,交流访谈,终于我转正了,转正答辩我不出意料拿到了 Excellent 评价,涨了点薪水,呵呵还不错。华为的事情我不太想说太多,总之我觉得自己没有资格评判这个公司,从公司看公司的角度华为真正是个伟大的公司,任老爷子也是一个值得敬佩的企业家。

在华为干了半年后,我发现我终究还是入职的时候太草率了,我当时没有具体的了解这个岗位,这个部门。入职之后我发现,我所在的是硬件部门,我在一个硬件部门的软件组,我真是脑子秀逗了。

在一个部门,你需要尽力进入到部门主航道里,尽力不要在边缘的航道工作,特别是那些节奏快,考核严格的部门。

更严峻的是我所在的大组,居然是一个分布在全国 4 地的组,大组长(华为叫 LM)在上海,4 地各有一个本地业务负责人。我立刻意识到,到年终考评时,所有的成果一定会是 4 地分配,并且 4 地的负责人会占去一大部分,这是组织结构形成的优势。我所在的小组到时候会难以突破,资源分配会非常激烈。

备孕成功

先不说这些,在 18 年时妻子做完了手术,手术居然很成功。休息完之后我们 19 年初开始备孕了,这次真的是上天保佑,运气不错,很快就怀上了。这段时间,我虽然每天做地铁 1.5 小时到公司上班,经受高强度的工作,我心里每天还是乐滋滋的。但是,突然有一天,PL(华为小组长)根我说,LM 需要派人去杭研所支持工作,我是最合适人选,让我有个心里准备。当时我是不想去的,这个时候妻子是最需要关怀的时候,我想 LM 表达了我的意愿,并且我也知道如果去了杭州年底绩效考评肯定不高。过程不多说了,反正结果是我去了杭州。

于是我开始了两头奔波的日子,每个月回上海一趟。这过程中还有个插曲,家里老家城中村改造,分了一点钱,父母执意卖掉了老家学校周边的房子,丈母娘也处理老家的一些房子,然后把钱都给了我们,然后我用这笔家里最后的资产,同时利用华为的现金流在绍、甬不限购地区购买一些房子,我没有炒房的想法,只是防止被通货膨胀侵蚀而已,不过后来结果证明我貌似又蒙对了啊,我自己的看法是:

杭绍甬在经济层面会连成紧密的一片,在行政区上杭州兼并绍 部分区域的概率其实不大,行政区的扩展应该是先兼并自身的下级代管城市。

宝宝出生

不说房子了,继续工作吧。10 月份干了快一年时候,我华为的师傅(华为有师徒培养体系)偷偷告诉我被定为备选 PL 了,虽然不知道真假,但是我心里还是有点小高兴。不过我心里也慢慢意识到这个公司可能不是我真正想要的公司,这么多年了,愚钝如我慢慢也开始知道自己想干什么了。因为我的宝宝出生了,看着这只四脚吞金兽,我意识到自己已经是一个父亲了。

2019 年随着美国不断升级的制裁消息,我在华为的日子也走到年底,马上将迎来神奇的 2020 年。

2020

2020 就少写一些了,有些东西真的可能忘却更好。

在家办公

年初就给大家来了一个重击,新冠疫情改变了太多的东西。这个时候真的是看出华为的执行力,居家办公也效率不减多少,并且迅速实现了复工。到了 3-4 月份,华为开始正式评议去年绩效等级,我心里开始有预感,以前的分析大概率会兑现,并且绩效和收入挂钩,华为是个风险意识极强的公司,去年的制裁会导致公司开始风险预备,虽然我日常工作还是受到多数人好评,但是我知道这其实在评议人员那里,没有任何意义。果然绩效评议结果出来了,呵呵,我很不满意。绩效沟通时 LM 破例跟我沟通了很长时间,我直接表达了我的想法。LM 承诺钱不会少,呵呵,我不评价吧。后来一天开始组织调整,成立一个新的小组,LM 给我电话让我当组长,我拒绝了,这件事情我不知道对错,我当时是这样考虑的

  1. 升任新的职位,未必是好事,更高的职位意味着更高的要求,因此对备选人员要么在原岗位已经能力有余,要么时间精力有余;我认为当时我这两个都不满足,呵呵离家有点远,LM 很可以只是因为绩效事情做些补偿。

  2. 华为不会垮,这点大家有信心,但未来一定会出现战略收缩,最后这艘大船上还剩下哪些人不清楚,底层士兵有可能是牺牲品。

  3. 我 34 岁了

提出离职

另外我一直思考未来想做什么,已经有了一丝眉目,就这样,我拿了年终奖约 7 月就提出了离职,后来部门还让我做了最后一次贡献,把我硬留到 10 月份,这样就可以参加上半年考核了,让帮忙背了一个 C 呵呵,这是工作多年,最差绩效吧。

这里还有一个小插曲,最后这三个月我负责什么工作呢,因为 20 年 3 月开始我就接手了部分部门招聘工作(在华为干过的都知道为什么非 HR 也要帮忙招聘,呵呵大坑啊,就不多解释了),结果最后三个月我这个待离职员工居然继续负责招聘,真的是很搞笑,不过由于我在上一份工作中其实一直也有招聘的工作,所以也算做的轻车熟路,每天看 50 份左右简历(我看得都非常仔细,我害怕自己的疏忽会导致一个优秀的人才错失机会,所以比较慢)其实也蛮有收货,最后好歹对程序员如何写简历有了一些心得。

总结

好了 7 年多,近 8 年的职场讲完了,不管过去如何,未来还是要继续努力,希望看到这篇文章觉得有帮助的朋友,可以帮忙点个推荐,这样可能更多的人看到,也许可以避免更多的人犯我犯的错误。

刷爆全网:一个中科大差生的8年程序员工作总结(上)

科技创新王叫兽 发表了文章 • 0 个评论 • 67 次浏览 • 2021-05-14 15:35 • 来自相关话题

今年终于从大菊花厂离职了,离职前收入大概 60w 不到吧!在某乎属于比较差的,今天终于有空写一下自己的职场故事,也算是给自己近 8 年的程序员工作做个总结复盘。近 8 年有些事情做对了,也有更多事情做错了,在这里记录一下,希望能够给后人一些帮助吧,也欢迎私信交... ...查看全部

今年终于从大菊花厂离职了,离职前收入大概 60w 不到吧!在某乎属于比较差的,今天终于有空写一下自己的职场故事,也算是给自己近 8 年的程序员工作做个总结复盘。

近 8 年有些事情做对了,也有更多事情做错了,在这里记录一下,希望能够给后人一些帮助吧,也欢迎私信交流。文笔不好,见谅,有些细节记不清了,如果有出入,就当是我编的这个故事吧。

PS:有几个问题先在这里解释一下,评论就不一一回复了

1.关于差生,我本人在科大时确实成绩偏下,差生主要讲这一点,没其他意思。

2.因为买房是我人生中的大事,我认为需要记录和总结一下,本文中会有买房,房价之类的信息出现,您如果对房价,炒房等反感的话,请您停止阅读,并且我再这里为浪费您的时间先道个歉。

2013 年
加入上海航天 x 院某卫星研究所

本人 86 年生人,13 年从中科大软件相关专业毕业,由于父母均是老师,从小接受的教育就是努力学习,找个稳定的“好工作”,报效国家。

于是乎,毕业时候头脑一热加入了上海航天 x 院某卫星研究所,没有经过自己认真思考,仅仅听从父母意见,就草率的决定了自己的第一份工作,这也为我 5 年后离职埋下了隐患。这里总结第一条经验:

如果你的亲人是普通阶层,那对于人生中一些大事来说,他们给的建议往往就是普通阶层的思维,他们的阶层就是他们一生思维决策的结果,如果你的目标是跳出本阶层,那最好只把他们的建议当成参考。

13 年 4 月份,我坐上火车来到上海,在一路换乘地铁来到了大闵行,出了地铁走路到单位,一路上建筑都比较老旧,我心里想这跟老家也没什么区别嘛,还大上海呢。

到达单位报道,负责报道的老师很亲切,填写完资料,分配了一间宿舍,还给了大概 3k 左右安家费,当时我心里那个激动啊(乡下孩子没有见过钱啊,见谅),拿了安家费,在附近小超市买好生活用品,这样我就开始了自己航天生涯。

经过 1 个月集中培训后,我分配到部门,主要负责卫星上嵌入式软件开发。不过说是高大上的卫星软件开发,其实刚开始就是打杂,给实验室、厂房推箱子搬设备,呵呵,说航天是个体力活相信很多航天人都有同感吧。不过当时年轻,心思很单纯,每天搬完设备,晚上主动加班,看文档材料,画软件流程图,编程练习,日子过得很充实。

记得第一个月到手大概 5k 左右(好少呀),当时很多一起入职的同事抱怨,我没有,我甚至不太愿意和他们比较工资,这里总结第二条经验:

不要和你的同事比工资,没有意义,比工资总会有人受伤,更多的是负面影响,并且很多时候受伤的会是你。

工作中暂露头角

工作大概一个月的时候,我遇到了一件事情,让我从新员工里面开始暂露头角。事情是这样的当时国家要对军工单位进行 GJB5000A 软件开发等级认证(搞过这个认证的同学应该都知道,过这个认证那是要多酸爽有多酸爽),但是当时一个负责配置管理的同事却提出离职,原因是他考上了公务员,当时我们用的那个软件平台后台的版本控制是 SVN 实现的,恰好我在学校写程序时用过,呵呵,话说回来现在学生自己写软件很少有人会在本地搭版本控制器吧!我记得当时还被同学嘲笑过,这让我想起了乔布斯学习美术字的故事,这里总结一下:

不要说一项技能没有用,任何你掌握的技能都有价值,但是你要学会找到发挥它的场景。如果有一天你落水了,你可能会很庆幸,自己以前学会了游泳。

工作中如果要上升,你要勇于承担麻烦的、有挑战的任务,当你推掉麻烦的时候,你也推掉了机遇。

好了,扯远了,回到前面,当时我主动跟单位认证负责人提出,我可以帮忙负责这方面的工作,我有一定经验。这里要提一下这个负责人,是位女士,她是我非常敬佩的一个前辈,认真,负责,无私,整个人为国家的航天事业奉献了几十年,其实航天领域有非常多这样的老前辈,他们默默奋斗,拿着不高的薪水,为祖国的国防建设做出了巨大的贡献。当时这位负责人,看我平时工作认真积极,思维反应也比较灵活(因为过认证需要和认证专家现场答辩的)就同意了我的请求,接受到这个任务之后,我迅速投入,学习认证流程、体系文件、迅速掌握认证工作要点,一点一点把相关的工作做好,同时周期性对业务进行复盘,总结复盘可能是我自己的一个优点:

很多人喜欢不停的做事,但不会停下来思考,缺乏总结复盘的能力,其实阶段性总结复盘,不仅能够固化前面的经验,也能梳理后面的方向;把事情做对很重要,但是更重要的是做对的事;另外不要贪快,方向正确慢就是快(后半句是我后来才想明白的,如果早想明白,就不会混成目前这样了)

1 个月后,当时有惊无险通过了当年的认证,当时负责人主动向单位申请了 2k 特别奖,当时我真的非常高兴,主要是自己的工作产生了价值,得到了认可。后来几个月的日子平淡无奇,有印象的好像只有两件事情。

一件事情是当年端午,当时我们在单位的宿舍休息,突然楼道上一阵骚动,我打开宿舍门一看,原来是书记来慰问,还给每个人送了一箱消暑饮料,这件事印象比较深刻,是我觉得国企虽然有各种各样的问题,但是论人文关怀,还是国企要好得多。

错失一次暴富的机会

另一件事是当年室友刚买房,然后天天研究生财&之道,一会劝我买房,一会劝我买比&特&币,我当时没有鸟他,为什么呢,因为当时的室友生活习惯不太好,会躺在床上抽烟,还在宿舍内做饭(我们宿舍是那种很老的单位房,通风不好),我有鼻炎,所以不是很喜欢他(嗯,这里要向室友道歉,当年真是太幼稚了)。现在 B&T&C4 万美元了,我当时要是听了室友也能小发一笔了(其实我后来 18 年买了,但是没有拿住这是后话),这里要总结一下:

不要因为某人的外在,如外貌、习惯、学历等对人贴上标签,去盲目否定别人,对于别人的建议,应该从客观出发,综合分析,从善如流是一项非常难得的品质。

人很难挣到他认知之外的财富,就算偶然拿到了,也可能很快失去。所以不要羡慕别人投机获得的财富,努力提升你的思维,财商才是正道。

航天生涯的第一个正式项目

转眼到了 9 月份(我 4 月份入职的),我迎来了我航天生涯第一个正式的型号项目(型号,是军工的术语,就相当于某个产品系列比如华为的 mate),当时分配给我的型号正式启动,我终于可以开始写卫星上的代码了。

当时真的是心无旁骛,一心投身军工码农事业,每天实验室,测试厂房,评审会,日子虽然忙碌,但是也算充实。并且由于我的努力工作,加上还算可以的技术水平,我很快就能独立胜任一些型号基础性的工作了,并且我的努力也受到了型号(产品)线的领导的认可,他们开始计划让我担任型号主管设计师,这是一般工作 1-2 年的员工的岗位,当时还是有的激动的。

2014 年
升任主管设计师后的一次波折

转眼间到 2014 年了,大概上半年吧,我正式升任主管设计师,研发工作上也开时独挡一面了,但是没多久产品研发就给了我当头一棒。

事情是这样的,当时有一个版本软件编写完毕,加载到整星上进行测试,有一天大领导来检查,当时非常巧,领导来时测试主岗按某个岗位的人员要求,发送了一串平时整星没有使用的命令(我在实验室是验证过的),结果我的软件立刻崩溃,无法运行。由于正好领导视察,这个问题立马被上报到质量处,于是我开始了苦逼的技术归零攻关(搞航天的都懂,我就不解释了)。

期间每天都有 3 个以上领导,询问进度,当时作为新人的我压力可想而知,可是我无论如何都查不出来问题,在实验室我的软件完全正常!后来,某天中午我突然想到,整星上可能有不同的环境,具体过程就不说了。后人查出来是一个负责加载我软件的第三方软件没有受控,非法篡改了我程序的 4 个字节,而这 4 字节正好是那天发送命令才会执行的代码,结果导致我的软件崩溃。最后我花了进一个月完成了所有质量归零报告,技术分析报告,当然负责技术的领导没有责怪,相反的还更加看重我了,后来我每遇到一个质量问题,无论多忙最后定要写一份总结分析报告,这成了我一个技术习惯,也为后来我升任软件开发组长奠定了技术影响基础。

强烈建议技术团队定期开展质量回溯,需要文档化,还要当面讲解,深入的技术回溯有助于增加团队技术交流活跃度,同时提升团队技术积淀,是提升产品质量,打造优秀团队的有效方法。

个人的话建议养成写技术总结文章的习惯,这不仅能提升个人技术,同时分享也可以增加你的影响力

职场软技能的重新认识

上半年就在忙碌中度过了,到了年底,发生了一件对我们组影响很大的事情,年底单位开展优秀小组评比, 其实这个很多公司都有,那为什么说对我们组影响很大内,这里我先卖关子。这里先不得不提一个人,是个女孩子,南京大学的,比我晚来一年,她做事积极,反应灵敏,还做得一手不错的 PPT,非常优秀,就是黑了点(希望她看到了不要来找我,呵呵)。

当时单位开展优秀小组评比,我们当时是新员工,什么都很新鲜,就想参加一下,当时领导说我们每年都参加的,我们问,我们每年做不少东西,怎么没有看到过评比的奖状,领导有点不好意思,说我们没有进过决赛。我们又问,多少名可以进入决赛圈,答曰前 27 名即可(总共好像 50+个组)我们当时心里真是一万个羊驼跑过。。。。

其实当时我们组每年是做不少事情的,我们觉得我们不应该排名如此之低,于是我们几个年轻人开始策划,先是对我们的办公室彻底改造(因为要现场先打分,然后进决赛),然后好好梳理了我们当年取得的成绩,现场评比时我自告奋勇进行答辩(我沟通表达能力还不错,这也算我一个优势吧),后面在加上前文提到的女孩子做的漂亮 PPT,最后我们组拿到了铜牌班组的好成绩,我也因为这次答辩的优秀表现在领导那里又得到了认可,写了大半段了,再总结一下:

职场软技能如自我展示很重要,特别是程序员,往往在这方面是个弱项,如果可以的话,可以通过练习,培训强化一下这些软技能,对职场的中后期非常有帮助。

2015 年

时间总是过得很快,一下就到 2015 年了,这一年发生了一件对我影响很大的事情。

升任小组副组长

当时我们小组有 18 个人了,有一天部门开会,主任要求大家匿名投票选副组长(当时部门领导还是很民主的),因为日常事务逐渐增多,老组长精力有限,想把一些事物分担出来,当天选举结果就出来了,我由于前面的技术积累和沟通表达能力的展现,居然升任副组长,当时即有些意外,因为总是有传言说国企没背景一辈子就是最最底层,后来我仔细思考过,下面是我不成熟的想法:

不要总觉得国企事业单位的人都是拼背景,拼关系,我承认存在关系户,但是不要把关系户和低能力挂钩,背景只是一个放大器,当关系户做出了成绩时它会正面放大影响,当关系户做了不光彩的事情是,它也会让影响更坏。没有背景,你可以作出更大的贡献来达到自己的目标,你奋斗的过程是更大的财富。另外,我遇到的关系户能力都很强,也可能是巧合,也可能是他们的父辈给给他们在经验层次上比我们更优秀的教育。

学习团队管理技巧

升任副组长后,我的工作更加忙碌了,不仅要做自己项目的事情,还要横向管理和协调组内其他项目的事情,有人说要多体谅军工单位的基层班组长,这话真是没错啊。这个时候我开始学习一些管理技巧,如何凝聚团队,如何统一协调资源等等,这段时间我还是在不断成长。不过记得当年还是犯了一个很大的方向性错误,虽然更多的原因可能归结为体制吧,但是当时其实可以在力所能及的范围内做一些事情的。

具体是这样的,当时管理上有项目线,有行政线,就是很常见的矩阵式管理体系,不过在这个特殊的体制下面出现了一些问题。当时部门一把手被上级强制要求不得挂名某个型号,因为他要负责部门资源调配,而下面的我们每个人都归属 1-2 个型号(项目),在更高层的管理上又有横向的行政线(不归属型号),又有纵向的型号管理线。

而型号的任务往往是第一线的,因为产品还是第一位的,但是个人的绩效、升迁又归属行政线管理,这种形式在能够高效沟通的民企或者外企一般来说不是问题,但是在沟通效率缓慢,还有其他掣肘因素的国企最终导致组内每个人忙于自身的型号任务,各自单打独斗,无法聚焦,一年忙到头最终却得不到部门认可,我也因为要两面管理疲于应付,后来曾经反思过,其实可以聚焦精力打造通用平台(虽然这在我们行业很难)部分解决这个问题:

无论个人还是团队,做事情要聚焦,因为个人和团队资源永远都是有限的,如果集中一个事情都做不好,那分散就更难以成功,但是在聚焦之前要深入思考,往什么方向聚焦才是正确的,只有持续做正确的事情才是最重要的。

2016 年

这一年是我人生的关键一年,发生了很多事情。

升任小组组长

第一件事情是我正式升任组长,由于副组长的工作经验,在组长的岗位上也做得比较顺利,在保证研发工作的同时,继续带领团队连续获得铜牌以上班组奖励,另外各种认证检查都稳稳当通过,但是就在这个时候,因为年轻,我犯下了一个至今非常后悔的错误。

大概是这样的,我们部门当时有两个大组,一个是我们的软件研发组,一个是负责系统设计的系统分析组。

当时两个组的工作界面是系统组下发软件任务书给软件组,软件组依照任务书开发,当时由于历史原因,软件组有不少 10 年以上的老员工,而系统组由于新成立由很多员工工作时间不到 2 年,不知道从什么时候起,也不知道是从哪位人员开始,软件组的不少同事认为自己是给系统组打工的。并且,由于系统组同事工作年限较短,实际设计经验不足,任务书中难免出现遗漏,从而导致实际产品出错,两组同事矛盾不断加深。

最后,出现了一个爆发:当时系统组主推一项新的平台,虽然这个平台得到了行政线的支持,但是由于军工产品迭代严谨,这个新平台当时没有型号愿意使用,同时平台的部分负责人,居然没有完整的型号经验!由于这个新平台的软件需要软件组实现,但是因为已经形成的偏见,软件同事认为这项工作中自己是为利益既得者打工。

我当时也因为即负责实际软件开发,又负责部分行政事务,并且年轻思想不成熟,也持有类似的思想。过程中的摩擦、冲突就不说了,最后的结果是系统组、软件组多人辞职,系统组组长离职,部门主任离职创业(当然他们辞职不全是这个原因,包括我离职也不全是这个原因,但是我相信这件事情有一定的影响),这件事情我非常后悔,后来反思过其实当时自己应该站出来,协调两组矛盾,全力支持部门技术升级,可能最终就不会有那么多优秀的同事离开了。

公司战略的转型,技术的升级迭代,一定会伴随着阵痛,作为基层组织者,应该摒弃个人偏见,带领团队配合部门、公司主战略,主战略的成功才是团队成功的前提。

买房

16 年我第二件大事情就是买房,关注过近几年房价的人都可能还记得,16 年一线城市猛涨的情景。其实当时 15 年底,上海市中心和学区房已经开始上涨,我 15 年底听同事开始讨论上涨的房价,我心里开始有了买房的打算,大约 16 春节(2 月份吧,具体记不得了),我回老家探望父母,同时跟他们提出了买房的打算。

我的父亲是一个“央视新闻爱好者”,爱好看狼咸平,XX 刀,XX 檀的节目,大家懂了吧,父亲说上海房价太高了,都是泡沫,不要买。这个时候我已经不是菜鸟了,我想起我总结的第一条经验(见上文),我开始收集往年的房价数据,中央历年的房价政策,在复盘 15 年的经济政策时我发现,当年有 5 次降息降准,提升公积金贷款额度,放松贷款要求于是我判定房价一定会继续涨,涨到一个幅度各地才会出台各种限购政策,并且房价在城市中是按内环往外涨的于是我开始第一次在人生大事上反对父母,我坚决表态要买房。父亲还是不太同意,他说年底吧,先看看情况(实际是年底母亲的退休公积金可以拿出来大概十几万吧,另外未来丈母娘的公积金也能拿出来了大概比这多些)。我还是不同意,父亲最终拗不过我,终于松口,于是我们拿着双方家庭凑的 50w 现金开始买房,后来上海的房价大家都看到了。这件事也是我做的不多的正确的事情之一。

但是最可笑的是,我研究房价的同时居然犯下了一个匪夷所思的错误,我居然没有研究买房子最重要的因素是什么,我们当时一心想买一手房(现在想想真是脑子进水),最后买了一套松江区交通不便的房子,这第一套房子的地理位置也为我后来第二次离职埋下了隐患,这个后面会说。

一线或者准一线城市能买尽量买,不要听信房产崩溃论,如果买不起,那可以在有潜力的城市群里用父母的名义先买一套,毕竟大多数人的财富其实是涨不过通货膨胀的。另外买房最重要的三个要素是,地段,地段,地段。

买房的那天上午和女朋友领的证,话说当时居然把身份证写错了三次 。。。

这下我终于算是有个家了,交完首付那个时候身上真的是身无分文了。航天的基层员工的收入真的是不高,我记得我当时作为组长,每月到手大概也就 7k-8k 的样子,另外有少量的奖金,但是总数仍然不高,好在公积金比较多,我日常也没什么消费欲望,房贷到是压力不大。

买完房子之后,我心里想,这下真的是把双方家庭都掏空了(我们双方家庭都比较普通,我的收入也在知乎垫底,没办法)万一有个意外怎么办,我思来想去,于是在我下一个月发工资之后,做了一个我至今也不知道是对是错的举动,我利用当月的工资,给全家人家人买了保险保险,各种重疾,意外都配好了。但是为什么我至今也不知道对错呢,因为后来老丈人,我母亲都遭遇病魔,但是两次保险公司都拒赔,找出的理由我真是哑口无言,谁叫我近视呢。另外真的是要感谢国家,亲人重病之后,最终还是走了医保,赔偿了部分,不然真的是一笔不小的负担。

2017 年

对我人生重大影响的 2016 年,在历史的长河中终究连浪花都激不起来。历史长河静静流淌到了 2017 年,这一年我参加了中国深空探测项目,当然后面我没有等到天问一号发射就离开了航天,但是有时候仰望星空的时候,想想我的代码正在遥远的星空发挥作用,心里也挺感慨的,我也算是重大历史的参与者了,呵呵。好了不说工作了,平淡无奇的 2017 年,对我来说也发生了两件大事。

买了第二套房子

第一件事是我买了第二套房子,说来可笑,当年第一套房子都是掏空家里,这第二年就买了第二套房子,生活真的是难以捉摸。到 2017 年时,前文说道,我母亲和丈母娘先后退休,公积金提取出来了,然后在双方家里各自办了酒席,酒席之后,双方父母都把所有礼金给了我们,父母对自己的孩子真的是无私之至。当时我们除了月光之外,其实没有什么外债,就是生活简单点。拿到这笔钱后,我们就在想如何使用,一天我在菜市场买菜,有人给我一张 xuanchuan 页,本来对于这样的 xuanchuan 页我一般是直接扔掉的,但是当天鬼死神差我看了一眼,只见上面写着“嘉善高铁房,紧邻上海 1.5w”我当时就石化了,我记得去年我研究上海房价的时候,曾经在网站上看到过嘉善的房价,我清楚的记得是 5-6k,我突然意识到我是不是错过了什么机会,反思一下:

工作生活中尽量保持好奇心,不要对什么的持怀疑态度,很多机会就隐藏在不起眼的细节中,比如二十年前有人告诉你未来可以在网上购物,有人告诉你未来可以用手机支付,你先别把他直接归为骗子,静下来想一想,凡事要有好奇心,但是要有自己的判断。

于是我立马飞奔回家,开始分析,大城市周边的房价。我分析了昆山,燕郊,东莞,我发现燕郊极其特殊,几乎没有产业,纯粹是承接大城市人口溢出,因此房价成高度波动。而昆山和东莞,由于自身有产业支撑,又紧邻大城市,因此房价稳定上涨。我和妻子一商量,开始了外地看房之旅,后来我们去了嘉善,觉得没有产业支撑,昆山限购,我们又到嘉兴看房,我发现嘉兴房价也涨了很多,但是这里购房的大多数新房,都是上海购房者,入住率比较低,很多都是打算买给父母住的,但是实际情况是父母几乎不在里面住,我觉得这里买房不妥,存在一个变现的问题。于是我开始继续寻找,一天我看着杭州湾的地图,突然想到,杭州湾北侧不行,那南侧呢?南侧绍兴,宁波经济不是更达吗。于是我们目光投向绍兴,看了一个月后,最后在绍兴紧贴杭州的一个区,购买了一套小房子,后来 17 年房价果然如我预料的那样完成中心城市的上涨之后开始带动三四线城市上涨。后来国家出台了大湾区政策,我对我的小房子更有信心了。这里稍微总结一下我个人不成熟的看法:

在稳定通胀的时代,负债其实是一种财富。长三角城市群会未来强于珠港澳,因为香港和澳门和深圳存在竞争关系,而长三角城市间更多的是互补,未来我们看澳门可能就跟看一个中等省会城市一样了。

准备要孩子

2017 年的第二件事是,我们终于准备要孩子了,但是妻子怎么也备孕不成功,我们开始频繁的去医院,从 10 元挂号费的普通门诊,看到 200 元,300 元挂号费的专家门诊,看到 600 元的特需门诊,从综合医院看到妇幼医院,从西医看到中医,每个周末不是在医院排队,就是在去医院的路上。最后的诊疗结果是有一定的希望,但是有困难,得到消息时我真的感觉眼前一片黑暗,这种从来在新闻上才能看到了事情居然落到了我们头上,我们甚至开始接触地下 XX 市场。同时越来越高的医疗开销(专家门诊以上就不能报销了)也开始成为了我的负担,前文说了,我收入一直不高,又还贷款,又支付医疗开支渐渐的开始捉襟见肘,我甚至动了卖小房子的打算。

未完待遇~

重大消息!Apache下这些与Hadoop相关的开源项目要退休了!

科技创新王叫兽 发表了文章 • 0 个评论 • 48 次浏览 • 2021-05-14 15:24 • 来自相关话题

不知不觉之间,小编发现 Apache下许多与Hadoop相关的开源项目竟然都要退休了!包括像Sentry、Tajo和Falcon在内的13个与大数据相关的Apache项目,相继在11天之内宣布退出。不得不说一句,看起来Hadoop和大数据的美好时代就... ...查看全部

不知不觉之间,小编发现 Apache下许多与Hadoop相关的开源项目竟然都要退休了!

包括像Sentry、Tajo和Falcon在内的13个与大数据相关的Apache项目,相继在11天之内宣布退出。

不得不说一句,看起来Hadoop和大数据的美好时代就要正式结束了。

Apache Hadoop曾经是大数据的招牌产品,虽然大家都知道其现在已经过了鼎盛时期。但自4月1日以来,Apache软件基金会(ASF)已经宣布至少19个开源项目退出,其中13个与大数据相关,10个是Hadoop生态系统的一部分。还是让人感到乍舌。

也许单独一个项目的退出不会让人觉得是回事,但陆陆续续这么多项目一同退出,似乎就成了一个由盛转衰的分水岭,小编整理了下这13个与大数据相关的已退出的Apache项目。

  • Apex:基于Hadoop的大数据流和批处理的统一平台

  • Chukwa:一个用于监视大型分布式系统的数据收集系统,建立在Hadoop分布式文件系统(HDFS)之上

  • Crunch:它为编写、测试和运行MapReduce(包括Hadoop MapReduce)管道提供了一个框架

  • Eagle:一种分析解决方案,用于在大数据平台(包括Hadoop)上即时发现安全和性能问题

  • Falcon:Hadoop的数据处理和管理解决方案,用于数据移动、数据管道协调、生命周期管理和数据发现

  • Hama:一个大数据分析框架,运行在Hadoop上,基于批量同步并行范式

  • Lens:提供了一个统一的分析接口,它将Hadoop与传统的数据仓库集成在一起,看起来就像一个

  • Marmotta: 链接数据的开放平台

  • Metron:专注于实时大数据安全

  • PredictionIO:用于管理和部署生产就绪预测服务的机器学习服务器

  • Sentry:在Apache Hadoop中对数据和元数据实施细粒度授权的系统

  • Tajo:一个基于Hadoop的大数据仓库系统

  • Twill,它使用Hadoop YARN的分布式功能和类似于运行线程的编程模型

除了小编整理的这些项目,其实还有很多其他项目一并退出了。但最引人注意的还是在这不到两周时间里宣布退出的13巨头。

对于这个现象事件,官方又是怎么说的呢?

Apache软件基金会(ASF)的营销和宣传的副总裁Sally Khudairi,在其回复的电子邮件中提到:

Apache项目活动在其整个生命周期中起起落落,这取决于社区的参与程度。每一个退出的项目都是经过项目管理委员会和董事会反复斟酌投票之后的决定。

同时他表示这仅仅是常规项目退出的激增,但我们可以发现在开源领域,Hadoop已经让位于Spark ,像Hortonworks和旧Cloudera之间毫无意义的项目复制已经越来越少。

同样明显的是,大量投资Apache Sentry 的供应商和客户现在需要开始考虑他们的损失,以及下一步的前进方向。其实每一个技术的兴起和冷落都有类似的炒作周期,技术热门、开源激增、生态系统建立,然后直到他被其他新技术取代。

转载于公众号:程序猿DD

把中国 14 亿人都拉到一个群,技术上能实现吗?

科技创新王叫兽 发表了文章 • 0 个评论 • 61 次浏览 • 2021-05-14 15:24 • 来自相关话题

“最近,知乎上有一个非常热门的问题:“把 14 亿中国人民都拉到一个微信群里在技术上能实现吗?”实际上,根据国家统计局的数据,截至 2017 年末,中国大陆总人口为 13 亿 9008 万人(包括 31 个省、自治区、直辖市和中国人民解放军现役军人,不包括香港... ...查看全部

“最近,知乎上有一个非常热门的问题:“把 14 亿中国人民都拉到一个微信群里在技术上能实现吗?”

实际上,根据国家统计局的数据,截至 2017 年末,中国大陆总人口为 13 亿 9008 万人(包括 31 个省、自治区、直辖市和中国人民解放军现役军人,不包括香港、澳门和台湾以及海外华侨人数),早已超过 13 亿。

目前,微信群组成员人数上限为 500 人,把近 14 亿中国人都拉到一个微信群,从技术的角度考虑现实吗?需要多少台服务器?

而且在一个 14 亿人的群里,要怎样抢红包?手机会不会爆炸?欢迎大家收看官方吐槽系列~

根据 2017 年《微信数据报告》的公开数据 [参考 1] : 2017 年 9 月,微信日均登录 9.02 亿人,日均发送消息 380 亿次。

这意味着平均每人每天发送信息 42 条,如果全国人民(对了,现在全国人口已经接近 14 亿)在同一个群里说话,这个群每天出现的信息就高达:

这么多信息仅仅是匀速发送的话,考虑到大家的睡眠,睡觉的 8 小时不算,那么手机里每秒要接收的信息就是:

哇塞,每秒超过 100 万条啊!目前主频最高的手机 CPU 之一,高通骁龙 845有 2.8GHz 的处理能力[参考 2] ,一共是 8 核。

如不计算安卓系统、显示刷新、网络 IO 等 CPU 操作的话,每条信息能分配到的计算能力是:

这是什么概念?全球第一款微处理器是 1971 年英特尔推出的 Intel 4004[参考 3],这个老古董的主频也有 108KHz 啊。所以 21.9KHz 就是啥也干不了。

幸好 IT 界有个摩尔定律: 每 18 个月 CPU 性能就能翻倍(或者价钱是一半)。虽然现有科技已经很难让主频提升(某牙膏厂拼命挤也只有 5 Ghz)。

但假设我们使用了黑科技提升主频。等到了 2025 摩尔定律失效时[参考 4],我们的手机 CPU 主频应该达到:

看起来不错嘛,不过每条消息能得到的计算能力将达到:

呵呵,依然没有达到 Intel 4004 的水平,所以结果就是你等了 7 年,还是进不了这个全国群抢一个红包。

好吧,咱们让手机接入一个给力点的电脑, 比如说全球超算第一名的太湖之光,1 千万个 CPU 核心 [参考 5] 来帮忙处理这个宇宙第一大微信群。算力的问题总算有了着落。

我们假设平均每条消息有 10 个汉字,这大概相当于 30 byte,算上应用层会加上一定的控制字符,再加上 TCP/IP 网络层的数据消耗大概是 74 byte,取个整,平均每条消息有 100 byte,每个 byte 相当于 8 个 bit。

这时每秒需要的网络带宽大约是:

如果有人发红包,需要的带宽就更大了。

理论上,4G 网络能支持 1000 Mbps[参考 6],但别忘了,是全国人民在同一个群里,而你周围的人也需要同样的带宽,这使得你附近的基站不堪重负,陷入瘫痪。

为了避免网络瘫痪导致你抢不到红包或者看群消息,你需要搬到一个周围没有人的基站,比如放暑假了全校只有你还没回家的时候。

不过运营商的日子就不好过了,因为这一秒全国上下的流量就达到了惊人的:

这相当于 2017 年 4 月份的全国移动数据总流量的 65.7%[参考 7],意味着每 18 秒就能用完全国一年的流量。运营商瑟瑟发抖.gif

如果把 1.146 Ebit 数据用 2TByte 3.5 英寸硬盘(20 mm 高)装起来,然后叠起来,有 1433.25 m,相比之下,全球最高楼——迪拜的哈里发塔只有区区 828m。

当然,如果确实有需要,我相信电信运营商们肯定砸下重金为你建设全世界最大的宽带网络。

不过,接下来该花钱的就不是运营商——而是腾讯了。

为了处理这 1.146 Ebps 的流量, 腾讯需要准备 11466 万套交换机和服务器。

目前一台大厂 4 口万兆交换机售价大约是 4000 元,一台便宜带万兆口的服务器则大概需要 10000 元,这两项加起来的费用是:

呃,仅仅这两项就相当于 深圳 2014 年全年的 GDP[参考 8]。

这里还不包括网线、电线、服务器机架、机房托管、电费、运行支出……

这么多设备的存放也是个问题。一台带万兆(10Gbps)口的 2U 服务器有 88.9 mm 高,这样叠起来就有:

这差不多是中国到美国的飞机航线距离啊,用来修铁路也是够够的了。

好了,有了这么多设备加持,这下你终于可以愉快地进了群。

但你惊讶地发现,屏幕上除了白色,什么都没有——这是因为你的眼睛没办法接收这么快的数据!

人眼的视觉暂留时间是 100-400 毫秒[参考 9] ,而我们这个群每秒钟就要显示 102 万条信息,每条消息停留的时间只有大概 0.001 毫秒。相比之下,电影、电视都有 41 毫秒。

因此你还没来得及看清消息,它就已经消失了,最后只留下一团白色的色块在屏幕的正中央。

网友留言:

@大哥有柔情:

14 亿在一个群并不可怕。可怕的是,每逢节日群里都会让群主发红包!

@后知后觉:

已经做到了,14 亿人拉到一个微信群,大家看到的都是新闻联播。

@bluecat:

简单的说,你的手机会马上崩溃,因为它承载不了一秒钟的信息量。

@三毛鱼

可以实现,不过要加几条限制:

①所有微信账号强制加入到这个微信群。

②微信群只能有限的几个人发言,其他人不能发言。

③微信群里只能在每天固定时间段发消息。

④其他微信群在固定时间不能发消息,或者只能转发这个微信群的消息。

这样就可以实现了,技术上没有难度。

@程墨Morgan

“拉”到一个群里没啥不难实现的,反正用户信息都在服务器上,建一个包含所有用户微信号的群也就是添加一个记录而已。

但是,这个群千万不要让任何人都能发言,就以我国人民的多样性,各种话唠、贴图狂人、广告狂人……海量信息瞬间就可以把服务器、运营商网络和你手机的电池击溃。

@世安先生

讲真,单从理论上来说目前的技术还是可行的,咳咳,我要装逼了。

看了别的答主的回答,说人、终端、传输、处理、存储、分析等等各方面均有缺陷或者短板,跟不上大批量的数据,其实个人觉得实施起来也还是有得搞的,只是成本和利润之间的关系罢了。

首先,得考虑人的因素,多少多少亿的信息量对于某个特定个体来说价值无限接近于 0,我个人根本不关注这些信息,因为获取信息的效率太低了。

这就导致了百分之九十九的人直接忽略了这个群的存在,剩下的每天这个群里的消息无非就是置顶公告,置顶新闻,红包和闲聊斗图,浏览公告和新闻。

考虑到并发的问题,一般现在的服务器都可以做到,毕竟有大把的新闻 App 都可以做到;红包,做个算法随机分配吧,也别抢了,抢会严重影响体验,给十亿用户随机分配一段数据应该难度也不太大。

剩下的就是斗图闲聊,数据直接云存储在服务器端,分析处理总结出来个中心思想每多少秒多少秒推送给个人用户一次,就差不多了,需要详细信息的上服务器检索,个人觉得对个人终端的压力也不会太大。

其次,传输,这是我觉得问题最小的一个环节,为什么呢?解决了个人终端的问题之后,个人的数据传输量并不大,现有的传输网络完全可以满足。

服务器端的传输,要看这服务器怎么个建法,如果集中式处理和存储,就只能用百 G 专线,建个三五条完全够了。

只不过相应的配套交换机路由器要建一套庞大的系统出来。如果是分布式存储和处理,10G 的甚至 GE 的专线都够。这是传输。

第三,处理,如果非得把大批量的数据集中处理,就得建设一套国内最大甚至世界最大最复杂的数据中心才能够承载这套系统。

但是如果分布式处理的话,我相信现在的系统也够用,毕竟现有的运算量已经这么大了,而有这个群之后数据量也绝对不会爆炸式增长。

第四,存储,处理的工作能够完成存储肯定也不是问题,甚至可以将数据破碎后存储在个人终端上,将投资设备的矛盾转嫁到数据安全和管理上。

第五,数据分析,这一点才是重中之重,难点中的难点,如何有效的分析提取如此大量数据中的有用信息并推送给特定的个人才是核心关键。

虽然现在技术还没有大面积商业化,但我相信这种技术是肯定已经有试用的甚至是已经商用的存在了,只不过公众不太清楚而已,毕竟这种东西仔细想想还是有点恐怖的。

总之,如何实现这个系统或者说建好这个群,无非就是做好需求与资源之间矛盾的转嫁,把存储需求量大与投资大之间的矛盾转嫁到数据安全与运营管理上,把大数据量传输分散化,把大量的数据进行分析提取后定向推送,最核心的投资也就是整套智能有效的大数据分析系统。

(ಥ_ಥ)不过……话说这么搞的话不就是搞了个有 14 亿关注量的公众号嘛…d(ŐдŐ๑)好了,我装逼装完了,你们打的时候下手轻点,别拿砖头,别提 40 米青龙偃月大关刀……

转载于公众号“程序猿DD”


北京云中融信网络科技有限公司(简称融云),是安全、可靠的全球互联网通信云服务商,向开发者和企业提供即时通讯和实时音视频通信云服务。iResearch 艾瑞权威数据报告显示,融云即时通讯云市场份额连续多年稳居头位。

融云构建了一张覆盖全球所有国家及地区(共 233 个)的通信云网络,在全球各地设立多个数据中心及数千个加速节点。基于客户业务需求,融云可提供多种部署模式——公有云、私有云、混合云,为全球企业提供稳定的互联网通信云服务。针对企业级用户,融云将业务垂直到各个行业,为社交、直播、金融、交通运输、教育、电商、医疗等多个行业领域推出了针对性解决方案。

融云基于海量业务的技术锤炼,从基础架构到精细化运营,充分体现平台实力;凭借卓越的产品和优质的服务,在开发者规模、行业覆盖率、平台日活跃用户数、日均消息量等方面超越全行业。目前,已有数十万互联网用户及上千家企业级用户通过融云实现了场景化沟通,并从中获益,包括工商银行、中国移动、四川航空、CCTV 微视、中联重科、58 赶集、大河报业、新东方、陆金所、融创地产、IDG、华兴资本、易车网、猪八戒、得到 APP、荔枝、汽车之家、哈啰出行、百姓网、StarMaker、Opera、Elelive。

为什么培训班出来的程序员会遭人嫌弃?

科技创新大兴 发表了文章 • 0 个评论 • 68 次浏览 • 2021-05-14 15:24 • 来自相关话题

昨天小编看到了一份采访稿,对象是培训机构出身的程序员,本身程序员并不特殊,但“培训机构出身”这个标签,有时候却成了程序员心酸的源头。有类似背景的程序员很多都在应聘工作、服务甲方的时候,多少有过被嫌弃,甚至歧视的艰辛经历。那么接下来跟小编一起看看这份采访稿,这些... ...查看全部

昨天小编看到了一份采访稿,对象是培训机构出身的程序员,本身程序员并不特殊,但“培训机构出身”这个标签,有时候却成了程序员心酸的源头。有类似背景的程序员很多都在应聘工作、服务甲方的时候,多少有过被嫌弃,甚至歧视的艰辛经历。那么接下来跟小编一起看看这份采访稿,这些经历是否你也有过感同身受呢?以下内容转载自公众号:InfoQ(ID:infoqchina),作者:褚杏娟。

谁都看不上培训机构的

“我是培训 + 外包出来的,确实有被甲方嫌弃过”。2016 年从电子信息专业毕业的小右说起这个话题有些落寞。

公务员考试失利的小右在大四上学期开始找工作,但因为学习成绩一般,工作找得并不顺利。这个情况持续一段时间后,小右决定去参加某培训机构的 Java 培训。“电子信息专业虽说属于计算机范畴,但其实和编程还不一样的,我也是没办法。”小右很无奈。

培训机构的课程对有一定 C、C++ 基础的小右来说还算比较轻松。他所在的那家培训机构的上课内容就是老师带着做做项目,教的代码在后面工作中可以复用。几个月后小右从培训机构毕业,第一份工作是北京当地蛮著名的一个外包机构,薪资 5K。

与同批毕业找到不错工作的同学们比,小右还是感到些许心酸。“上课的学费,我是走的贷款。和培训机构签过协议,毕业就可以找到工作。找不到,损失由培训机构承担;找得到,机构每个月要从我的薪资里面抽一部分还学费。北京的生活成本本来就高,加上机构的抽成,对于刚毕业的小右来说,无疑压力很大。

在这家外包公司呆了一年后,小右跳槽了——仍旧是家外包公司。“这家公司的程序员基本上也是专科或者培训机构出来的,人员流动特别快。”小右告诉记者:“我入职的第一年年底,对面一整个项目组的同事都陆续走掉了,有的去了甲方,有的回老家了,再加上工资不高,各种原因都有。我也是在这种情况下升职的,实在也是没人了。”

同在培训机构学习过的小健也有着类似的经历。工商管理物流专业的他也是在国考失利后决定进入 IT 行业。这对没有任何计算机基础的他来说,是彻彻底底的 360 度大转行。当时,他去了一家培训机构进行了为期 9 个月的“大学生速成班课程”学习。

在谈到这段学习经历时,小健不假思索的说了两个字:艰辛。

当时的他住在学校的地下室,又冷又潮湿。学校实行军事化管理,早上 6 点起床,晚上 22 点熄灯,每周休息一天。“和上高三感觉差不多”,小健感慨:“不过也有了更多的时间去学习和操作。“

虽然对 3 万 9 的高额学费感到“肉疼”,但小健感觉还是值得的。“最大的收获就是练就一双会挣钱的手。”小健的第一份工作也是一家外包公司,“当时面试了 10 多家,就那家公司面试上了,薪水给的还算可以,就入职了。”

针对培训机构出来的程序员与科班出身的程序员相比会不会被“鄙视”的问题,小健明确表示:“这个和科班的没关系,谁都看不上培训机构的。”

我们只会鄙视那些技术垃圾的

圈子里,科班程序员“鄙视”培训机构程序员似乎已经隐隐成了一种共识。

“培训机构出来的程序员几乎什么也不会。不用看技术,刚刚培训出来的就是假大空。”小健直言。网上甚至有更偏激的观点:培训班出来的全是垃圾,没有例外。

“培训机构出来的程序员基础薄弱很多,对某项语言可能有点熟悉但是很死板,代码环境一变可能就不会了,更差点的就直接被当成‘敲代码机器’了。很多人刚出来没有完整的案例操作,对这个行业还没有基础的认知,更别提思维、格局了。”

外界的这些言论无形中成为这些程序员心中的刺。很多培训机构出来的程序员在面试时是不会告诉用人单位培训背景的,有些人甚至会刻意隐瞒这段经历。“好多人被公司知道后就直接被辞退了,有的人还背着房贷、要赡养老人,但也没有办法。”小健说。

在小右看来,培训机构其实是复制粘贴出来一堆差不多的人。“人家用大学四年打下基础,你培训几个月速成,很难完全领悟。”

不知道是否是小健、小右过于敏感,还是不直接关乎利益,科班程序员对这个问题感受其实没有那么强烈。硕士毕业直接进入互联网公司工作的小远告诉我们:“员工间谈不上鄙视,主要是看他们做的工作是不是好,但是一般情况下,培训班出来的工作质量不会太好。代码混乱、质量低、bug 多、没法维护,别人接手你的代码会很难受。”

“大家都是打工的,没有人会管你是哪里出来的。我们只会鄙视那些技术垃圾的、配合不了的。至于你是哪里出来的,并不会很在意。”小远补充。

对于这个问题,某互联网公司技术总监 Harry 告诉 InfoQ 记者:外界的确存在一些公司认为培训班出来的程序员是“速成品”,然后卡简历的情况。“其实不是说培训机构出来的程序员表现都不行,只是表现不好的程序员可能都有过培训经历,行业里一传十、十传百就会认为培训机构出来的程序员都不行。”

培训出来的基本是速成班,很难相信

企查查数据显示,目前我国共有 21 万余家职业培训相关企业,其中在业存续的企业有 16.8 万家。通过对管理、财务会计、IT、设计四大培训方向的企业数据对比发现,涉及财务会计培训的企业仅占 3%,而涉及计算机培训的企业占到了 29%。

培训机构虽多,但质量却良莠不齐。很多培训机构的目的其实就是赚钱,只管教,对学员是否学会并不关心,甚至还有很大部分像小右所在的培训机构那样会与学员签订就业协议。另外,有些机构会宣传为大中型企业输入人才,但实际上对接合作的只是知名企业的外包公司,而非这些企业本身,当然机构是不会事先向学员说明的。

这些学员在培训机构学到的很多就是一套“万能模版”,可以套用在将来可能就职公司的工作中。“培训机构有点像定向培养,就好像知道我就业之后去的公司会用到什么东西一样,推荐给我的也都是外包单位。”小右告诉记者。

还有一些不责任的培训机构,虽然给出了就业承诺,但就什么样的“业”却是有很多可能的,而且学员的就业率与老师薪酬挂钩,无论怎样都会让学生就业。

小健透露,培训机构老师的工资基本都是 20K 起,而且还与学员的就业率挂钩,到手工资就更多了。机构会教你一些面试技巧,如果没有面上正儿八经的开发公司,为了就业率就可能胡乱安排给你一个与程序员无关的工作。

还记得知乎上网友的自嘲吗?

培训机构出来的程序员,最后大部分都去了美团,也有去百度的,去百度的少一些,原因是百度外卖给配的头盔不好看。美团外卖给配的电动车和头盔风格很搭,看着很拉风。

虽然这只是一个调侃,但也看出其中蕴含的无奈。

小健培训时所在的班里一共有 30 个人,最终还留在 IT 行业的就只剩 3 个人左右。“很多人学完找不到工作或者工作一段时间后感觉不适合就放弃了,9 个月的时间和高额的学费就这样泡汤了。”

培训机构虽然为很多人提供了互联网行业的“入场券”,但从这里出来的程序员面临的选择相对科班程序员少很多。

培训机构为学员就业提供的工作机会,起点很低,大部分毕业的人都是从小公司开始做起,经过一定积累才有可能去到大公司任职。此外,现在很多大型公司对合作的外包公司要求不仅仅局限在团队整体层面,更是细化到了对其聘用的员工个体素质等各个方面。

某保险公司负责大数据后台研发工作的项目负责人 Pony 告诉 InfoQ,今年起,他们公司已经明确要求外包也必须是本科毕业,最好是计算机专业毕业、尽量不要培训出身,尤其是美学、人力专业转行培训几个月出来的。

“人力成本太高了。我们也是有研发压力的,不愿意试错,要是认真学了三年,哪怕一年,我们都愿意一试。但现在培训出来的基本都是速成班,几个月就完事儿了,很难相信。”Pony 表示。

培训经历最后只是锦上添花

“好多程序员都买房了,都是实实在在挣到钱了。做程序员是穷屌丝逆袭的捷径。”小健感叹。

拉勾发布的《2019 年 90 后程序员职场报告》显示,在程序员群体中,90 后占比高达 82%,已然成为中国互联网行业主力军,而 90 后程序员的平均月薪已经接近 20K,雄踞互联网各职位之首。

纵然选择少,但高薪还是吸引着越来越多的人进入这个行业。达内教育老师向 InfoQ 介绍,达内教育一年大约可以招到 15 万人,其中大约 1/3~2/3 的人是学大数据、人工智能、Java 等互联网编程课程。

学历低确实是培训机构程序员的普遍现象。在达内机构学习的人大多集中在 23~35 岁之间,70% 左右的人学历在中大专和本科水平。58 同城在去年 10 月份发布的报告也显示:程序员群体学历中,大专学历占比最高,达到了 43.02%。

“现在本科学历是很普便的,这种情况下如果你只是中专、大专学历,其实我们也会觉得你的学习能力是不是有问题。”技术总监 Harry 表示。对于刚出校门的程序员来说,学历可能是衡量一个人学习能力的重要指标,但对于已经工作几年的人来说,更重要的是工作经验,当初的培训经历只是一个锦上添花的东西。

负责研发招聘的资深 HR 总监 Ivy 告诉记者:她不会只因为人选是培训机构出来的就将简历 pass 掉,但如果一个人在简历中着重去强调这段经历,那么可能意味着这个人在其他方面能力不够。

“有很多培训机构会帮助学员写简历、传授面试技巧,所以我们会看到很多差不多出自一个模版的简历,并且里面还有一些造假内容。对于这样的简历,其实看到模版一样时我们就已经 pass 掉了。“Ivy 表示。

程序员的成长终究是一个自我学习的过程,即使可能会有厉害的人带,但最重要的还是自己的能力。“以后不会再去培训机构了,之后的提高更愿意自己看书。”小右说。

应受访者要求,本文中小右、小健和小远均为化名。

后记

纵观现在的很多知名互联网大佬,在媒体面前大多都表现着对学历并不看重的态度,事实上在这些巨头成长初期是贯彻的很好的,因为如果不以这样的标准去吸纳人才,可能也很难招到人吧。而成为巨头的今天,其实对于学历,对于是否培训出身,切实的存在于各大互联网公司的招聘环节。这其中有HR部门对海量简历筛选工作量的考虑,也有因培训机构指导“简历美化”等诸多因素。

对于培训出身的尴尬局面,小编建议很多培训出身的小伙伴们不要灰心。由于如今发达的新媒体、开源社区等开放性平台越来越多,只要你有真才实学,大可以用这些方式去展现自己,为自己的简历提升更多有含金量的,用人公司可见的优秀成绩,依然可以让你从很多科班出身的人群中脱颖而出!小编身边也有好几个曾经靠培训入行,如今混的风生水起的朋友。古话说得好,师傅领进门,修行在个人。培训很多时候是帮助我们入门,但后续的修行不能断,只要能勤于思考,付出实践!那么与科班出生的程序员一样,都能未来的路都不会太差!

Redis 高负载排查记录

科技创新fanta2 发表了文章 • 0 个评论 • 66 次浏览 • 2021-05-14 15:24 • 来自相关话题

周一早上刚上班,突然大量用户反馈进入网页很慢,登录服务器一看,Redis调用时间严重超时,这样高速的缓存反而变成了短板,由于数据一直没有返回,导致了请求响应变慢。网页监控通过阿里的 Grafana 监控,服务器的 CPU 负载、内存、网络输入输出都挺正常的,所... ...查看全部

周一早上刚上班,突然大量用户反馈进入网页很慢,登录服务器一看,Redis调用时间严重超时,这样高速的缓存反而变成了短板,由于数据一直没有返回,导致了请求响应变慢。

网页监控

通过阿里的 Grafana 监控,服务器的 CPU 负载、内存、网络输入输出都挺正常的,所以肯定是 Redis 出现了问题。

我们应用使用的是单节点的 32M 16GB 的阿里云 Redis,登录网页监控看性能监控,发现 CPU 使用情况飙升到100%!!!

QPS 虽然从 1000 多升到 6000,但是远远低于极限值,连接数量从 0 升到 3000,也是远远低于极限值(可能用户刚上班,开始有请求,然后响应延迟,导致命令队列数量过多,打开很多连接)。

临时方案:先租用一台新的 Redis 服务器,更换应用服务器的 Redis 配置,重启应用,避免影响更多用户。

然后我们继续跟踪 Redis 的具体情况。

服务器命令监控

登录 Redis-cli,通过 info 命令查看服务器状态和命令统计,祥哥总结了两点异常点:

查询 redis 慢指令 slowlog,排行前十的指令均为keys *,并且耗时严重,在当前业务流量下执行keys* ,一定会阻塞业务,导致查询慢,cpu 高的。值得注意的是应用层面没有开放 keys * 接口,不排查有后台人为或后台程序触发该指令。

查看 redis 指令执行情况,排除 exec,flushall 等指令,业务使用指令中,耗时严重的有 setnx 有7.5千万次调用平均耗时 6s,setex 有8.4千万次调用平均耗时7.33s,del 有2.6亿次调用平均耗时69s,hmset 有1亿次调用平均耗时 64s,hmget 有6.8千万次调用平均耗时 9s,hgetall 有14亿次调用平均耗时 205s,keys 有2千万次调用平均耗时 3740s。

通常而言,这些指令耗时与 value 大小呈正比,所以可以排查这些指令相关的数据近期有没有较大增长。或者近期有没有业务改造,会频繁使用上述指令,也会造成 cpu 高。

(当时忘了截图,下图只是展示命令和参数含义)

通过 info commandstats 可以查看 Redis 命令统计信息,其中命令格式是

cmdstat_XXX: calls=XXX,usec=XXX,usec_per_call=XXX调用次数、耗费CPU时间、每个命令平均耗费CPU(单位为微秒)

通过 slowlog 命令查看慢命令(默认超过 10ms 就会被记录到日志,只会记录其命令执行的时间,不包含 IO 往返操作,也不记录单由网络延迟引起的响应慢)

(当时也忘了截图,所以就介绍一下 slowlog 怎么看)

xxxxx> slowlog get 10 3) 1) (integer) 411               2) (integer) 1545386469         3) (integer) 232663              4) 1) "keys"                     2) "mecury:*"

图中各字段表示的是:

  • 1=日志的唯一标识符

  • 2=命令的执行时间点,以UNIX时间戳表示

  • 3=查询命令执行时间,以微妙为单位,中的是230ms

  • 4=执行的命令,以数组的形式排列。完整的命令是 keys mucury:*

所以通过这些参数,基本可以确定,是突然有大量的keys *命令导致CPU负载升高,导致响应延迟,问题我们应用中没有开放keys *命令Σ(o゚д゚oノ)

最后将这些统计结果和慢命令发到研发群,发现是别的应用配置配成了我们的Redis,然后他们有个业务场景是爬数据,突然涌入大量的调用,不断的keys *,导致我们的Redis不堪重负,于是将配置修改正确,不再调用我们的Redis。

总结
  • Redis 抖动可以先看网页监控(阿里云做的真好!)

  • 通过命令查看 Redis 指令状态和慢命令的情况

  • 考虑优化 Redis 在代码中的使用情况

  • 如果流量继续上升,需要考虑一下升级了=-=


在一个大项目中,我选择了另一种JDK实现AdoptOpenJDK

科技创新大兴 发表了文章 • 0 个评论 • 63 次浏览 • 2021-05-14 15:24 • 来自相关话题

前言最近在搞一个大项目,做一些基础选型工作。首先就是 JDK 的选型。由于 Oracle 在 Java 8 更改了许可证。这使得我在对 JDK 的选择上除了性能考虑外还要特别注意合规检查。这次我选择了AdoptOpenJDK。AdoptOpenJDKAdopt... ...查看全部
前言

最近在搞一个大项目,做一些基础选型工作。首先就是 JDK 的选型。由于 Oracle 在 Java 8 更改了许可证。这使得我在对 JDK 的选择上除了性能考虑外还要特别注意合规检查。这次我选择了AdoptOpenJDK。

AdoptOpenJDK

AdoptOpenJDK 是一个开放的,社区主导的计划,它提供了来自OpenJDK的 Java 平台参考实现的免费,预构建的二进制文件。

AdoptOpenJDK 发行版涵盖了最全面的操作系统和体系结构。使用 AdoptOpenJDK 二进制文件,您可以确信它在所有环境中的构建和测试都完全相同。

多虚拟机实现

目前它提供了两种虚拟机实现,一种是我们常见的 HotSpot;另一种是 OpenJ9。它们各有特点,HotSpot 比较成熟,而 OpenJ9 在云端更具有占用资源少、启动快的特点,更适合容器化。

稳定可靠

质量是AdoptOpenJDK二进制文件的另一个关键组成部分。社区有大量不同的测试可供使用,以验证每个构建的质量,从而确保应用程序按预期运行和运行。通过回归,功能,系统,负载,应用程序和性能测试,始终可以生成稳定可靠的版本。此外,构建和测试结果是完全开放的,并且可以由社区进行审查。很多财富 500 强公司的 JVM 应用都构建在AdoptOpenJDK之上。

社区驱动

AdoptOpenJDK的发展方向由个人开发者主导,保持中立,不受制于商业公司,为此它成立了一个专门的技术指导委员会来确保这一点。AdoptOpenJDK社区的目标是确保这些定期更新的 Java 始终可供所有人跨平台免费使用。

AdoptOpenJDK社区也非常活跃,在 Java 16 正式发布后,AdoptOpenJDK也第一时间进行了跟进发布了对应版本的 JDK 。而且同时对我们常用的 Java 8、Java 11 进行了长期支持。在用户响应上AdoptOpenJDK更快。

在 2020 年 6 月 19 日,AdoptOpenJDK 加入了 Eclipse 基金会。

安装方便

AdoptOpenJDK提供了多个选择方式,你可以根据需要组合选择。

组合选择JDK

而且提供了各个平台的包管理器安装,无论是 SDKMAN、Chocolatey、Homebrew 或者 Linux 下的包管理器都支持的不错。甚至在 Windows 下连 Java 环境变量都不需要了,如果是王八壳子,你还得注册个账号。

下载量多

截至目前AdoptOpenJDK的下载量已经达到 249,967,583,接近 2.5 亿次。进入 2021 年以来AdoptOpenJDK的下载量已经突破 2000 万次。

总结

目前各大公司包括国内的阿里、华为,甚至不以 Java 为主要技术栈的腾讯都开源了自己的 JDK。OpenJDK 越来越多地被使用,开始成为主流选择。通过胖哥的介绍你可以尝试一下AdoptOpenJDK。

“容灾”和“备份”的区别?原来如此!

科技创新大兴 发表了文章 • 0 个评论 • 64 次浏览 • 2021-05-14 15:24 • 来自相关话题

数据中心运行突发故障(如:天灾不可避免的灾难)是无法预测的,计算机里的数据就像扫雷游戏一样,十面埋伏充满雷区,随时都有可能Game Over,容灾备份就是数据安全的最后防线,但是你可以避免由数据中心发生故障而丢失数据引发的数据丢失的局面。今天为大家介绍“容灾和... ...查看全部

数据中心运行突发故障(如:天灾不可避免的灾难)是无法预测的,计算机里的数据就像扫雷游戏一样,十面埋伏充满雷区,随时都有可能Game Over,容灾备份就是数据安全的最后防线,但是你可以避免由数据中心发生故障而丢失数据引发的数据丢失的局面。

今天为大家介绍“容灾和备份的区别”以及一些尽可能减少发生运行故障失败机会,并加强企业的数据备份环境的简单要点。

什么是容灾 ?

容灾系统是指在相隔较远的异地,建立两套或多套功能相同的IT系统,互相之间可以进行健康状态监视和功能切换,当一处系统因意外(如火灾、地震等)停止工作时,整个应用系统可以切换到另一处,使得该系统功能可以继续正常工作。

容灾技术是系统的高可用性技术的一个组成部分,容灾系统更加强调处理外界环境对系统的影响,特别是灾难性事件对整个IT节点的影响,提供节点级别的系统恢复功能。

容灾的分类

从其对系统的保护程度来分,可以将容灾系统分为:数据容灾和应用容灾,数据容灾就是指建立一个异地的数据系统,该系统是本地关键应用数据的一个实时复制。

应用容灾是在数据容灾的基础上,在异地建立一套完整的与本地生产系统相当的备份应用系统(可以是互为备份),在灾难情况下,远程系统迅速接管业务运行,数据容灾是抗御灾难的保障,而应用容灾则是容灾系统建设的目标。

容灾和备份有什么连系 ?

容灾备份实际上是两个概念,容灾是为了在遭遇灾害时能保证信息系统能正常运行,帮助企业实现业务连续性的目标,备份是为了应对灾难来临时造成的数据丢失问题。在容灾备份一体化产品出现之前,容灾系统与备份系统是独立的。容灾备份产品的最终目标是帮助企业应对人为误操作、软件错误、病毒入侵等’软’性灾害以及硬件故障、自然灾害等“硬”性灾害。

容灾和备份的区别

一般意义上,备份指的是数据备份或系统备份,容灾指的是不在同一机房的数据备份或应用系统备份。备份采用备份软件技术实现,而容灾通过复制或镜像软件实现,两者的根本区别在于:

  1. 容灾主要针对火灾、地震等重大自然灾害,因此备份中心与主中心间必须保证一定的安全距离;数据备份在同一数据中心进行。

  2. 容灾系统不仅保护数据,更重要的目的在于保证业务的连续性;而数据备份系统只保护数据的安全性。

  3. 容灾保证数据的完整性;备份则只能恢复出备份时间点以前的数据。

  4. 容灾是在线过程;备份是离线过程。

  5. 容灾系统中,两地的数据是实时一致的;备份的数据则具有一定的时效性。

  6. 故障情况下,容灾系统的切换时间是几秒钟至几分钟;而备份系统的恢复时间可能几小时到几十小时。

容灾的分类

1、数据级

数据级容灾是最基础的手段,指通过建立异地容灾中心,做数据的远程备份,在灾难发生之后要确保原有的数据不会丢失或者遭到破坏,但在数据级容灾这个级别,发生灾难时应用是会中断的。可以简单的把这种容灾方式理解成一个远程的数据备份中心,就是建立一个数据的备份系统或者一个容灾系统,比如数据库、文件等等。

  • 优点:费用比较低,构建实施相对简单

  • 缺点:数据级容灾的恢复时间比较长

2、应用级

应用级容灾是在数据级容灾的基础之上,在备份站点同样构建一套相同的应用系统,通过同步或异步复制技术,这样可以保证关键应用在允许的时间范围内恢复运行,尽可能减少灾难带来的损失,让用户基本感受不到灾难的发生。应用级容灾就是建立一个应用的备份系统,比如一套OA系统正在运行,在另一个地方建立一套同样的OA系统。

  • 优点:提供的服务是完整、可靠、安全的,确保业务的连续性

  • 缺点:费用较高,需要更多软件的实现

3、业务级

业务级容灾是全业务的灾备,除了必要的IT相关技术,还要求具备全部的基础设施。

  • 优点:保障业务的连续性

  • 缺点:费用很高,还需要场所费用的投入,实施难度大。

备份等级

容灾备份是通过在异地建立和维护一个备份存储系统,利用地理上的分离来保证系统和数据对灾难性事件的抵御能力。根据容灾系统对灾难的抵抗程度,可分为数据容灾和应用容灾。数据容灾是指建立一个异地的数据系统,该系统是对本地系统关键应用数据实时复制。

当出现灾难时,可由异地系统迅速接替本地系统而保证业务的连续性。应用容灾比数据容灾层次更高,即在异地建立一套完整的、与本地数据系统相当的备份应用系统(可以同本地应用系统互为备份,也可与本地应用系统共同工作)。

在灾难出现后,远程应用系统迅速接管或承担本地应用系统的业务运行,设计一个容灾备份系统,需要考虑多方面的因素,如备份/恢复数据量大小、应用数据中心和备援数据中心之间的距离和数据传输方式、灾难发生时所要求的恢复速度、备援中心的管理及投入资金等,根据这些因素和不同的应用场合,通常可将容灾备份分为四个等级。

第0级:没有备援中心

这一级容灾备份,实际上没有灾难恢复能力,它只在本地进行数据备份,并且被备份的数据只在本地保存,没有送往异地。

第1级:本地磁带备份,异地保存

在本地将关键数据备份,然后送到异地保存。灾难发生后,按预定数据恢复程序恢复系统和数据。这种方案成本低、易于配置。但当数据量增大时,存在存储介质难管理的问题,并且当灾难发生时存在大量数据难以及时恢复的问题。为了解决此问题,灾难发生时,先恢复关键数据,后恢复非关键数据。欢迎关注微信公众号:朱小厮的博客。

第2级:热备份站点备份

在异地建立一个热备份点,通过网络进行数据备份。也就是通过网络以同步或异步方式,把主站点的数据备份到备份站点,备份站点一般只备份数据,不承担业务。当出现灾难时,备份站点接替主站点的业务,从而维护业务运行的连续性。

第3级:活动备援中心

在相隔较远的地方分别建立两个数据中心,它们都处于工作状态,并进行相互数据备份。当某个数据中心发生灾难时,另一个数据中心接替其工作任务。这种级别的备份根据实际要求和投入资金的多少,又可分为两种:

  • 1、两个数据中心之间只限于关键数据的相互备份;

  • 2、两个数据中心之间互为镜像,即零数据丢失等。

零数据丢失是目前要求最高的一种容灾备份方式,它要求不管什么灾难发生,系统都能保证数据的安全。所以,它需要配置复杂的管理软件和专用的硬件设备,需要投资相对而言是最大的,但恢复速度也是。

转载于公众号’程序猿DD“


程序员,都是内卷之王!

科技创新大兴 发表了文章 • 0 个评论 • 71 次浏览 • 2021-04-16 14:47 • 来自相关话题

前言最近看到这个问题被谈得很多。铺天盖地的35岁、内卷化、996。这里也想谈谈自己的想法。内卷化的形成内卷为什么会形成呢?从公司内部的角度来说,同事之间做的事情也缺少独特性。那么既然每个人都差不多,那么与其招一个工作十年的人,还不如招个应届生。虽然说从代码的产... ...查看全部


微信截图_20210416143250.png前言

最近看到这个问题被谈得很多。铺天盖地的35岁、内卷化、996。这里也想谈谈自己的想法。

内卷化的形成

内卷为什么会形成呢?从公司内部的角度来说,同事之间做的事情也缺少独特性。那么既然每个人都差不多,那么与其招一个工作十年的人,还不如招个应届生。虽然说从代码的产出和质量来说,工作十年的工程师比应届生理论上来说应该是好很多, 但是如果工作十年的人缺少积累,缺少系统性的理解,那么跟应届生比较可能多了一些广度(因为换过工作)。但是深度上来说并没有本质上的区别。那么这个时候就会发生内卷了,公司不停的把老员工换成新员工,老员工也不停的跳槽导致缺乏积累,长此以往公司很难得到优质的员工,员工也很难得到深入的知识和技能的积累。

如果把这个发到公司之间,那么很多公司间的竞争也是重复性的,你做个朋友圈,那么我就做个拼圈,如果你做个金融服务,那么我也做一个。公司的产品决策并不完全是跟公司本身的基因和方向决定,而是因为什么方向火而赶鸭子上架。公司在做决策的时候考虑的是最少的投资和最快的回报,而不是靠着自己的特性而做长久的、独特的产品发展。在做这样重复建设的时候,公司可能会在竞争对手那里挖上那么几个牛人,然后其他的(包括UI)都照抄就好。长此以往,用户、客户很难用到更好的产品,而公司也很难积累出做出好的产品的能力。

从内卷到996

既然公司间都内卷了,公司做的产品跟别人的产品差不多,那么拼的就是手速了。如果竞争对手和你拿的投资差不多,那么招的人数也接近,如果竞争对手都996了,那么你955岂不是输在了起跑线上?同理,大一点的公司内部,团队之间也没有太多壁垒和界限,如果说你团队的输出能够替代另一个团队,那么让自己的团队拼一拼,把地盘占好,年底涨工资也是一个很美滋滋的事情。但是如果你这样做,别的团队也这样做,长此以往就没人不996了,最后你996也不够,只能007了。

我如何看待996

我今年工作刚好十年。我刚毕业第一年在阿里工作,团队的任务还是比较重,但是我一周也就两天会在公司吃晚饭。周末和晚上我也会花时间学习感兴趣的东西(当时是机器学习,还写了不少博客),真正晚上工作的时间不是很多。后来去了一个外企,基本上每天5点公司就没人了,我晚上就看看开源的项目,有时间贡献一下。过了两年我去了美国,第一年公司IPO前还比较忙,有时候晚上要在公司吃饭加个班啥的,后面IPO后公司也没人加班了,我周末和晚上不少时间都花在开源里面。最近这几年带团队,白天的会比较早,一周晚上也有那么几天有晚上的会,除了陪陪家人以外,有时间我还是会继续弄弄开源,看看论文和书。

我对于公司、团队级别的强制996是反对的,因为工程师做的事情应该是在更轻松的氛围里面创新,而不是被按在工位前出活。有些工作是需要很多的思考,特别是架构设计,还有职责划分之类的。996会让人缺少了思考的空间,对于那些资深的工程师或者架构师来讲,缺少思考的空间会导致最后出来的架构不是最优的,因为好的设计应该是想出来的而不是堆出来的,如果架构设计都出问题了,后面的工程部分会跟着错。对于管理方向的人也一样,如果缺少了思考的空间,管理者会更难为他人着想,更难思考团队到底需要和达到什么的目标,怎么做能够让公司受益等等。当你的时间都困在了工作中,长期来讲会产生工作的倦怠(burn out),对于身心、家庭、还有公司都不是什么好事。

但是另一方面我对于弹性的工作时间和短期的加班是可以接受的,比如说产品要发布了,或者客户有什么问题了,哪怕是周末或者晚上,我觉得也应该能够尽力帮忙,但是这样的加班节奏不应该是长期的、持续的、强制的。公司(或者管理者)不应该告诉员工这个时候加班,我的态度是,如果员工有一段时间特别忙,加班比较多,我会让他们去休个假,或者轻松一段时间。

我自己也一样,如果忙了一段时间,也需要从工作中脱离一下。因为忙碌的时间太久想要从中恢复很累,而且加班太多,导致心情不好的时候也会让家庭不开心,并且影响工作本身的效率。

工程师怎么避免内卷化

第一我觉得工程师要打好基础:不管是科班毕业还是转行。当你做上程序员的时候,就一定要打好自己的基础,基础包括:

  • -编程本身的技能:一定要写一手好程序,有好的编程习惯。

  • -写作、沟通的技能:能够写好的文档,做出清晰的沟通。

在工作的前几年,就要开始建立自己的社交圈,有一些值得信赖,互相学习、找工作可以互相内推的朋友,这样可以避免走很多的弯路。

在自己工作的范围内,看得比较深:因为你对于某一样东西有深入的理解后,学习浅一些的东西会很容易。比如说你做的是互联网的后台开发,那么深入理解一个或者几个分布式的系统很重要,如果做IOS app,那么对手机系统的内部工作应该是要很懂。

多阅读,多看看系统的知识,还有好的论文(比如说Google的论文):这里我并不推荐付费的网课,相对网课,看看那些原创的书,比如说DAIA,算法导论之类的。会比只是教你刷刷LeetCode要好得多。当然LeetCode也是可以做做,不过不应该把它作为人生的追求。也建议看看管理、商业类的书,比如说硅谷之火,创新者的窘境之类的。

我建议这些能力在工作的3年内培养。

3年后,在有了这些基础后,对于业界和行业的发展应该会看得更清楚,而不至于走错大方向,比如说大家都在做SaaS的时候,你不应该花时间去学习太多windows 桌面的软件开发;选择一条发展更快的技术路线应该是避免内卷化的一个很重要的选择,如果方向都选错了那么避免内卷也很难。

另外跳槽的时候应该注意积累,每次跳槽应该是能够有更加深入的技能,而不是看钱跳槽(钱会自然来的)。如果每次跳槽都是换个方向平移重来,可能会导致工作十年跟工作3年的输出类似。

关于技术方向选型的一些建议

我个人觉得未来的后端软件发展逃脱不了两样东西:第一是云,第二是开源。在大部分的时候是两者结合起来的,因为云本身也用了很多开源的软件。相比自己造轮子,使用开源,并且贡献开源(重点)应该是第一选择。把开源软件folk出来,自己搞一套我觉得并不是很可取。因为这样跟做闭源的区别也不是很大(当然你至少会对那个开源软件有深入的了解)。你的第一选择是,能否把一些贡献给反馈回开源的社区。

如果你选择贡献开源,最好选择贡献有社区的开源软件,其中以Apache或者CNCF为代表。因为有社区的开源软件会走得更长、也往往会更成功,作为一个这样(成功的)项目贡献者你的价值就会越大。


如果你刚毕业、或者工作时间还很短,建议选择更新一点的方向,比如说你现在想要做后端软件开发,Go/Rust会比Java更好,Java比C++也会更好。(我这里这样说不是为了搞语言之争,我也知道C++ ver.17 有很多新的特性,也本来就有很多市场)。

如果两个差不多的工作机会,做云上的软件开发(比如说一个给餐饮行业做管理的SaaS),会比做传统行业软件开发(比如给餐饮行业做桌面软件)要来得更好。因为一个发展更快,空间更大的行业的内卷化就会越少。

管理者:如何避免团队内卷化

作为管理者而言,在做好公司的任务之外,也需要尽力避免团队的内卷化。

首先说说加班,虽然说短时间的996会给团队带来(不少的)产出,不过从长时间来看,团队会因为倦怠和缺少进步而缺乏后劲。长时间的加班会让团队心情不好,钱给够是一个方面,但是钱很难买来长期的快乐(我的经验是涨工资的时候很开心,涨完了过段时间就平静了)。相对用钱去刺激加班(给1.5倍的工资,干两个人的活),我觉得更重要的是让团队成员真正能够得到发展,能够喜欢自己的工作,这样的效果很正向:公司能够得到工程师尽心尽力的产品,而工程师也能获得发展,并且过程很开心。作为管理者而言,你自己可以加班,但是不要要求团队总是和你一起加班,偶尔一次可以,总是这样的话,团队会变得低效和士气低落。

跟加班类似的,管理者也不应该认为员工的所有时间都属于公司的,应该尊重别人的休假、陪家人、生病等等的时间。

那么怎么能够让工程师更好的发展呢?管理者应该和工程师多沟通,多1-1,了解到别人的需求和想法,然后根据情况给出不同的机会(比如说承担某个重要的功能开发、在某个meetup上面讲一场技术专题、做一个更好的设计文档)。作为团队的管理者,不应该假设“给你做这个功能你就可以进步和开心了”。

其次,在面试的时候也不要有很多不恰当的要求,比如说觉得35岁以上、或者怀孕的人就不应该要之类的,在我看来35岁的程序员可以有非常厉害的输出,对这样的程序员的歧视首先是非常的没意义,其次也会加速内卷、社会更加不公平和完全不必要的焦虑(35岁焦虑)。对于公司而言应该是看大格局(怎么打造一个别人更喜欢的产品),而不是纠结于比较low的地方(如果招了一个刚结婚的人,未来一两年可能需要休几个月的产假;或者35岁的人有娃,需要花时间陪娃、接娃上下课)。

草草写一点想法抛转引玉一下。

转载于公众号“码个蛋”


曾经风光无限的铁饭碗没了…网友评论:996卷走了955的他们…

科技创新大兴 发表了文章 • 0 个评论 • 59 次浏览 • 2021-04-16 14:47 • 来自相关话题

作为一个程序员,你刚毕业时候的梦想是去哪里呢?是BAT这些大厂?是自己马上就开始创业?相信有很多一部分人,尤其是80后,最初的梦想是想进一个外企工作,微软、谷歌、甲骨文、IBM、HP等等等等。可以说80后那一代,见证了外企在国内最辉煌的一段岁月,当时如果身边有... ...查看全部

作为一个程序员,你刚毕业时候的梦想是去哪里呢?是BAT这些大厂?是自己马上就开始创业?

相信有很多一部分人,尤其是80后,最初的梦想是想进一个外企工作,微软、谷歌、甲骨文、IBM、HP等等等等。

可以说80后那一代,见证了外企在国内最辉煌的一段岁月,当时如果身边有哪个同学拿到了一个外企的offer,绝对是要被人羡慕半天的,尤其是那些大公司,真是挤破头皮都想进去,当时每个人都说外企的福利有多好、外企的管理多人性化,相比起现在国内IT公司追求的996标配,外企仅仅在加班费一项上足以傲视群雄。

但是再辉煌的君王也有落寞的一天,曾经那些个习惯了穿西装打领带喝咖啡讲英文的外企员工不得不承认,外企风光不再,可以说外企的黄金时代已经过去了。

这不,前几天有消息传来,巨头IBM的中国研究院(IBM CRL)已经全面关闭,关闭的悄无声息,在举国讨伐郑姓女戏子的热点追逐下,更是显得苍白无力、无人知晓。

IBM,作为大家熟知的行业龙头企业,有着一百多年的历史,哪怕IBM研究院,也可以追溯到上世纪40年代,比新中国成立的时间还早。

IBM中国研究院则是在1995年成立于中国北京,位于北京上地信息产业基地的西北角,坐落在中关村软件园内。当时绝对是一件轰动国内IT界的事情。

到了2008年,IBM中国研究院上海分院成立。

自从建立以来,据不完全统计,有过上千名研究人员在该研究院工作过或正在工作,其中绝大多数拥有中国乃至世界一流大学的博士和硕士学位。因为IBM基本不招本科生,当时硕士能进IBMCDL就已经很不错了,能进CRL的大多数都是博士。

说起IBM中国研究院的重点研究领域共有四个,分别是

  • 行业解决方案行业解决方案,是指运用前沿技术解决行业的关键问题,这里指的关键问题是环境治理、电力与能源、物流与供应链、医疗、金融服务等各领域相互相成的一系列复杂方案,并非单单局限于某个狭隘角度。而是更加关注类似大气污染防治、可再生能源高效利用和企业节能这种关乎人类可持续发展的命运话题,往往一个研究计划就以十数年为周期。

  • 认知计算最为知名的就是在2011年发明的沃森,它以IBM创始人Thomas J. Watson名字命名。作为一个自然语言问答系统,沃森甚至在美国的著名电视智力竞赛节目《Jeopardy!》中击败了该竞赛最长优胜纪录的保持者Kenneth Jennings,从此被世人熟知。

  • 运算即服务IBM中国研究院主要从事物联网云计算、云计算基础设施与云服务、平台即服务(PaaS)的开发与研究。

  • 物联网IBM中国研究院在高性能无线专用物联网通信系统、大规模物联网数据处理中间件平台等领域取得了诸多技术上的突破,并在2014年提出过物联网3.0的概念。

当年的IBM就像现在的BAT,聚集了国内最能干的一帮青年才俊,20年光阴转瞬即逝,当年的意气奋发现在亦早已成了40不惑,甚至50知天命。曾经的雄心壮志,还在吗?

现在的年轻人或许只知道击败了众多围棋高手的人工智能阿尔法狗,但实际上早在1997年,IBM研发的计算机深蓝(Deep Blue)就战胜了国际象棋冠军卡斯帕罗夫。当时的深蓝就是今天的阿尔法狗,当时的IBM就是行业的领先者。

而在深蓝的基础上,进一步通过机器学习,复杂算法和大规模数据库进化出来的就是后来的沃森,现如今沃森在金融领域的理财管理,保险业理赔,商业领域的社交媒体分析,医疗领域的慢性疾病控制,跨行业的呼叫中心服务都有着广泛的运用。

但是一个沃森掩盖不了IBM的日益老态,作为曾经的巨人,IBM已经连续十季度营收下降,仿佛预示着一个时代的落幕,更是一代在华外企的落幕。

其实早在前几年,就不断有曾经的巨头外国企业逐渐离开中国市场:

  • 2015年3月19日,雅虎宣布退出中国市场,雅虎北京研发中心宣布关闭。

  • 2019年,亚马逊宣布退出中国。

  • 甲骨文,在受到了云计算的冲击后,曾经不可一世的甲骨文正式关闭在中国的研发中心,并裁减员工约900人。

尤其是近年来BAT、华为等国内大厂的崛起,习惯了996的程序员让加班成本无比高昂的外企更加不适。毕竟,再杰出的才华,在努力面前还是会被超越!

退出,其实是早晚的事情。告别,也是情理之中。


刷爆全网:一个中科大差生的8年程序员工作总结(下)

科技创新王叫兽 发表了文章 • 0 个评论 • 61 次浏览 • 2021-05-14 15:35 • 来自相关话题

2018 年前面说到,2017 年开始频繁出入医院,同时项目也越来越忙,我渐渐的开始喘不过气起来,最后医生也给了结论,需要做手术,手术有不小的失败的几率。我和妻子商量后一咬牙做吧,如果失败就走地下的路子,但是可能需要准备一笔钱(手术如果成功倒是花销不会太大),... ...查看全部
2018 年

前面说到,2017 年开始频繁出入医院,同时项目也越来越忙,我渐渐的开始喘不过气起来,最后医生也给了结论,需要做手术,手术有不小的失败的几率。我和妻子商量后一咬牙做吧,如果失败就走地下的路子,但是可能需要准备一笔钱(手术如果成功倒是花销不会太大),哎,古人说一分钱难倒英雄汉,真是诚不欺我啊,这个时候我已经开始萌生离职的想法了。怎么办呢,生活还是要继续,我想起了经常来单位办理贷款的银行人员,贷款吧,这种事情保险公司肯定不赔的嘛,于是我办理了一笔贷款,准备应急。

项目结束,离职

时间慢慢的时间走到了 8 月份,我的项目已经告一定段落,一颗卫星圆满发射成功,深空项目也通过了初样阶段我的第一份工作也算有始有终了。我开始在网上投递简历,我技术还算可以,沟通交流也不错,面试很顺利,一个月就拿到了 6 个 offer,其中就有大菊花厂的 offer,定级 16A,25k 月薪后来政策改革加了绩效工资 6k(其实我定级和总薪水还是有些偏低了和我是国企,本来总薪水就低有很大关系,话说菊花厂级别后面真的是注水严重,博士入职轻松 17 级)菊花厂的 offer 审批流程是我见过最长,我当时的接口人天天催于流程都走了近 2 个月。

我向领导提出了离职,离职的过程很痛苦,有过经历的人估计都知道,这里就不说了。话说我为什么会选择华为呢,一是当时急需钱,二是总觉得搞嵌入式的不到华为看看真的是人生遗憾。现在想想没有认真去理解公司的企业文化就进入一家公司还是太草率了:

如果你不认同一个公司的企业文化,你大概率干不长,干不到中高层,IT 人你不及时突破到中高层很快你就会面临非常多问题;公司招人主要有两种人,一种是合格的人,一种是合适的人,合格的人是指技能合格,合适的人是指认同文化。企业招人就是先把合格的人找进来,然后通过日日宣讲,潜移默化把不合适的人淘汰掉。

入职华为

经过一阵折腾终于离职成功,开始入职华为。离职我做了一件比较疯狂的事情,当时因为手上有一笔现金了,一直在支付利息,心里就像拿它干点啥。那时由于看病,接触了地下 XX 市场,听说了 B&TC,走之前我心一横买 B&T&C,后来不断波动,最终我还是卖了,挣了一些钱,但是最终没有拿到现在,果然是考验人性啊。

2019 年
成功转正

华为的试用期真长,整整 6 个月,每个月还有流程跟踪,交流访谈,终于我转正了,转正答辩我不出意料拿到了 Excellent 评价,涨了点薪水,呵呵还不错。华为的事情我不太想说太多,总之我觉得自己没有资格评判这个公司,从公司看公司的角度华为真正是个伟大的公司,任老爷子也是一个值得敬佩的企业家。

在华为干了半年后,我发现我终究还是入职的时候太草率了,我当时没有具体的了解这个岗位,这个部门。入职之后我发现,我所在的是硬件部门,我在一个硬件部门的软件组,我真是脑子秀逗了。

在一个部门,你需要尽力进入到部门主航道里,尽力不要在边缘的航道工作,特别是那些节奏快,考核严格的部门。

更严峻的是我所在的大组,居然是一个分布在全国 4 地的组,大组长(华为叫 LM)在上海,4 地各有一个本地业务负责人。我立刻意识到,到年终考评时,所有的成果一定会是 4 地分配,并且 4 地的负责人会占去一大部分,这是组织结构形成的优势。我所在的小组到时候会难以突破,资源分配会非常激烈。

备孕成功

先不说这些,在 18 年时妻子做完了手术,手术居然很成功。休息完之后我们 19 年初开始备孕了,这次真的是上天保佑,运气不错,很快就怀上了。这段时间,我虽然每天做地铁 1.5 小时到公司上班,经受高强度的工作,我心里每天还是乐滋滋的。但是,突然有一天,PL(华为小组长)根我说,LM 需要派人去杭研所支持工作,我是最合适人选,让我有个心里准备。当时我是不想去的,这个时候妻子是最需要关怀的时候,我想 LM 表达了我的意愿,并且我也知道如果去了杭州年底绩效考评肯定不高。过程不多说了,反正结果是我去了杭州。

于是我开始了两头奔波的日子,每个月回上海一趟。这过程中还有个插曲,家里老家城中村改造,分了一点钱,父母执意卖掉了老家学校周边的房子,丈母娘也处理老家的一些房子,然后把钱都给了我们,然后我用这笔家里最后的资产,同时利用华为的现金流在绍、甬不限购地区购买一些房子,我没有炒房的想法,只是防止被通货膨胀侵蚀而已,不过后来结果证明我貌似又蒙对了啊,我自己的看法是:

杭绍甬在经济层面会连成紧密的一片,在行政区上杭州兼并绍 部分区域的概率其实不大,行政区的扩展应该是先兼并自身的下级代管城市。

宝宝出生

不说房子了,继续工作吧。10 月份干了快一年时候,我华为的师傅(华为有师徒培养体系)偷偷告诉我被定为备选 PL 了,虽然不知道真假,但是我心里还是有点小高兴。不过我心里也慢慢意识到这个公司可能不是我真正想要的公司,这么多年了,愚钝如我慢慢也开始知道自己想干什么了。因为我的宝宝出生了,看着这只四脚吞金兽,我意识到自己已经是一个父亲了。

2019 年随着美国不断升级的制裁消息,我在华为的日子也走到年底,马上将迎来神奇的 2020 年。

2020

2020 就少写一些了,有些东西真的可能忘却更好。

在家办公

年初就给大家来了一个重击,新冠疫情改变了太多的东西。这个时候真的是看出华为的执行力,居家办公也效率不减多少,并且迅速实现了复工。到了 3-4 月份,华为开始正式评议去年绩效等级,我心里开始有预感,以前的分析大概率会兑现,并且绩效和收入挂钩,华为是个风险意识极强的公司,去年的制裁会导致公司开始风险预备,虽然我日常工作还是受到多数人好评,但是我知道这其实在评议人员那里,没有任何意义。果然绩效评议结果出来了,呵呵,我很不满意。绩效沟通时 LM 破例跟我沟通了很长时间,我直接表达了我的想法。LM 承诺钱不会少,呵呵,我不评价吧。后来一天开始组织调整,成立一个新的小组,LM 给我电话让我当组长,我拒绝了,这件事情我不知道对错,我当时是这样考虑的

  1. 升任新的职位,未必是好事,更高的职位意味着更高的要求,因此对备选人员要么在原岗位已经能力有余,要么时间精力有余;我认为当时我这两个都不满足,呵呵离家有点远,LM 很可以只是因为绩效事情做些补偿。

  2. 华为不会垮,这点大家有信心,但未来一定会出现战略收缩,最后这艘大船上还剩下哪些人不清楚,底层士兵有可能是牺牲品。

  3. 我 34 岁了

提出离职

另外我一直思考未来想做什么,已经有了一丝眉目,就这样,我拿了年终奖约 7 月就提出了离职,后来部门还让我做了最后一次贡献,把我硬留到 10 月份,这样就可以参加上半年考核了,让帮忙背了一个 C 呵呵,这是工作多年,最差绩效吧。

这里还有一个小插曲,最后这三个月我负责什么工作呢,因为 20 年 3 月开始我就接手了部分部门招聘工作(在华为干过的都知道为什么非 HR 也要帮忙招聘,呵呵大坑啊,就不多解释了),结果最后三个月我这个待离职员工居然继续负责招聘,真的是很搞笑,不过由于我在上一份工作中其实一直也有招聘的工作,所以也算做的轻车熟路,每天看 50 份左右简历(我看得都非常仔细,我害怕自己的疏忽会导致一个优秀的人才错失机会,所以比较慢)其实也蛮有收货,最后好歹对程序员如何写简历有了一些心得。

总结

好了 7 年多,近 8 年的职场讲完了,不管过去如何,未来还是要继续努力,希望看到这篇文章觉得有帮助的朋友,可以帮忙点个推荐,这样可能更多的人看到,也许可以避免更多的人犯我犯的错误。

刷爆全网:一个中科大差生的8年程序员工作总结(上)

科技创新王叫兽 发表了文章 • 0 个评论 • 67 次浏览 • 2021-05-14 15:35 • 来自相关话题

今年终于从大菊花厂离职了,离职前收入大概 60w 不到吧!在某乎属于比较差的,今天终于有空写一下自己的职场故事,也算是给自己近 8 年的程序员工作做个总结复盘。近 8 年有些事情做对了,也有更多事情做错了,在这里记录一下,希望能够给后人一些帮助吧,也欢迎私信交... ...查看全部

今年终于从大菊花厂离职了,离职前收入大概 60w 不到吧!在某乎属于比较差的,今天终于有空写一下自己的职场故事,也算是给自己近 8 年的程序员工作做个总结复盘。

近 8 年有些事情做对了,也有更多事情做错了,在这里记录一下,希望能够给后人一些帮助吧,也欢迎私信交流。文笔不好,见谅,有些细节记不清了,如果有出入,就当是我编的这个故事吧。

PS:有几个问题先在这里解释一下,评论就不一一回复了

1.关于差生,我本人在科大时确实成绩偏下,差生主要讲这一点,没其他意思。

2.因为买房是我人生中的大事,我认为需要记录和总结一下,本文中会有买房,房价之类的信息出现,您如果对房价,炒房等反感的话,请您停止阅读,并且我再这里为浪费您的时间先道个歉。

2013 年
加入上海航天 x 院某卫星研究所

本人 86 年生人,13 年从中科大软件相关专业毕业,由于父母均是老师,从小接受的教育就是努力学习,找个稳定的“好工作”,报效国家。

于是乎,毕业时候头脑一热加入了上海航天 x 院某卫星研究所,没有经过自己认真思考,仅仅听从父母意见,就草率的决定了自己的第一份工作,这也为我 5 年后离职埋下了隐患。这里总结第一条经验:

如果你的亲人是普通阶层,那对于人生中一些大事来说,他们给的建议往往就是普通阶层的思维,他们的阶层就是他们一生思维决策的结果,如果你的目标是跳出本阶层,那最好只把他们的建议当成参考。

13 年 4 月份,我坐上火车来到上海,在一路换乘地铁来到了大闵行,出了地铁走路到单位,一路上建筑都比较老旧,我心里想这跟老家也没什么区别嘛,还大上海呢。

到达单位报道,负责报道的老师很亲切,填写完资料,分配了一间宿舍,还给了大概 3k 左右安家费,当时我心里那个激动啊(乡下孩子没有见过钱啊,见谅),拿了安家费,在附近小超市买好生活用品,这样我就开始了自己航天生涯。

经过 1 个月集中培训后,我分配到部门,主要负责卫星上嵌入式软件开发。不过说是高大上的卫星软件开发,其实刚开始就是打杂,给实验室、厂房推箱子搬设备,呵呵,说航天是个体力活相信很多航天人都有同感吧。不过当时年轻,心思很单纯,每天搬完设备,晚上主动加班,看文档材料,画软件流程图,编程练习,日子过得很充实。

记得第一个月到手大概 5k 左右(好少呀),当时很多一起入职的同事抱怨,我没有,我甚至不太愿意和他们比较工资,这里总结第二条经验:

不要和你的同事比工资,没有意义,比工资总会有人受伤,更多的是负面影响,并且很多时候受伤的会是你。

工作中暂露头角

工作大概一个月的时候,我遇到了一件事情,让我从新员工里面开始暂露头角。事情是这样的当时国家要对军工单位进行 GJB5000A 软件开发等级认证(搞过这个认证的同学应该都知道,过这个认证那是要多酸爽有多酸爽),但是当时一个负责配置管理的同事却提出离职,原因是他考上了公务员,当时我们用的那个软件平台后台的版本控制是 SVN 实现的,恰好我在学校写程序时用过,呵呵,话说回来现在学生自己写软件很少有人会在本地搭版本控制器吧!我记得当时还被同学嘲笑过,这让我想起了乔布斯学习美术字的故事,这里总结一下:

不要说一项技能没有用,任何你掌握的技能都有价值,但是你要学会找到发挥它的场景。如果有一天你落水了,你可能会很庆幸,自己以前学会了游泳。

工作中如果要上升,你要勇于承担麻烦的、有挑战的任务,当你推掉麻烦的时候,你也推掉了机遇。

好了,扯远了,回到前面,当时我主动跟单位认证负责人提出,我可以帮忙负责这方面的工作,我有一定经验。这里要提一下这个负责人,是位女士,她是我非常敬佩的一个前辈,认真,负责,无私,整个人为国家的航天事业奉献了几十年,其实航天领域有非常多这样的老前辈,他们默默奋斗,拿着不高的薪水,为祖国的国防建设做出了巨大的贡献。当时这位负责人,看我平时工作认真积极,思维反应也比较灵活(因为过认证需要和认证专家现场答辩的)就同意了我的请求,接受到这个任务之后,我迅速投入,学习认证流程、体系文件、迅速掌握认证工作要点,一点一点把相关的工作做好,同时周期性对业务进行复盘,总结复盘可能是我自己的一个优点:

很多人喜欢不停的做事,但不会停下来思考,缺乏总结复盘的能力,其实阶段性总结复盘,不仅能够固化前面的经验,也能梳理后面的方向;把事情做对很重要,但是更重要的是做对的事;另外不要贪快,方向正确慢就是快(后半句是我后来才想明白的,如果早想明白,就不会混成目前这样了)

1 个月后,当时有惊无险通过了当年的认证,当时负责人主动向单位申请了 2k 特别奖,当时我真的非常高兴,主要是自己的工作产生了价值,得到了认可。后来几个月的日子平淡无奇,有印象的好像只有两件事情。

一件事情是当年端午,当时我们在单位的宿舍休息,突然楼道上一阵骚动,我打开宿舍门一看,原来是书记来慰问,还给每个人送了一箱消暑饮料,这件事印象比较深刻,是我觉得国企虽然有各种各样的问题,但是论人文关怀,还是国企要好得多。

错失一次暴富的机会

另一件事是当年室友刚买房,然后天天研究生财&之道,一会劝我买房,一会劝我买比&特&币,我当时没有鸟他,为什么呢,因为当时的室友生活习惯不太好,会躺在床上抽烟,还在宿舍内做饭(我们宿舍是那种很老的单位房,通风不好),我有鼻炎,所以不是很喜欢他(嗯,这里要向室友道歉,当年真是太幼稚了)。现在 B&T&C4 万美元了,我当时要是听了室友也能小发一笔了(其实我后来 18 年买了,但是没有拿住这是后话),这里要总结一下:

不要因为某人的外在,如外貌、习惯、学历等对人贴上标签,去盲目否定别人,对于别人的建议,应该从客观出发,综合分析,从善如流是一项非常难得的品质。

人很难挣到他认知之外的财富,就算偶然拿到了,也可能很快失去。所以不要羡慕别人投机获得的财富,努力提升你的思维,财商才是正道。

航天生涯的第一个正式项目

转眼到了 9 月份(我 4 月份入职的),我迎来了我航天生涯第一个正式的型号项目(型号,是军工的术语,就相当于某个产品系列比如华为的 mate),当时分配给我的型号正式启动,我终于可以开始写卫星上的代码了。

当时真的是心无旁骛,一心投身军工码农事业,每天实验室,测试厂房,评审会,日子虽然忙碌,但是也算充实。并且由于我的努力工作,加上还算可以的技术水平,我很快就能独立胜任一些型号基础性的工作了,并且我的努力也受到了型号(产品)线的领导的认可,他们开始计划让我担任型号主管设计师,这是一般工作 1-2 年的员工的岗位,当时还是有的激动的。

2014 年
升任主管设计师后的一次波折

转眼间到 2014 年了,大概上半年吧,我正式升任主管设计师,研发工作上也开时独挡一面了,但是没多久产品研发就给了我当头一棒。

事情是这样的,当时有一个版本软件编写完毕,加载到整星上进行测试,有一天大领导来检查,当时非常巧,领导来时测试主岗按某个岗位的人员要求,发送了一串平时整星没有使用的命令(我在实验室是验证过的),结果我的软件立刻崩溃,无法运行。由于正好领导视察,这个问题立马被上报到质量处,于是我开始了苦逼的技术归零攻关(搞航天的都懂,我就不解释了)。

期间每天都有 3 个以上领导,询问进度,当时作为新人的我压力可想而知,可是我无论如何都查不出来问题,在实验室我的软件完全正常!后来,某天中午我突然想到,整星上可能有不同的环境,具体过程就不说了。后人查出来是一个负责加载我软件的第三方软件没有受控,非法篡改了我程序的 4 个字节,而这 4 字节正好是那天发送命令才会执行的代码,结果导致我的软件崩溃。最后我花了进一个月完成了所有质量归零报告,技术分析报告,当然负责技术的领导没有责怪,相反的还更加看重我了,后来我每遇到一个质量问题,无论多忙最后定要写一份总结分析报告,这成了我一个技术习惯,也为后来我升任软件开发组长奠定了技术影响基础。

强烈建议技术团队定期开展质量回溯,需要文档化,还要当面讲解,深入的技术回溯有助于增加团队技术交流活跃度,同时提升团队技术积淀,是提升产品质量,打造优秀团队的有效方法。

个人的话建议养成写技术总结文章的习惯,这不仅能提升个人技术,同时分享也可以增加你的影响力

职场软技能的重新认识

上半年就在忙碌中度过了,到了年底,发生了一件对我们组影响很大的事情,年底单位开展优秀小组评比, 其实这个很多公司都有,那为什么说对我们组影响很大内,这里我先卖关子。这里先不得不提一个人,是个女孩子,南京大学的,比我晚来一年,她做事积极,反应灵敏,还做得一手不错的 PPT,非常优秀,就是黑了点(希望她看到了不要来找我,呵呵)。

当时单位开展优秀小组评比,我们当时是新员工,什么都很新鲜,就想参加一下,当时领导说我们每年都参加的,我们问,我们每年做不少东西,怎么没有看到过评比的奖状,领导有点不好意思,说我们没有进过决赛。我们又问,多少名可以进入决赛圈,答曰前 27 名即可(总共好像 50+个组)我们当时心里真是一万个羊驼跑过。。。。

其实当时我们组每年是做不少事情的,我们觉得我们不应该排名如此之低,于是我们几个年轻人开始策划,先是对我们的办公室彻底改造(因为要现场先打分,然后进决赛),然后好好梳理了我们当年取得的成绩,现场评比时我自告奋勇进行答辩(我沟通表达能力还不错,这也算我一个优势吧),后面在加上前文提到的女孩子做的漂亮 PPT,最后我们组拿到了铜牌班组的好成绩,我也因为这次答辩的优秀表现在领导那里又得到了认可,写了大半段了,再总结一下:

职场软技能如自我展示很重要,特别是程序员,往往在这方面是个弱项,如果可以的话,可以通过练习,培训强化一下这些软技能,对职场的中后期非常有帮助。

2015 年

时间总是过得很快,一下就到 2015 年了,这一年发生了一件对我影响很大的事情。

升任小组副组长

当时我们小组有 18 个人了,有一天部门开会,主任要求大家匿名投票选副组长(当时部门领导还是很民主的),因为日常事务逐渐增多,老组长精力有限,想把一些事物分担出来,当天选举结果就出来了,我由于前面的技术积累和沟通表达能力的展现,居然升任副组长,当时即有些意外,因为总是有传言说国企没背景一辈子就是最最底层,后来我仔细思考过,下面是我不成熟的想法:

不要总觉得国企事业单位的人都是拼背景,拼关系,我承认存在关系户,但是不要把关系户和低能力挂钩,背景只是一个放大器,当关系户做出了成绩时它会正面放大影响,当关系户做了不光彩的事情是,它也会让影响更坏。没有背景,你可以作出更大的贡献来达到自己的目标,你奋斗的过程是更大的财富。另外,我遇到的关系户能力都很强,也可能是巧合,也可能是他们的父辈给给他们在经验层次上比我们更优秀的教育。

学习团队管理技巧

升任副组长后,我的工作更加忙碌了,不仅要做自己项目的事情,还要横向管理和协调组内其他项目的事情,有人说要多体谅军工单位的基层班组长,这话真是没错啊。这个时候我开始学习一些管理技巧,如何凝聚团队,如何统一协调资源等等,这段时间我还是在不断成长。不过记得当年还是犯了一个很大的方向性错误,虽然更多的原因可能归结为体制吧,但是当时其实可以在力所能及的范围内做一些事情的。

具体是这样的,当时管理上有项目线,有行政线,就是很常见的矩阵式管理体系,不过在这个特殊的体制下面出现了一些问题。当时部门一把手被上级强制要求不得挂名某个型号,因为他要负责部门资源调配,而下面的我们每个人都归属 1-2 个型号(项目),在更高层的管理上又有横向的行政线(不归属型号),又有纵向的型号管理线。

而型号的任务往往是第一线的,因为产品还是第一位的,但是个人的绩效、升迁又归属行政线管理,这种形式在能够高效沟通的民企或者外企一般来说不是问题,但是在沟通效率缓慢,还有其他掣肘因素的国企最终导致组内每个人忙于自身的型号任务,各自单打独斗,无法聚焦,一年忙到头最终却得不到部门认可,我也因为要两面管理疲于应付,后来曾经反思过,其实可以聚焦精力打造通用平台(虽然这在我们行业很难)部分解决这个问题:

无论个人还是团队,做事情要聚焦,因为个人和团队资源永远都是有限的,如果集中一个事情都做不好,那分散就更难以成功,但是在聚焦之前要深入思考,往什么方向聚焦才是正确的,只有持续做正确的事情才是最重要的。

2016 年

这一年是我人生的关键一年,发生了很多事情。

升任小组组长

第一件事情是我正式升任组长,由于副组长的工作经验,在组长的岗位上也做得比较顺利,在保证研发工作的同时,继续带领团队连续获得铜牌以上班组奖励,另外各种认证检查都稳稳当通过,但是就在这个时候,因为年轻,我犯下了一个至今非常后悔的错误。

大概是这样的,我们部门当时有两个大组,一个是我们的软件研发组,一个是负责系统设计的系统分析组。

当时两个组的工作界面是系统组下发软件任务书给软件组,软件组依照任务书开发,当时由于历史原因,软件组有不少 10 年以上的老员工,而系统组由于新成立由很多员工工作时间不到 2 年,不知道从什么时候起,也不知道是从哪位人员开始,软件组的不少同事认为自己是给系统组打工的。并且,由于系统组同事工作年限较短,实际设计经验不足,任务书中难免出现遗漏,从而导致实际产品出错,两组同事矛盾不断加深。

最后,出现了一个爆发:当时系统组主推一项新的平台,虽然这个平台得到了行政线的支持,但是由于军工产品迭代严谨,这个新平台当时没有型号愿意使用,同时平台的部分负责人,居然没有完整的型号经验!由于这个新平台的软件需要软件组实现,但是因为已经形成的偏见,软件同事认为这项工作中自己是为利益既得者打工。

我当时也因为即负责实际软件开发,又负责部分行政事务,并且年轻思想不成熟,也持有类似的思想。过程中的摩擦、冲突就不说了,最后的结果是系统组、软件组多人辞职,系统组组长离职,部门主任离职创业(当然他们辞职不全是这个原因,包括我离职也不全是这个原因,但是我相信这件事情有一定的影响),这件事情我非常后悔,后来反思过其实当时自己应该站出来,协调两组矛盾,全力支持部门技术升级,可能最终就不会有那么多优秀的同事离开了。

公司战略的转型,技术的升级迭代,一定会伴随着阵痛,作为基层组织者,应该摒弃个人偏见,带领团队配合部门、公司主战略,主战略的成功才是团队成功的前提。

买房

16 年我第二件大事情就是买房,关注过近几年房价的人都可能还记得,16 年一线城市猛涨的情景。其实当时 15 年底,上海市中心和学区房已经开始上涨,我 15 年底听同事开始讨论上涨的房价,我心里开始有了买房的打算,大约 16 春节(2 月份吧,具体记不得了),我回老家探望父母,同时跟他们提出了买房的打算。

我的父亲是一个“央视新闻爱好者”,爱好看狼咸平,XX 刀,XX 檀的节目,大家懂了吧,父亲说上海房价太高了,都是泡沫,不要买。这个时候我已经不是菜鸟了,我想起我总结的第一条经验(见上文),我开始收集往年的房价数据,中央历年的房价政策,在复盘 15 年的经济政策时我发现,当年有 5 次降息降准,提升公积金贷款额度,放松贷款要求于是我判定房价一定会继续涨,涨到一个幅度各地才会出台各种限购政策,并且房价在城市中是按内环往外涨的于是我开始第一次在人生大事上反对父母,我坚决表态要买房。父亲还是不太同意,他说年底吧,先看看情况(实际是年底母亲的退休公积金可以拿出来大概十几万吧,另外未来丈母娘的公积金也能拿出来了大概比这多些)。我还是不同意,父亲最终拗不过我,终于松口,于是我们拿着双方家庭凑的 50w 现金开始买房,后来上海的房价大家都看到了。这件事也是我做的不多的正确的事情之一。

但是最可笑的是,我研究房价的同时居然犯下了一个匪夷所思的错误,我居然没有研究买房子最重要的因素是什么,我们当时一心想买一手房(现在想想真是脑子进水),最后买了一套松江区交通不便的房子,这第一套房子的地理位置也为我后来第二次离职埋下了隐患,这个后面会说。

一线或者准一线城市能买尽量买,不要听信房产崩溃论,如果买不起,那可以在有潜力的城市群里用父母的名义先买一套,毕竟大多数人的财富其实是涨不过通货膨胀的。另外买房最重要的三个要素是,地段,地段,地段。

买房的那天上午和女朋友领的证,话说当时居然把身份证写错了三次 。。。

这下我终于算是有个家了,交完首付那个时候身上真的是身无分文了。航天的基层员工的收入真的是不高,我记得我当时作为组长,每月到手大概也就 7k-8k 的样子,另外有少量的奖金,但是总数仍然不高,好在公积金比较多,我日常也没什么消费欲望,房贷到是压力不大。

买完房子之后,我心里想,这下真的是把双方家庭都掏空了(我们双方家庭都比较普通,我的收入也在知乎垫底,没办法)万一有个意外怎么办,我思来想去,于是在我下一个月发工资之后,做了一个我至今也不知道是对是错的举动,我利用当月的工资,给全家人家人买了保险保险,各种重疾,意外都配好了。但是为什么我至今也不知道对错呢,因为后来老丈人,我母亲都遭遇病魔,但是两次保险公司都拒赔,找出的理由我真是哑口无言,谁叫我近视呢。另外真的是要感谢国家,亲人重病之后,最终还是走了医保,赔偿了部分,不然真的是一笔不小的负担。

2017 年

对我人生重大影响的 2016 年,在历史的长河中终究连浪花都激不起来。历史长河静静流淌到了 2017 年,这一年我参加了中国深空探测项目,当然后面我没有等到天问一号发射就离开了航天,但是有时候仰望星空的时候,想想我的代码正在遥远的星空发挥作用,心里也挺感慨的,我也算是重大历史的参与者了,呵呵。好了不说工作了,平淡无奇的 2017 年,对我来说也发生了两件大事。

买了第二套房子

第一件事是我买了第二套房子,说来可笑,当年第一套房子都是掏空家里,这第二年就买了第二套房子,生活真的是难以捉摸。到 2017 年时,前文说道,我母亲和丈母娘先后退休,公积金提取出来了,然后在双方家里各自办了酒席,酒席之后,双方父母都把所有礼金给了我们,父母对自己的孩子真的是无私之至。当时我们除了月光之外,其实没有什么外债,就是生活简单点。拿到这笔钱后,我们就在想如何使用,一天我在菜市场买菜,有人给我一张 xuanchuan 页,本来对于这样的 xuanchuan 页我一般是直接扔掉的,但是当天鬼死神差我看了一眼,只见上面写着“嘉善高铁房,紧邻上海 1.5w”我当时就石化了,我记得去年我研究上海房价的时候,曾经在网站上看到过嘉善的房价,我清楚的记得是 5-6k,我突然意识到我是不是错过了什么机会,反思一下:

工作生活中尽量保持好奇心,不要对什么的持怀疑态度,很多机会就隐藏在不起眼的细节中,比如二十年前有人告诉你未来可以在网上购物,有人告诉你未来可以用手机支付,你先别把他直接归为骗子,静下来想一想,凡事要有好奇心,但是要有自己的判断。

于是我立马飞奔回家,开始分析,大城市周边的房价。我分析了昆山,燕郊,东莞,我发现燕郊极其特殊,几乎没有产业,纯粹是承接大城市人口溢出,因此房价成高度波动。而昆山和东莞,由于自身有产业支撑,又紧邻大城市,因此房价稳定上涨。我和妻子一商量,开始了外地看房之旅,后来我们去了嘉善,觉得没有产业支撑,昆山限购,我们又到嘉兴看房,我发现嘉兴房价也涨了很多,但是这里购房的大多数新房,都是上海购房者,入住率比较低,很多都是打算买给父母住的,但是实际情况是父母几乎不在里面住,我觉得这里买房不妥,存在一个变现的问题。于是我开始继续寻找,一天我看着杭州湾的地图,突然想到,杭州湾北侧不行,那南侧呢?南侧绍兴,宁波经济不是更达吗。于是我们目光投向绍兴,看了一个月后,最后在绍兴紧贴杭州的一个区,购买了一套小房子,后来 17 年房价果然如我预料的那样完成中心城市的上涨之后开始带动三四线城市上涨。后来国家出台了大湾区政策,我对我的小房子更有信心了。这里稍微总结一下我个人不成熟的看法:

在稳定通胀的时代,负债其实是一种财富。长三角城市群会未来强于珠港澳,因为香港和澳门和深圳存在竞争关系,而长三角城市间更多的是互补,未来我们看澳门可能就跟看一个中等省会城市一样了。

准备要孩子

2017 年的第二件事是,我们终于准备要孩子了,但是妻子怎么也备孕不成功,我们开始频繁的去医院,从 10 元挂号费的普通门诊,看到 200 元,300 元挂号费的专家门诊,看到 600 元的特需门诊,从综合医院看到妇幼医院,从西医看到中医,每个周末不是在医院排队,就是在去医院的路上。最后的诊疗结果是有一定的希望,但是有困难,得到消息时我真的感觉眼前一片黑暗,这种从来在新闻上才能看到了事情居然落到了我们头上,我们甚至开始接触地下 XX 市场。同时越来越高的医疗开销(专家门诊以上就不能报销了)也开始成为了我的负担,前文说了,我收入一直不高,又还贷款,又支付医疗开支渐渐的开始捉襟见肘,我甚至动了卖小房子的打算。

未完待遇~

重大消息!Apache下这些与Hadoop相关的开源项目要退休了!

科技创新王叫兽 发表了文章 • 0 个评论 • 48 次浏览 • 2021-05-14 15:24 • 来自相关话题

不知不觉之间,小编发现 Apache下许多与Hadoop相关的开源项目竟然都要退休了!包括像Sentry、Tajo和Falcon在内的13个与大数据相关的Apache项目,相继在11天之内宣布退出。不得不说一句,看起来Hadoop和大数据的美好时代就... ...查看全部

不知不觉之间,小编发现 Apache下许多与Hadoop相关的开源项目竟然都要退休了!

包括像Sentry、Tajo和Falcon在内的13个与大数据相关的Apache项目,相继在11天之内宣布退出。

不得不说一句,看起来Hadoop和大数据的美好时代就要正式结束了。

Apache Hadoop曾经是大数据的招牌产品,虽然大家都知道其现在已经过了鼎盛时期。但自4月1日以来,Apache软件基金会(ASF)已经宣布至少19个开源项目退出,其中13个与大数据相关,10个是Hadoop生态系统的一部分。还是让人感到乍舌。

也许单独一个项目的退出不会让人觉得是回事,但陆陆续续这么多项目一同退出,似乎就成了一个由盛转衰的分水岭,小编整理了下这13个与大数据相关的已退出的Apache项目。

  • Apex:基于Hadoop的大数据流和批处理的统一平台

  • Chukwa:一个用于监视大型分布式系统的数据收集系统,建立在Hadoop分布式文件系统(HDFS)之上

  • Crunch:它为编写、测试和运行MapReduce(包括Hadoop MapReduce)管道提供了一个框架

  • Eagle:一种分析解决方案,用于在大数据平台(包括Hadoop)上即时发现安全和性能问题

  • Falcon:Hadoop的数据处理和管理解决方案,用于数据移动、数据管道协调、生命周期管理和数据发现

  • Hama:一个大数据分析框架,运行在Hadoop上,基于批量同步并行范式

  • Lens:提供了一个统一的分析接口,它将Hadoop与传统的数据仓库集成在一起,看起来就像一个

  • Marmotta: 链接数据的开放平台

  • Metron:专注于实时大数据安全

  • PredictionIO:用于管理和部署生产就绪预测服务的机器学习服务器

  • Sentry:在Apache Hadoop中对数据和元数据实施细粒度授权的系统

  • Tajo:一个基于Hadoop的大数据仓库系统

  • Twill,它使用Hadoop YARN的分布式功能和类似于运行线程的编程模型

除了小编整理的这些项目,其实还有很多其他项目一并退出了。但最引人注意的还是在这不到两周时间里宣布退出的13巨头。

对于这个现象事件,官方又是怎么说的呢?

Apache软件基金会(ASF)的营销和宣传的副总裁Sally Khudairi,在其回复的电子邮件中提到:

Apache项目活动在其整个生命周期中起起落落,这取决于社区的参与程度。每一个退出的项目都是经过项目管理委员会和董事会反复斟酌投票之后的决定。

同时他表示这仅仅是常规项目退出的激增,但我们可以发现在开源领域,Hadoop已经让位于Spark ,像Hortonworks和旧Cloudera之间毫无意义的项目复制已经越来越少。

同样明显的是,大量投资Apache Sentry 的供应商和客户现在需要开始考虑他们的损失,以及下一步的前进方向。其实每一个技术的兴起和冷落都有类似的炒作周期,技术热门、开源激增、生态系统建立,然后直到他被其他新技术取代。

转载于公众号:程序猿DD

把中国 14 亿人都拉到一个群,技术上能实现吗?

科技创新王叫兽 发表了文章 • 0 个评论 • 61 次浏览 • 2021-05-14 15:24 • 来自相关话题

“最近,知乎上有一个非常热门的问题:“把 14 亿中国人民都拉到一个微信群里在技术上能实现吗?”实际上,根据国家统计局的数据,截至 2017 年末,中国大陆总人口为 13 亿 9008 万人(包括 31 个省、自治区、直辖市和中国人民解放军现役军人,不包括香港... ...查看全部

“最近,知乎上有一个非常热门的问题:“把 14 亿中国人民都拉到一个微信群里在技术上能实现吗?”

实际上,根据国家统计局的数据,截至 2017 年末,中国大陆总人口为 13 亿 9008 万人(包括 31 个省、自治区、直辖市和中国人民解放军现役军人,不包括香港、澳门和台湾以及海外华侨人数),早已超过 13 亿。

目前,微信群组成员人数上限为 500 人,把近 14 亿中国人都拉到一个微信群,从技术的角度考虑现实吗?需要多少台服务器?

而且在一个 14 亿人的群里,要怎样抢红包?手机会不会爆炸?欢迎大家收看官方吐槽系列~

根据 2017 年《微信数据报告》的公开数据 [参考 1] : 2017 年 9 月,微信日均登录 9.02 亿人,日均发送消息 380 亿次。

这意味着平均每人每天发送信息 42 条,如果全国人民(对了,现在全国人口已经接近 14 亿)在同一个群里说话,这个群每天出现的信息就高达:

这么多信息仅仅是匀速发送的话,考虑到大家的睡眠,睡觉的 8 小时不算,那么手机里每秒要接收的信息就是:

哇塞,每秒超过 100 万条啊!目前主频最高的手机 CPU 之一,高通骁龙 845有 2.8GHz 的处理能力[参考 2] ,一共是 8 核。

如不计算安卓系统、显示刷新、网络 IO 等 CPU 操作的话,每条信息能分配到的计算能力是:

这是什么概念?全球第一款微处理器是 1971 年英特尔推出的 Intel 4004[参考 3],这个老古董的主频也有 108KHz 啊。所以 21.9KHz 就是啥也干不了。

幸好 IT 界有个摩尔定律: 每 18 个月 CPU 性能就能翻倍(或者价钱是一半)。虽然现有科技已经很难让主频提升(某牙膏厂拼命挤也只有 5 Ghz)。

但假设我们使用了黑科技提升主频。等到了 2025 摩尔定律失效时[参考 4],我们的手机 CPU 主频应该达到:

看起来不错嘛,不过每条消息能得到的计算能力将达到:

呵呵,依然没有达到 Intel 4004 的水平,所以结果就是你等了 7 年,还是进不了这个全国群抢一个红包。

好吧,咱们让手机接入一个给力点的电脑, 比如说全球超算第一名的太湖之光,1 千万个 CPU 核心 [参考 5] 来帮忙处理这个宇宙第一大微信群。算力的问题总算有了着落。

我们假设平均每条消息有 10 个汉字,这大概相当于 30 byte,算上应用层会加上一定的控制字符,再加上 TCP/IP 网络层的数据消耗大概是 74 byte,取个整,平均每条消息有 100 byte,每个 byte 相当于 8 个 bit。

这时每秒需要的网络带宽大约是:

如果有人发红包,需要的带宽就更大了。

理论上,4G 网络能支持 1000 Mbps[参考 6],但别忘了,是全国人民在同一个群里,而你周围的人也需要同样的带宽,这使得你附近的基站不堪重负,陷入瘫痪。

为了避免网络瘫痪导致你抢不到红包或者看群消息,你需要搬到一个周围没有人的基站,比如放暑假了全校只有你还没回家的时候。

不过运营商的日子就不好过了,因为这一秒全国上下的流量就达到了惊人的:

这相当于 2017 年 4 月份的全国移动数据总流量的 65.7%[参考 7],意味着每 18 秒就能用完全国一年的流量。运营商瑟瑟发抖.gif

如果把 1.146 Ebit 数据用 2TByte 3.5 英寸硬盘(20 mm 高)装起来,然后叠起来,有 1433.25 m,相比之下,全球最高楼——迪拜的哈里发塔只有区区 828m。

当然,如果确实有需要,我相信电信运营商们肯定砸下重金为你建设全世界最大的宽带网络。

不过,接下来该花钱的就不是运营商——而是腾讯了。

为了处理这 1.146 Ebps 的流量, 腾讯需要准备 11466 万套交换机和服务器。

目前一台大厂 4 口万兆交换机售价大约是 4000 元,一台便宜带万兆口的服务器则大概需要 10000 元,这两项加起来的费用是:

呃,仅仅这两项就相当于 深圳 2014 年全年的 GDP[参考 8]。

这里还不包括网线、电线、服务器机架、机房托管、电费、运行支出……

这么多设备的存放也是个问题。一台带万兆(10Gbps)口的 2U 服务器有 88.9 mm 高,这样叠起来就有:

这差不多是中国到美国的飞机航线距离啊,用来修铁路也是够够的了。

好了,有了这么多设备加持,这下你终于可以愉快地进了群。

但你惊讶地发现,屏幕上除了白色,什么都没有——这是因为你的眼睛没办法接收这么快的数据!

人眼的视觉暂留时间是 100-400 毫秒[参考 9] ,而我们这个群每秒钟就要显示 102 万条信息,每条消息停留的时间只有大概 0.001 毫秒。相比之下,电影、电视都有 41 毫秒。

因此你还没来得及看清消息,它就已经消失了,最后只留下一团白色的色块在屏幕的正中央。

网友留言:

@大哥有柔情:

14 亿在一个群并不可怕。可怕的是,每逢节日群里都会让群主发红包!

@后知后觉:

已经做到了,14 亿人拉到一个微信群,大家看到的都是新闻联播。

@bluecat:

简单的说,你的手机会马上崩溃,因为它承载不了一秒钟的信息量。

@三毛鱼

可以实现,不过要加几条限制:

①所有微信账号强制加入到这个微信群。

②微信群只能有限的几个人发言,其他人不能发言。

③微信群里只能在每天固定时间段发消息。

④其他微信群在固定时间不能发消息,或者只能转发这个微信群的消息。

这样就可以实现了,技术上没有难度。

@程墨Morgan

“拉”到一个群里没啥不难实现的,反正用户信息都在服务器上,建一个包含所有用户微信号的群也就是添加一个记录而已。

但是,这个群千万不要让任何人都能发言,就以我国人民的多样性,各种话唠、贴图狂人、广告狂人……海量信息瞬间就可以把服务器、运营商网络和你手机的电池击溃。

@世安先生

讲真,单从理论上来说目前的技术还是可行的,咳咳,我要装逼了。

看了别的答主的回答,说人、终端、传输、处理、存储、分析等等各方面均有缺陷或者短板,跟不上大批量的数据,其实个人觉得实施起来也还是有得搞的,只是成本和利润之间的关系罢了。

首先,得考虑人的因素,多少多少亿的信息量对于某个特定个体来说价值无限接近于 0,我个人根本不关注这些信息,因为获取信息的效率太低了。

这就导致了百分之九十九的人直接忽略了这个群的存在,剩下的每天这个群里的消息无非就是置顶公告,置顶新闻,红包和闲聊斗图,浏览公告和新闻。

考虑到并发的问题,一般现在的服务器都可以做到,毕竟有大把的新闻 App 都可以做到;红包,做个算法随机分配吧,也别抢了,抢会严重影响体验,给十亿用户随机分配一段数据应该难度也不太大。

剩下的就是斗图闲聊,数据直接云存储在服务器端,分析处理总结出来个中心思想每多少秒多少秒推送给个人用户一次,就差不多了,需要详细信息的上服务器检索,个人觉得对个人终端的压力也不会太大。

其次,传输,这是我觉得问题最小的一个环节,为什么呢?解决了个人终端的问题之后,个人的数据传输量并不大,现有的传输网络完全可以满足。

服务器端的传输,要看这服务器怎么个建法,如果集中式处理和存储,就只能用百 G 专线,建个三五条完全够了。

只不过相应的配套交换机路由器要建一套庞大的系统出来。如果是分布式存储和处理,10G 的甚至 GE 的专线都够。这是传输。

第三,处理,如果非得把大批量的数据集中处理,就得建设一套国内最大甚至世界最大最复杂的数据中心才能够承载这套系统。

但是如果分布式处理的话,我相信现在的系统也够用,毕竟现有的运算量已经这么大了,而有这个群之后数据量也绝对不会爆炸式增长。

第四,存储,处理的工作能够完成存储肯定也不是问题,甚至可以将数据破碎后存储在个人终端上,将投资设备的矛盾转嫁到数据安全和管理上。

第五,数据分析,这一点才是重中之重,难点中的难点,如何有效的分析提取如此大量数据中的有用信息并推送给特定的个人才是核心关键。

虽然现在技术还没有大面积商业化,但我相信这种技术是肯定已经有试用的甚至是已经商用的存在了,只不过公众不太清楚而已,毕竟这种东西仔细想想还是有点恐怖的。

总之,如何实现这个系统或者说建好这个群,无非就是做好需求与资源之间矛盾的转嫁,把存储需求量大与投资大之间的矛盾转嫁到数据安全与运营管理上,把大数据量传输分散化,把大量的数据进行分析提取后定向推送,最核心的投资也就是整套智能有效的大数据分析系统。

(ಥ_ಥ)不过……话说这么搞的话不就是搞了个有 14 亿关注量的公众号嘛…d(ŐдŐ๑)好了,我装逼装完了,你们打的时候下手轻点,别拿砖头,别提 40 米青龙偃月大关刀……

转载于公众号“程序猿DD”


北京云中融信网络科技有限公司(简称融云),是安全、可靠的全球互联网通信云服务商,向开发者和企业提供即时通讯和实时音视频通信云服务。iResearch 艾瑞权威数据报告显示,融云即时通讯云市场份额连续多年稳居头位。

融云构建了一张覆盖全球所有国家及地区(共 233 个)的通信云网络,在全球各地设立多个数据中心及数千个加速节点。基于客户业务需求,融云可提供多种部署模式——公有云、私有云、混合云,为全球企业提供稳定的互联网通信云服务。针对企业级用户,融云将业务垂直到各个行业,为社交、直播、金融、交通运输、教育、电商、医疗等多个行业领域推出了针对性解决方案。

融云基于海量业务的技术锤炼,从基础架构到精细化运营,充分体现平台实力;凭借卓越的产品和优质的服务,在开发者规模、行业覆盖率、平台日活跃用户数、日均消息量等方面超越全行业。目前,已有数十万互联网用户及上千家企业级用户通过融云实现了场景化沟通,并从中获益,包括工商银行、中国移动、四川航空、CCTV 微视、中联重科、58 赶集、大河报业、新东方、陆金所、融创地产、IDG、华兴资本、易车网、猪八戒、得到 APP、荔枝、汽车之家、哈啰出行、百姓网、StarMaker、Opera、Elelive。

为什么培训班出来的程序员会遭人嫌弃?

科技创新大兴 发表了文章 • 0 个评论 • 68 次浏览 • 2021-05-14 15:24 • 来自相关话题

昨天小编看到了一份采访稿,对象是培训机构出身的程序员,本身程序员并不特殊,但“培训机构出身”这个标签,有时候却成了程序员心酸的源头。有类似背景的程序员很多都在应聘工作、服务甲方的时候,多少有过被嫌弃,甚至歧视的艰辛经历。那么接下来跟小编一起看看这份采访稿,这些... ...查看全部

昨天小编看到了一份采访稿,对象是培训机构出身的程序员,本身程序员并不特殊,但“培训机构出身”这个标签,有时候却成了程序员心酸的源头。有类似背景的程序员很多都在应聘工作、服务甲方的时候,多少有过被嫌弃,甚至歧视的艰辛经历。那么接下来跟小编一起看看这份采访稿,这些经历是否你也有过感同身受呢?以下内容转载自公众号:InfoQ(ID:infoqchina),作者:褚杏娟。

谁都看不上培训机构的

“我是培训 + 外包出来的,确实有被甲方嫌弃过”。2016 年从电子信息专业毕业的小右说起这个话题有些落寞。

公务员考试失利的小右在大四上学期开始找工作,但因为学习成绩一般,工作找得并不顺利。这个情况持续一段时间后,小右决定去参加某培训机构的 Java 培训。“电子信息专业虽说属于计算机范畴,但其实和编程还不一样的,我也是没办法。”小右很无奈。

培训机构的课程对有一定 C、C++ 基础的小右来说还算比较轻松。他所在的那家培训机构的上课内容就是老师带着做做项目,教的代码在后面工作中可以复用。几个月后小右从培训机构毕业,第一份工作是北京当地蛮著名的一个外包机构,薪资 5K。

与同批毕业找到不错工作的同学们比,小右还是感到些许心酸。“上课的学费,我是走的贷款。和培训机构签过协议,毕业就可以找到工作。找不到,损失由培训机构承担;找得到,机构每个月要从我的薪资里面抽一部分还学费。北京的生活成本本来就高,加上机构的抽成,对于刚毕业的小右来说,无疑压力很大。

在这家外包公司呆了一年后,小右跳槽了——仍旧是家外包公司。“这家公司的程序员基本上也是专科或者培训机构出来的,人员流动特别快。”小右告诉记者:“我入职的第一年年底,对面一整个项目组的同事都陆续走掉了,有的去了甲方,有的回老家了,再加上工资不高,各种原因都有。我也是在这种情况下升职的,实在也是没人了。”

同在培训机构学习过的小健也有着类似的经历。工商管理物流专业的他也是在国考失利后决定进入 IT 行业。这对没有任何计算机基础的他来说,是彻彻底底的 360 度大转行。当时,他去了一家培训机构进行了为期 9 个月的“大学生速成班课程”学习。

在谈到这段学习经历时,小健不假思索的说了两个字:艰辛。

当时的他住在学校的地下室,又冷又潮湿。学校实行军事化管理,早上 6 点起床,晚上 22 点熄灯,每周休息一天。“和上高三感觉差不多”,小健感慨:“不过也有了更多的时间去学习和操作。“

虽然对 3 万 9 的高额学费感到“肉疼”,但小健感觉还是值得的。“最大的收获就是练就一双会挣钱的手。”小健的第一份工作也是一家外包公司,“当时面试了 10 多家,就那家公司面试上了,薪水给的还算可以,就入职了。”

针对培训机构出来的程序员与科班出身的程序员相比会不会被“鄙视”的问题,小健明确表示:“这个和科班的没关系,谁都看不上培训机构的。”

我们只会鄙视那些技术垃圾的

圈子里,科班程序员“鄙视”培训机构程序员似乎已经隐隐成了一种共识。

“培训机构出来的程序员几乎什么也不会。不用看技术,刚刚培训出来的就是假大空。”小健直言。网上甚至有更偏激的观点:培训班出来的全是垃圾,没有例外。

“培训机构出来的程序员基础薄弱很多,对某项语言可能有点熟悉但是很死板,代码环境一变可能就不会了,更差点的就直接被当成‘敲代码机器’了。很多人刚出来没有完整的案例操作,对这个行业还没有基础的认知,更别提思维、格局了。”

外界的这些言论无形中成为这些程序员心中的刺。很多培训机构出来的程序员在面试时是不会告诉用人单位培训背景的,有些人甚至会刻意隐瞒这段经历。“好多人被公司知道后就直接被辞退了,有的人还背着房贷、要赡养老人,但也没有办法。”小健说。

在小右看来,培训机构其实是复制粘贴出来一堆差不多的人。“人家用大学四年打下基础,你培训几个月速成,很难完全领悟。”

不知道是否是小健、小右过于敏感,还是不直接关乎利益,科班程序员对这个问题感受其实没有那么强烈。硕士毕业直接进入互联网公司工作的小远告诉我们:“员工间谈不上鄙视,主要是看他们做的工作是不是好,但是一般情况下,培训班出来的工作质量不会太好。代码混乱、质量低、bug 多、没法维护,别人接手你的代码会很难受。”

“大家都是打工的,没有人会管你是哪里出来的。我们只会鄙视那些技术垃圾的、配合不了的。至于你是哪里出来的,并不会很在意。”小远补充。

对于这个问题,某互联网公司技术总监 Harry 告诉 InfoQ 记者:外界的确存在一些公司认为培训班出来的程序员是“速成品”,然后卡简历的情况。“其实不是说培训机构出来的程序员表现都不行,只是表现不好的程序员可能都有过培训经历,行业里一传十、十传百就会认为培训机构出来的程序员都不行。”

培训出来的基本是速成班,很难相信

企查查数据显示,目前我国共有 21 万余家职业培训相关企业,其中在业存续的企业有 16.8 万家。通过对管理、财务会计、IT、设计四大培训方向的企业数据对比发现,涉及财务会计培训的企业仅占 3%,而涉及计算机培训的企业占到了 29%。

培训机构虽多,但质量却良莠不齐。很多培训机构的目的其实就是赚钱,只管教,对学员是否学会并不关心,甚至还有很大部分像小右所在的培训机构那样会与学员签订就业协议。另外,有些机构会宣传为大中型企业输入人才,但实际上对接合作的只是知名企业的外包公司,而非这些企业本身,当然机构是不会事先向学员说明的。

这些学员在培训机构学到的很多就是一套“万能模版”,可以套用在将来可能就职公司的工作中。“培训机构有点像定向培养,就好像知道我就业之后去的公司会用到什么东西一样,推荐给我的也都是外包单位。”小右告诉记者。

还有一些不责任的培训机构,虽然给出了就业承诺,但就什么样的“业”却是有很多可能的,而且学员的就业率与老师薪酬挂钩,无论怎样都会让学生就业。

小健透露,培训机构老师的工资基本都是 20K 起,而且还与学员的就业率挂钩,到手工资就更多了。机构会教你一些面试技巧,如果没有面上正儿八经的开发公司,为了就业率就可能胡乱安排给你一个与程序员无关的工作。

还记得知乎上网友的自嘲吗?

培训机构出来的程序员,最后大部分都去了美团,也有去百度的,去百度的少一些,原因是百度外卖给配的头盔不好看。美团外卖给配的电动车和头盔风格很搭,看着很拉风。

虽然这只是一个调侃,但也看出其中蕴含的无奈。

小健培训时所在的班里一共有 30 个人,最终还留在 IT 行业的就只剩 3 个人左右。“很多人学完找不到工作或者工作一段时间后感觉不适合就放弃了,9 个月的时间和高额的学费就这样泡汤了。”

培训机构虽然为很多人提供了互联网行业的“入场券”,但从这里出来的程序员面临的选择相对科班程序员少很多。

培训机构为学员就业提供的工作机会,起点很低,大部分毕业的人都是从小公司开始做起,经过一定积累才有可能去到大公司任职。此外,现在很多大型公司对合作的外包公司要求不仅仅局限在团队整体层面,更是细化到了对其聘用的员工个体素质等各个方面。

某保险公司负责大数据后台研发工作的项目负责人 Pony 告诉 InfoQ,今年起,他们公司已经明确要求外包也必须是本科毕业,最好是计算机专业毕业、尽量不要培训出身,尤其是美学、人力专业转行培训几个月出来的。

“人力成本太高了。我们也是有研发压力的,不愿意试错,要是认真学了三年,哪怕一年,我们都愿意一试。但现在培训出来的基本都是速成班,几个月就完事儿了,很难相信。”Pony 表示。

培训经历最后只是锦上添花

“好多程序员都买房了,都是实实在在挣到钱了。做程序员是穷屌丝逆袭的捷径。”小健感叹。

拉勾发布的《2019 年 90 后程序员职场报告》显示,在程序员群体中,90 后占比高达 82%,已然成为中国互联网行业主力军,而 90 后程序员的平均月薪已经接近 20K,雄踞互联网各职位之首。

纵然选择少,但高薪还是吸引着越来越多的人进入这个行业。达内教育老师向 InfoQ 介绍,达内教育一年大约可以招到 15 万人,其中大约 1/3~2/3 的人是学大数据、人工智能、Java 等互联网编程课程。

学历低确实是培训机构程序员的普遍现象。在达内机构学习的人大多集中在 23~35 岁之间,70% 左右的人学历在中大专和本科水平。58 同城在去年 10 月份发布的报告也显示:程序员群体学历中,大专学历占比最高,达到了 43.02%。

“现在本科学历是很普便的,这种情况下如果你只是中专、大专学历,其实我们也会觉得你的学习能力是不是有问题。”技术总监 Harry 表示。对于刚出校门的程序员来说,学历可能是衡量一个人学习能力的重要指标,但对于已经工作几年的人来说,更重要的是工作经验,当初的培训经历只是一个锦上添花的东西。

负责研发招聘的资深 HR 总监 Ivy 告诉记者:她不会只因为人选是培训机构出来的就将简历 pass 掉,但如果一个人在简历中着重去强调这段经历,那么可能意味着这个人在其他方面能力不够。

“有很多培训机构会帮助学员写简历、传授面试技巧,所以我们会看到很多差不多出自一个模版的简历,并且里面还有一些造假内容。对于这样的简历,其实看到模版一样时我们就已经 pass 掉了。“Ivy 表示。

程序员的成长终究是一个自我学习的过程,即使可能会有厉害的人带,但最重要的还是自己的能力。“以后不会再去培训机构了,之后的提高更愿意自己看书。”小右说。

应受访者要求,本文中小右、小健和小远均为化名。

后记

纵观现在的很多知名互联网大佬,在媒体面前大多都表现着对学历并不看重的态度,事实上在这些巨头成长初期是贯彻的很好的,因为如果不以这样的标准去吸纳人才,可能也很难招到人吧。而成为巨头的今天,其实对于学历,对于是否培训出身,切实的存在于各大互联网公司的招聘环节。这其中有HR部门对海量简历筛选工作量的考虑,也有因培训机构指导“简历美化”等诸多因素。

对于培训出身的尴尬局面,小编建议很多培训出身的小伙伴们不要灰心。由于如今发达的新媒体、开源社区等开放性平台越来越多,只要你有真才实学,大可以用这些方式去展现自己,为自己的简历提升更多有含金量的,用人公司可见的优秀成绩,依然可以让你从很多科班出身的人群中脱颖而出!小编身边也有好几个曾经靠培训入行,如今混的风生水起的朋友。古话说得好,师傅领进门,修行在个人。培训很多时候是帮助我们入门,但后续的修行不能断,只要能勤于思考,付出实践!那么与科班出生的程序员一样,都能未来的路都不会太差!

Redis 高负载排查记录

科技创新fanta2 发表了文章 • 0 个评论 • 66 次浏览 • 2021-05-14 15:24 • 来自相关话题

周一早上刚上班,突然大量用户反馈进入网页很慢,登录服务器一看,Redis调用时间严重超时,这样高速的缓存反而变成了短板,由于数据一直没有返回,导致了请求响应变慢。网页监控通过阿里的 Grafana 监控,服务器的 CPU 负载、内存、网络输入输出都挺正常的,所... ...查看全部

周一早上刚上班,突然大量用户反馈进入网页很慢,登录服务器一看,Redis调用时间严重超时,这样高速的缓存反而变成了短板,由于数据一直没有返回,导致了请求响应变慢。

网页监控

通过阿里的 Grafana 监控,服务器的 CPU 负载、内存、网络输入输出都挺正常的,所以肯定是 Redis 出现了问题。

我们应用使用的是单节点的 32M 16GB 的阿里云 Redis,登录网页监控看性能监控,发现 CPU 使用情况飙升到100%!!!

QPS 虽然从 1000 多升到 6000,但是远远低于极限值,连接数量从 0 升到 3000,也是远远低于极限值(可能用户刚上班,开始有请求,然后响应延迟,导致命令队列数量过多,打开很多连接)。

临时方案:先租用一台新的 Redis 服务器,更换应用服务器的 Redis 配置,重启应用,避免影响更多用户。

然后我们继续跟踪 Redis 的具体情况。

服务器命令监控

登录 Redis-cli,通过 info 命令查看服务器状态和命令统计,祥哥总结了两点异常点:

查询 redis 慢指令 slowlog,排行前十的指令均为keys *,并且耗时严重,在当前业务流量下执行keys* ,一定会阻塞业务,导致查询慢,cpu 高的。值得注意的是应用层面没有开放 keys * 接口,不排查有后台人为或后台程序触发该指令。

查看 redis 指令执行情况,排除 exec,flushall 等指令,业务使用指令中,耗时严重的有 setnx 有7.5千万次调用平均耗时 6s,setex 有8.4千万次调用平均耗时7.33s,del 有2.6亿次调用平均耗时69s,hmset 有1亿次调用平均耗时 64s,hmget 有6.8千万次调用平均耗时 9s,hgetall 有14亿次调用平均耗时 205s,keys 有2千万次调用平均耗时 3740s。

通常而言,这些指令耗时与 value 大小呈正比,所以可以排查这些指令相关的数据近期有没有较大增长。或者近期有没有业务改造,会频繁使用上述指令,也会造成 cpu 高。

(当时忘了截图,下图只是展示命令和参数含义)

通过 info commandstats 可以查看 Redis 命令统计信息,其中命令格式是

cmdstat_XXX: calls=XXX,usec=XXX,usec_per_call=XXX调用次数、耗费CPU时间、每个命令平均耗费CPU(单位为微秒)

通过 slowlog 命令查看慢命令(默认超过 10ms 就会被记录到日志,只会记录其命令执行的时间,不包含 IO 往返操作,也不记录单由网络延迟引起的响应慢)

(当时也忘了截图,所以就介绍一下 slowlog 怎么看)

xxxxx> slowlog get 10 3) 1) (integer) 411               2) (integer) 1545386469         3) (integer) 232663              4) 1) "keys"                     2) "mecury:*"

图中各字段表示的是:

  • 1=日志的唯一标识符

  • 2=命令的执行时间点,以UNIX时间戳表示

  • 3=查询命令执行时间,以微妙为单位,中的是230ms

  • 4=执行的命令,以数组的形式排列。完整的命令是 keys mucury:*

所以通过这些参数,基本可以确定,是突然有大量的keys *命令导致CPU负载升高,导致响应延迟,问题我们应用中没有开放keys *命令Σ(o゚д゚oノ)

最后将这些统计结果和慢命令发到研发群,发现是别的应用配置配成了我们的Redis,然后他们有个业务场景是爬数据,突然涌入大量的调用,不断的keys *,导致我们的Redis不堪重负,于是将配置修改正确,不再调用我们的Redis。

总结
  • Redis 抖动可以先看网页监控(阿里云做的真好!)

  • 通过命令查看 Redis 指令状态和慢命令的情况

  • 考虑优化 Redis 在代码中的使用情况

  • 如果流量继续上升,需要考虑一下升级了=-=


在一个大项目中,我选择了另一种JDK实现AdoptOpenJDK

科技创新大兴 发表了文章 • 0 个评论 • 63 次浏览 • 2021-05-14 15:24 • 来自相关话题

前言最近在搞一个大项目,做一些基础选型工作。首先就是 JDK 的选型。由于 Oracle 在 Java 8 更改了许可证。这使得我在对 JDK 的选择上除了性能考虑外还要特别注意合规检查。这次我选择了AdoptOpenJDK。AdoptOpenJDKAdopt... ...查看全部
前言

最近在搞一个大项目,做一些基础选型工作。首先就是 JDK 的选型。由于 Oracle 在 Java 8 更改了许可证。这使得我在对 JDK 的选择上除了性能考虑外还要特别注意合规检查。这次我选择了AdoptOpenJDK。

AdoptOpenJDK

AdoptOpenJDK 是一个开放的,社区主导的计划,它提供了来自OpenJDK的 Java 平台参考实现的免费,预构建的二进制文件。

AdoptOpenJDK 发行版涵盖了最全面的操作系统和体系结构。使用 AdoptOpenJDK 二进制文件,您可以确信它在所有环境中的构建和测试都完全相同。

多虚拟机实现

目前它提供了两种虚拟机实现,一种是我们常见的 HotSpot;另一种是 OpenJ9。它们各有特点,HotSpot 比较成熟,而 OpenJ9 在云端更具有占用资源少、启动快的特点,更适合容器化。

稳定可靠

质量是AdoptOpenJDK二进制文件的另一个关键组成部分。社区有大量不同的测试可供使用,以验证每个构建的质量,从而确保应用程序按预期运行和运行。通过回归,功能,系统,负载,应用程序和性能测试,始终可以生成稳定可靠的版本。此外,构建和测试结果是完全开放的,并且可以由社区进行审查。很多财富 500 强公司的 JVM 应用都构建在AdoptOpenJDK之上。

社区驱动

AdoptOpenJDK的发展方向由个人开发者主导,保持中立,不受制于商业公司,为此它成立了一个专门的技术指导委员会来确保这一点。AdoptOpenJDK社区的目标是确保这些定期更新的 Java 始终可供所有人跨平台免费使用。

AdoptOpenJDK社区也非常活跃,在 Java 16 正式发布后,AdoptOpenJDK也第一时间进行了跟进发布了对应版本的 JDK 。而且同时对我们常用的 Java 8、Java 11 进行了长期支持。在用户响应上AdoptOpenJDK更快。

在 2020 年 6 月 19 日,AdoptOpenJDK 加入了 Eclipse 基金会。

安装方便

AdoptOpenJDK提供了多个选择方式,你可以根据需要组合选择。

组合选择JDK

而且提供了各个平台的包管理器安装,无论是 SDKMAN、Chocolatey、Homebrew 或者 Linux 下的包管理器都支持的不错。甚至在 Windows 下连 Java 环境变量都不需要了,如果是王八壳子,你还得注册个账号。

下载量多

截至目前AdoptOpenJDK的下载量已经达到 249,967,583,接近 2.5 亿次。进入 2021 年以来AdoptOpenJDK的下载量已经突破 2000 万次。

总结

目前各大公司包括国内的阿里、华为,甚至不以 Java 为主要技术栈的腾讯都开源了自己的 JDK。OpenJDK 越来越多地被使用,开始成为主流选择。通过胖哥的介绍你可以尝试一下AdoptOpenJDK。

“容灾”和“备份”的区别?原来如此!

科技创新大兴 发表了文章 • 0 个评论 • 64 次浏览 • 2021-05-14 15:24 • 来自相关话题

数据中心运行突发故障(如:天灾不可避免的灾难)是无法预测的,计算机里的数据就像扫雷游戏一样,十面埋伏充满雷区,随时都有可能Game Over,容灾备份就是数据安全的最后防线,但是你可以避免由数据中心发生故障而丢失数据引发的数据丢失的局面。今天为大家介绍“容灾和... ...查看全部

数据中心运行突发故障(如:天灾不可避免的灾难)是无法预测的,计算机里的数据就像扫雷游戏一样,十面埋伏充满雷区,随时都有可能Game Over,容灾备份就是数据安全的最后防线,但是你可以避免由数据中心发生故障而丢失数据引发的数据丢失的局面。

今天为大家介绍“容灾和备份的区别”以及一些尽可能减少发生运行故障失败机会,并加强企业的数据备份环境的简单要点。

什么是容灾 ?

容灾系统是指在相隔较远的异地,建立两套或多套功能相同的IT系统,互相之间可以进行健康状态监视和功能切换,当一处系统因意外(如火灾、地震等)停止工作时,整个应用系统可以切换到另一处,使得该系统功能可以继续正常工作。

容灾技术是系统的高可用性技术的一个组成部分,容灾系统更加强调处理外界环境对系统的影响,特别是灾难性事件对整个IT节点的影响,提供节点级别的系统恢复功能。

容灾的分类

从其对系统的保护程度来分,可以将容灾系统分为:数据容灾和应用容灾,数据容灾就是指建立一个异地的数据系统,该系统是本地关键应用数据的一个实时复制。

应用容灾是在数据容灾的基础上,在异地建立一套完整的与本地生产系统相当的备份应用系统(可以是互为备份),在灾难情况下,远程系统迅速接管业务运行,数据容灾是抗御灾难的保障,而应用容灾则是容灾系统建设的目标。

容灾和备份有什么连系 ?

容灾备份实际上是两个概念,容灾是为了在遭遇灾害时能保证信息系统能正常运行,帮助企业实现业务连续性的目标,备份是为了应对灾难来临时造成的数据丢失问题。在容灾备份一体化产品出现之前,容灾系统与备份系统是独立的。容灾备份产品的最终目标是帮助企业应对人为误操作、软件错误、病毒入侵等’软’性灾害以及硬件故障、自然灾害等“硬”性灾害。

容灾和备份的区别

一般意义上,备份指的是数据备份或系统备份,容灾指的是不在同一机房的数据备份或应用系统备份。备份采用备份软件技术实现,而容灾通过复制或镜像软件实现,两者的根本区别在于:

  1. 容灾主要针对火灾、地震等重大自然灾害,因此备份中心与主中心间必须保证一定的安全距离;数据备份在同一数据中心进行。

  2. 容灾系统不仅保护数据,更重要的目的在于保证业务的连续性;而数据备份系统只保护数据的安全性。

  3. 容灾保证数据的完整性;备份则只能恢复出备份时间点以前的数据。

  4. 容灾是在线过程;备份是离线过程。

  5. 容灾系统中,两地的数据是实时一致的;备份的数据则具有一定的时效性。

  6. 故障情况下,容灾系统的切换时间是几秒钟至几分钟;而备份系统的恢复时间可能几小时到几十小时。

容灾的分类

1、数据级

数据级容灾是最基础的手段,指通过建立异地容灾中心,做数据的远程备份,在灾难发生之后要确保原有的数据不会丢失或者遭到破坏,但在数据级容灾这个级别,发生灾难时应用是会中断的。可以简单的把这种容灾方式理解成一个远程的数据备份中心,就是建立一个数据的备份系统或者一个容灾系统,比如数据库、文件等等。

  • 优点:费用比较低,构建实施相对简单

  • 缺点:数据级容灾的恢复时间比较长

2、应用级

应用级容灾是在数据级容灾的基础之上,在备份站点同样构建一套相同的应用系统,通过同步或异步复制技术,这样可以保证关键应用在允许的时间范围内恢复运行,尽可能减少灾难带来的损失,让用户基本感受不到灾难的发生。应用级容灾就是建立一个应用的备份系统,比如一套OA系统正在运行,在另一个地方建立一套同样的OA系统。

  • 优点:提供的服务是完整、可靠、安全的,确保业务的连续性

  • 缺点:费用较高,需要更多软件的实现

3、业务级

业务级容灾是全业务的灾备,除了必要的IT相关技术,还要求具备全部的基础设施。

  • 优点:保障业务的连续性

  • 缺点:费用很高,还需要场所费用的投入,实施难度大。

备份等级

容灾备份是通过在异地建立和维护一个备份存储系统,利用地理上的分离来保证系统和数据对灾难性事件的抵御能力。根据容灾系统对灾难的抵抗程度,可分为数据容灾和应用容灾。数据容灾是指建立一个异地的数据系统,该系统是对本地系统关键应用数据实时复制。

当出现灾难时,可由异地系统迅速接替本地系统而保证业务的连续性。应用容灾比数据容灾层次更高,即在异地建立一套完整的、与本地数据系统相当的备份应用系统(可以同本地应用系统互为备份,也可与本地应用系统共同工作)。

在灾难出现后,远程应用系统迅速接管或承担本地应用系统的业务运行,设计一个容灾备份系统,需要考虑多方面的因素,如备份/恢复数据量大小、应用数据中心和备援数据中心之间的距离和数据传输方式、灾难发生时所要求的恢复速度、备援中心的管理及投入资金等,根据这些因素和不同的应用场合,通常可将容灾备份分为四个等级。

第0级:没有备援中心

这一级容灾备份,实际上没有灾难恢复能力,它只在本地进行数据备份,并且被备份的数据只在本地保存,没有送往异地。

第1级:本地磁带备份,异地保存

在本地将关键数据备份,然后送到异地保存。灾难发生后,按预定数据恢复程序恢复系统和数据。这种方案成本低、易于配置。但当数据量增大时,存在存储介质难管理的问题,并且当灾难发生时存在大量数据难以及时恢复的问题。为了解决此问题,灾难发生时,先恢复关键数据,后恢复非关键数据。欢迎关注微信公众号:朱小厮的博客。

第2级:热备份站点备份

在异地建立一个热备份点,通过网络进行数据备份。也就是通过网络以同步或异步方式,把主站点的数据备份到备份站点,备份站点一般只备份数据,不承担业务。当出现灾难时,备份站点接替主站点的业务,从而维护业务运行的连续性。

第3级:活动备援中心

在相隔较远的地方分别建立两个数据中心,它们都处于工作状态,并进行相互数据备份。当某个数据中心发生灾难时,另一个数据中心接替其工作任务。这种级别的备份根据实际要求和投入资金的多少,又可分为两种:

  • 1、两个数据中心之间只限于关键数据的相互备份;

  • 2、两个数据中心之间互为镜像,即零数据丢失等。

零数据丢失是目前要求最高的一种容灾备份方式,它要求不管什么灾难发生,系统都能保证数据的安全。所以,它需要配置复杂的管理软件和专用的硬件设备,需要投资相对而言是最大的,但恢复速度也是。

转载于公众号’程序猿DD“


程序员,都是内卷之王!

科技创新大兴 发表了文章 • 0 个评论 • 71 次浏览 • 2021-04-16 14:47 • 来自相关话题

前言最近看到这个问题被谈得很多。铺天盖地的35岁、内卷化、996。这里也想谈谈自己的想法。内卷化的形成内卷为什么会形成呢?从公司内部的角度来说,同事之间做的事情也缺少独特性。那么既然每个人都差不多,那么与其招一个工作十年的人,还不如招个应届生。虽然说从代码的产... ...查看全部


微信截图_20210416143250.png前言

最近看到这个问题被谈得很多。铺天盖地的35岁、内卷化、996。这里也想谈谈自己的想法。

内卷化的形成

内卷为什么会形成呢?从公司内部的角度来说,同事之间做的事情也缺少独特性。那么既然每个人都差不多,那么与其招一个工作十年的人,还不如招个应届生。虽然说从代码的产出和质量来说,工作十年的工程师比应届生理论上来说应该是好很多, 但是如果工作十年的人缺少积累,缺少系统性的理解,那么跟应届生比较可能多了一些广度(因为换过工作)。但是深度上来说并没有本质上的区别。那么这个时候就会发生内卷了,公司不停的把老员工换成新员工,老员工也不停的跳槽导致缺乏积累,长此以往公司很难得到优质的员工,员工也很难得到深入的知识和技能的积累。

如果把这个发到公司之间,那么很多公司间的竞争也是重复性的,你做个朋友圈,那么我就做个拼圈,如果你做个金融服务,那么我也做一个。公司的产品决策并不完全是跟公司本身的基因和方向决定,而是因为什么方向火而赶鸭子上架。公司在做决策的时候考虑的是最少的投资和最快的回报,而不是靠着自己的特性而做长久的、独特的产品发展。在做这样重复建设的时候,公司可能会在竞争对手那里挖上那么几个牛人,然后其他的(包括UI)都照抄就好。长此以往,用户、客户很难用到更好的产品,而公司也很难积累出做出好的产品的能力。

从内卷到996

既然公司间都内卷了,公司做的产品跟别人的产品差不多,那么拼的就是手速了。如果竞争对手和你拿的投资差不多,那么招的人数也接近,如果竞争对手都996了,那么你955岂不是输在了起跑线上?同理,大一点的公司内部,团队之间也没有太多壁垒和界限,如果说你团队的输出能够替代另一个团队,那么让自己的团队拼一拼,把地盘占好,年底涨工资也是一个很美滋滋的事情。但是如果你这样做,别的团队也这样做,长此以往就没人不996了,最后你996也不够,只能007了。

我如何看待996

我今年工作刚好十年。我刚毕业第一年在阿里工作,团队的任务还是比较重,但是我一周也就两天会在公司吃晚饭。周末和晚上我也会花时间学习感兴趣的东西(当时是机器学习,还写了不少博客),真正晚上工作的时间不是很多。后来去了一个外企,基本上每天5点公司就没人了,我晚上就看看开源的项目,有时间贡献一下。过了两年我去了美国,第一年公司IPO前还比较忙,有时候晚上要在公司吃饭加个班啥的,后面IPO后公司也没人加班了,我周末和晚上不少时间都花在开源里面。最近这几年带团队,白天的会比较早,一周晚上也有那么几天有晚上的会,除了陪陪家人以外,有时间我还是会继续弄弄开源,看看论文和书。

我对于公司、团队级别的强制996是反对的,因为工程师做的事情应该是在更轻松的氛围里面创新,而不是被按在工位前出活。有些工作是需要很多的思考,特别是架构设计,还有职责划分之类的。996会让人缺少了思考的空间,对于那些资深的工程师或者架构师来讲,缺少思考的空间会导致最后出来的架构不是最优的,因为好的设计应该是想出来的而不是堆出来的,如果架构设计都出问题了,后面的工程部分会跟着错。对于管理方向的人也一样,如果缺少了思考的空间,管理者会更难为他人着想,更难思考团队到底需要和达到什么的目标,怎么做能够让公司受益等等。当你的时间都困在了工作中,长期来讲会产生工作的倦怠(burn out),对于身心、家庭、还有公司都不是什么好事。

但是另一方面我对于弹性的工作时间和短期的加班是可以接受的,比如说产品要发布了,或者客户有什么问题了,哪怕是周末或者晚上,我觉得也应该能够尽力帮忙,但是这样的加班节奏不应该是长期的、持续的、强制的。公司(或者管理者)不应该告诉员工这个时候加班,我的态度是,如果员工有一段时间特别忙,加班比较多,我会让他们去休个假,或者轻松一段时间。

我自己也一样,如果忙了一段时间,也需要从工作中脱离一下。因为忙碌的时间太久想要从中恢复很累,而且加班太多,导致心情不好的时候也会让家庭不开心,并且影响工作本身的效率。

工程师怎么避免内卷化

第一我觉得工程师要打好基础:不管是科班毕业还是转行。当你做上程序员的时候,就一定要打好自己的基础,基础包括:

  • -编程本身的技能:一定要写一手好程序,有好的编程习惯。

  • -写作、沟通的技能:能够写好的文档,做出清晰的沟通。

在工作的前几年,就要开始建立自己的社交圈,有一些值得信赖,互相学习、找工作可以互相内推的朋友,这样可以避免走很多的弯路。

在自己工作的范围内,看得比较深:因为你对于某一样东西有深入的理解后,学习浅一些的东西会很容易。比如说你做的是互联网的后台开发,那么深入理解一个或者几个分布式的系统很重要,如果做IOS app,那么对手机系统的内部工作应该是要很懂。

多阅读,多看看系统的知识,还有好的论文(比如说Google的论文):这里我并不推荐付费的网课,相对网课,看看那些原创的书,比如说DAIA,算法导论之类的。会比只是教你刷刷LeetCode要好得多。当然LeetCode也是可以做做,不过不应该把它作为人生的追求。也建议看看管理、商业类的书,比如说硅谷之火,创新者的窘境之类的。

我建议这些能力在工作的3年内培养。

3年后,在有了这些基础后,对于业界和行业的发展应该会看得更清楚,而不至于走错大方向,比如说大家都在做SaaS的时候,你不应该花时间去学习太多windows 桌面的软件开发;选择一条发展更快的技术路线应该是避免内卷化的一个很重要的选择,如果方向都选错了那么避免内卷也很难。

另外跳槽的时候应该注意积累,每次跳槽应该是能够有更加深入的技能,而不是看钱跳槽(钱会自然来的)。如果每次跳槽都是换个方向平移重来,可能会导致工作十年跟工作3年的输出类似。

关于技术方向选型的一些建议

我个人觉得未来的后端软件发展逃脱不了两样东西:第一是云,第二是开源。在大部分的时候是两者结合起来的,因为云本身也用了很多开源的软件。相比自己造轮子,使用开源,并且贡献开源(重点)应该是第一选择。把开源软件folk出来,自己搞一套我觉得并不是很可取。因为这样跟做闭源的区别也不是很大(当然你至少会对那个开源软件有深入的了解)。你的第一选择是,能否把一些贡献给反馈回开源的社区。

如果你选择贡献开源,最好选择贡献有社区的开源软件,其中以Apache或者CNCF为代表。因为有社区的开源软件会走得更长、也往往会更成功,作为一个这样(成功的)项目贡献者你的价值就会越大。


如果你刚毕业、或者工作时间还很短,建议选择更新一点的方向,比如说你现在想要做后端软件开发,Go/Rust会比Java更好,Java比C++也会更好。(我这里这样说不是为了搞语言之争,我也知道C++ ver.17 有很多新的特性,也本来就有很多市场)。

如果两个差不多的工作机会,做云上的软件开发(比如说一个给餐饮行业做管理的SaaS),会比做传统行业软件开发(比如给餐饮行业做桌面软件)要来得更好。因为一个发展更快,空间更大的行业的内卷化就会越少。

管理者:如何避免团队内卷化

作为管理者而言,在做好公司的任务之外,也需要尽力避免团队的内卷化。

首先说说加班,虽然说短时间的996会给团队带来(不少的)产出,不过从长时间来看,团队会因为倦怠和缺少进步而缺乏后劲。长时间的加班会让团队心情不好,钱给够是一个方面,但是钱很难买来长期的快乐(我的经验是涨工资的时候很开心,涨完了过段时间就平静了)。相对用钱去刺激加班(给1.5倍的工资,干两个人的活),我觉得更重要的是让团队成员真正能够得到发展,能够喜欢自己的工作,这样的效果很正向:公司能够得到工程师尽心尽力的产品,而工程师也能获得发展,并且过程很开心。作为管理者而言,你自己可以加班,但是不要要求团队总是和你一起加班,偶尔一次可以,总是这样的话,团队会变得低效和士气低落。

跟加班类似的,管理者也不应该认为员工的所有时间都属于公司的,应该尊重别人的休假、陪家人、生病等等的时间。

那么怎么能够让工程师更好的发展呢?管理者应该和工程师多沟通,多1-1,了解到别人的需求和想法,然后根据情况给出不同的机会(比如说承担某个重要的功能开发、在某个meetup上面讲一场技术专题、做一个更好的设计文档)。作为团队的管理者,不应该假设“给你做这个功能你就可以进步和开心了”。

其次,在面试的时候也不要有很多不恰当的要求,比如说觉得35岁以上、或者怀孕的人就不应该要之类的,在我看来35岁的程序员可以有非常厉害的输出,对这样的程序员的歧视首先是非常的没意义,其次也会加速内卷、社会更加不公平和完全不必要的焦虑(35岁焦虑)。对于公司而言应该是看大格局(怎么打造一个别人更喜欢的产品),而不是纠结于比较low的地方(如果招了一个刚结婚的人,未来一两年可能需要休几个月的产假;或者35岁的人有娃,需要花时间陪娃、接娃上下课)。

草草写一点想法抛转引玉一下。

转载于公众号“码个蛋”


曾经风光无限的铁饭碗没了…网友评论:996卷走了955的他们…

科技创新大兴 发表了文章 • 0 个评论 • 59 次浏览 • 2021-04-16 14:47 • 来自相关话题

作为一个程序员,你刚毕业时候的梦想是去哪里呢?是BAT这些大厂?是自己马上就开始创业?相信有很多一部分人,尤其是80后,最初的梦想是想进一个外企工作,微软、谷歌、甲骨文、IBM、HP等等等等。可以说80后那一代,见证了外企在国内最辉煌的一段岁月,当时如果身边有... ...查看全部

作为一个程序员,你刚毕业时候的梦想是去哪里呢?是BAT这些大厂?是自己马上就开始创业?

相信有很多一部分人,尤其是80后,最初的梦想是想进一个外企工作,微软、谷歌、甲骨文、IBM、HP等等等等。

可以说80后那一代,见证了外企在国内最辉煌的一段岁月,当时如果身边有哪个同学拿到了一个外企的offer,绝对是要被人羡慕半天的,尤其是那些大公司,真是挤破头皮都想进去,当时每个人都说外企的福利有多好、外企的管理多人性化,相比起现在国内IT公司追求的996标配,外企仅仅在加班费一项上足以傲视群雄。

但是再辉煌的君王也有落寞的一天,曾经那些个习惯了穿西装打领带喝咖啡讲英文的外企员工不得不承认,外企风光不再,可以说外企的黄金时代已经过去了。

这不,前几天有消息传来,巨头IBM的中国研究院(IBM CRL)已经全面关闭,关闭的悄无声息,在举国讨伐郑姓女戏子的热点追逐下,更是显得苍白无力、无人知晓。

IBM,作为大家熟知的行业龙头企业,有着一百多年的历史,哪怕IBM研究院,也可以追溯到上世纪40年代,比新中国成立的时间还早。

IBM中国研究院则是在1995年成立于中国北京,位于北京上地信息产业基地的西北角,坐落在中关村软件园内。当时绝对是一件轰动国内IT界的事情。

到了2008年,IBM中国研究院上海分院成立。

自从建立以来,据不完全统计,有过上千名研究人员在该研究院工作过或正在工作,其中绝大多数拥有中国乃至世界一流大学的博士和硕士学位。因为IBM基本不招本科生,当时硕士能进IBMCDL就已经很不错了,能进CRL的大多数都是博士。

说起IBM中国研究院的重点研究领域共有四个,分别是

  • 行业解决方案行业解决方案,是指运用前沿技术解决行业的关键问题,这里指的关键问题是环境治理、电力与能源、物流与供应链、医疗、金融服务等各领域相互相成的一系列复杂方案,并非单单局限于某个狭隘角度。而是更加关注类似大气污染防治、可再生能源高效利用和企业节能这种关乎人类可持续发展的命运话题,往往一个研究计划就以十数年为周期。

  • 认知计算最为知名的就是在2011年发明的沃森,它以IBM创始人Thomas J. Watson名字命名。作为一个自然语言问答系统,沃森甚至在美国的著名电视智力竞赛节目《Jeopardy!》中击败了该竞赛最长优胜纪录的保持者Kenneth Jennings,从此被世人熟知。

  • 运算即服务IBM中国研究院主要从事物联网云计算、云计算基础设施与云服务、平台即服务(PaaS)的开发与研究。

  • 物联网IBM中国研究院在高性能无线专用物联网通信系统、大规模物联网数据处理中间件平台等领域取得了诸多技术上的突破,并在2014年提出过物联网3.0的概念。

当年的IBM就像现在的BAT,聚集了国内最能干的一帮青年才俊,20年光阴转瞬即逝,当年的意气奋发现在亦早已成了40不惑,甚至50知天命。曾经的雄心壮志,还在吗?

现在的年轻人或许只知道击败了众多围棋高手的人工智能阿尔法狗,但实际上早在1997年,IBM研发的计算机深蓝(Deep Blue)就战胜了国际象棋冠军卡斯帕罗夫。当时的深蓝就是今天的阿尔法狗,当时的IBM就是行业的领先者。

而在深蓝的基础上,进一步通过机器学习,复杂算法和大规模数据库进化出来的就是后来的沃森,现如今沃森在金融领域的理财管理,保险业理赔,商业领域的社交媒体分析,医疗领域的慢性疾病控制,跨行业的呼叫中心服务都有着广泛的运用。

但是一个沃森掩盖不了IBM的日益老态,作为曾经的巨人,IBM已经连续十季度营收下降,仿佛预示着一个时代的落幕,更是一代在华外企的落幕。

其实早在前几年,就不断有曾经的巨头外国企业逐渐离开中国市场:

  • 2015年3月19日,雅虎宣布退出中国市场,雅虎北京研发中心宣布关闭。

  • 2019年,亚马逊宣布退出中国。

  • 甲骨文,在受到了云计算的冲击后,曾经不可一世的甲骨文正式关闭在中国的研发中心,并裁减员工约900人。

尤其是近年来BAT、华为等国内大厂的崛起,习惯了996的程序员让加班成本无比高昂的外企更加不适。毕竟,再杰出的才华,在努力面前还是会被超越!

退出,其实是早晚的事情。告别,也是情理之中。