#头条创作挑战赛#
澄清一下大多数程序员存在的认知误区:
其实『不是大厂培养了人才,而是进大厂人的本身能力就比较强;就像985出身的人相比而言一般发展比较好,其实是因为进985意味着本身学习能力不错,而不是985的老师教学能力强(人间真相)。』
诚然大厂、985会对人有一些光环加成,但我们尤其是靠一些运气进入大厂的人,要对自己有一些清晰的定位,不是你在大厂所以你自动就优秀了,而是许多优秀的人在大厂才成就了大厂。至于自己能力怎么样,优不优秀,自己心里清楚,不要麻痹自己。
此外大厂/高校也要认识到『人』的重要性,善待员工/学生,以人为本,而不要一副高高在上的姿态,否则『人』抛弃了你,你就什么也不是。
千万不要把因果颠倒了呀!
架构设计的特性
1. 架构设计和程序设计的差异
架构设计的是判断和取舍,程序设计的关键是逻辑和实现。较多程序员在变成架构师后,还是按照写代码的方式去思考架构,会有很多困惑。
2. 架构设计没有体系化的培训和训练机制
大学里没有架构设计相关的课程,架构设计的书籍更多的也只是关注某个架构设计点,没有体系化的架构设计书籍,导致程序员在学习上没有明确指导,只能自己慢慢摸索,效率低,容易踩坑。
3. 程序员对架构设计的理解存在误区
这些误区主要有:架构师要有很强的技术能力;架构师要有很强的创造力;架构师要设计高大上的架构才能体现能力;架构一定要具备高可用、高性能。
这些误区让很多技术人员望而生畏,还没入门就放弃了。
架构可大可小,人人都可以是架构师。
架构师系列文章,程序员瓶颈突破架构师➕架构设计的理论与实践。
请君共赴架构师之路,更多精彩内容,点击链接了解更多。
网页链接
杭州一程序员谈论35:
其实吧,以前总觉得程序员35岁就不会有人要了,现在发现是误区,30到35岁,35岁到
40岁之间,即使你不是大厂的,在你30到40岁的时候,还是很好找工作的,真正难得是你
40岁还没有财富自由,40岁以后再找工作,难度才是非常之大。
观点一:现在40跟过了十年后40是有本质区别的,请不要偷换概念,现在40的老哥,20多找工作,连lc都没有。
观点二:以前觉得程序员35岁没人要,等到后来才发现我错了,可能30岁就没人要。
观点三:无论哪个厂,年过40,连续工作到12点以后你就得投降,企业就会认为你没年轻人耐操,就被嫌弃了。
对此,你怎么看?
#杭州职业故事# #杭州头条#
为什么程序员下班以后只关显示器不关电脑?不管是台式机还是笔记本都不会关的,程序员圈里流传着这么一句话:入职开机,离职关机。夸张吧,当然了,这是开玩笑的话,不过程序员不爱关机这件事是真的。很多外行人对程序员有一个误区,就是程序员下班了,他的电脑也就下班了,就会认为程序员这么干是在浪费公司的电费,认为程序员的电脑不是自己的就不珍惜,就想把公司的电脑干到报废。
其实,完全不是这样的,如果我们认为程序员下班不关电脑是因为他懒,这样也可以说得过去。这里咱们不说正在运行代码的电脑啊,就说程序员平时开发用的电脑。程序员用的电脑跟我们普通人用的电脑不一样,它运行的软件要多得多,比如开发工具Idea啊、虚拟机啊、代码服务啊、数据库工具啊、编辑器啊、搜索出来无数个结果的浏览器啊、远程工具啊、命令行啊等等吧,平时少说也得开着十个八个的软件。这些工具关起来是很容易的,但是如果想完全启动起来就需要一些时间了。如果下班的时候把电脑关闭的话,明天一早到公司把电脑打开,再逐个把这些软件和服务都启动起来,这样半个小时,甚至一个小时时间就出去了,太浪费时间了。
浪费时间是一方面,关键是昨天的代码写了一半,现在该写哪了,还得重新捋思路。再比如,用浏览器搜索出来的内容找不着了,可能还得重新去搜,去找,这太浪费时间了。程序员的成本那么高,比如说程序员时薪100块钱的话,浪费一小时就是100块钱的成本,相对于浪费那么点电费算什么。再比如很多程序员习惯了开很多窗口,根据需要可以来回切换,你想想,如果每天都关闭重新打开,再找到你需要的内容,那浪费的时间就不可估量了。
干程序员的都知道,什么时候才会重启电脑呢?基本上都是电脑卡的带不动了,或者说是系统更新,否则坚决不会重启电脑,因为重启一下电脑的代价太大了。
其实,程序员平时不关机还有一个很重要的原因,就是程序员要处于24小时待命。如果线上出现Bug,需要快速修复,程序员不在公司怎么办,不可能打车去公司电脑上解决吧。不管在哪里,随便找一个电脑远程自己公司的电脑,找到问题立刻解决。我相信干程序员的朋友都遇到过类似这种情况,所以说程序员的电脑上一般都安装着TeamViewer或者向日葵,或者公司的VPN,不怕一万就怕万一。你上次关机是什么时候,还记得不?
记得很多年前,我那时候为了用SQL解决一个数据统计问题,这件事我到现在都记得,记得清清楚楚,当时SQL语句写了百十来行,下班的时候,去了一趟厕所,跟同事打了个招呼说下班吧,到工位就把电脑关了。第二天到公司才知道,SQL语句没保存,气得我都想抽自己嘴巴子,气得直挠头,几个小时的工作就这么没了。从那以后就长记性了,千万不能随便关机,即使觉得关机没事也不关机,不怕一万就怕万一,这种坑踩一次就记住了。哦对了,还有一个一般人不太注意的坑,大多数的程序员系统都用win10或者win11,windows系统有一个自动更新的功能,更新完了还会重启电脑,为了避免重启电脑导致数据丢失,很多程序员都会把系统更新的功能关闭,你有没有关闭系统的更新功能呢,反正我是关了。
写代码 写到三十岁没升到管理怎么办啊?
思维误区
我还没开始工作的时候,有人就在说:程序员能做到30岁吗?
我快到30岁时,有人在问:35岁还能做程序员吗?
过了35之后,我已经看到了新的讨论:40岁程序员怎么办?
估计10年之后,新的讨论会是:程序员50岁以后的职业发展是什么样子的。
这反映了一个重要的事实,程序员是中国的一个新兴职业,发展时间还不够长。当时间逐渐拉长,越来越多大龄程序员就会出现。
写代码和做管理
如果你热爱写代码,那就去写。但是,这里必须知道一个前提,写代码和写代码是不一样的。
以现在的普遍情况看,20多岁的程序员大多属于初出茅庐,写代码大多是以完成功能为主,而到了30多岁,写程序大约十年左右,需要考虑的方方面面必然要更多,比如,这个需求是否合理,从架构层面会造成什么样的影响,是否能找到更简洁的解决方案,这个代码写出来别人是否容易理解等等。
30岁之后,精力会下降,这是生理决定的,如果这时候还和年轻人比拼堆代码的速度,靠加班熬夜,那必然是输了。而且,这种做法始终在低水平徘徊,自己做时间长了也会心生厌倦,所以,这不是一个可持续的模式。
很多人想30岁就做管理,可是,哪有那么多人让你管理啊!为什么之前有那么多少年得志的故事?还是前面的那个逻辑,之前做的人少,所以,机会多。现在IT行业的人才积累已经达到了相当的规模,机会就会减少。当然,投身创业公司是另外一个选择,但前提是这个创业公司能做起来。不过,即便是有机会,为什么是你?
不管做什么,自己有本事才是前提。
成长之路
以我个人的成长经验来看,不断地和更高水平的人过招,是保证成长的前提。
初入职场,我也以为自己的成长路径会是写几年程序,然后,做管理。很幸运的是,在职业生涯之初,我遇到一个水平很高的人,他让我看到了一种心生向往的状态,于是,我就下定决心,成为一个优秀的程序员。
就发展而言,如果身边没有高手怎么办?那就去找一个能和高手近距离过招的地方。
不过,这里说的并不等价于大公司。大公司里固然有很多高手,但问题是你有多少机会和这些人一起工作。比如,我们知道Jeff Dean很厉害,但加入Google就能和他一起工作吗?所以,比起在哪里工作,和什么样的人在一起工作会更重要。
从正常选择公司的方式来说,面试是一个了解公司、了解团队的机会。如果负责招聘的人会和你一起工作,那就可以好好考察一番。如果不是,那一定要尝试见见团队,最重要的是,见见团队里的高手。如果这个高手的状态不能让你羡慕,那他就不是你的目标。
当然,有了高手,如何成长,那就是每个人自己的事情了。
美国公立学校和私立学校有啥区别?
其实,美国公立、私立学校的区别,归根到底可以说是钱的问题。不是所有的公立学校都不如私立学校,也不是所有的私立学校都比公立学校好。下面我分别从老师的角度和家长的角度来说一说公立和私立学校的差别。
从老师的角度看
一、公立学校:
1.入职要求:首先必须要有该州的教师资格证,这是入门砖,没有人家根本不鸟你。最低学历是本科。研究生学历会让你的工资更高。
其次就是要有工作许可证。美国公民、绿卡持有者优先,其次是H1B持有者,最后是OPT期间的留学生。J1待议。
2.工资:
不同州不一样。以加州为例,新老师的起薪一般在4W美金左右,如果你有研究生学历,起薪会有5W+。工作二三十年大概会涨到8-10W美金。工资高的地方物价也高。这些工资都是税前的工资。
另外就是,越差的学区,教师工资相对会高一点,因为学生不好教,所以要提高工资来吸引老师。但是也不会高很多,一年多个5000美金的样子。
特别好的学区基本上是很少招老师的,虽然工资少一点,但是学生好教,所以老师扎堆,很少有空缺,基本一个萝卜一个坑。
3.福利:
1)各种保险都给上。
2)退休金高,好的能给到退休前工资的90%。
3)稳定有保障,试用期过了以后,学校不能随便开除你,除非有什么重大事故,比如虐待学生之类的。
4.工作时间:
一般就是一年180多天,暑假歇俩月,一般是6月中旬到8月中旬,然后8月中旬开学。寒假一般是圣诞节到新年那俩仨礼拜。然后各种法定节假日和春假都会放的。
5.学生人数:
一般一个班是25-30个人,如果招不到老师有可能俩班和在一起40个人,但是比较少见。有时候如果学生招不够,可能会不同年级合班上。
6.学生素质:
这个和学区所在的地方有关系。基本上房价高的学区就是好学区,学生素质就高一些。
二、私立学校:
1.入职要求:1)不一定需要教师资格证,但是有证的优先。2)大学本科及以上学历。3)合法工作签证。有些私立学校也会帮老师办工签甚至绿卡。同等条件下,依旧优先录取美国公民和绿卡持有者,哪怕TA没有教师资格证。
2.工资:和公立学校差不多,根据地区不同,或多或少,加州基本也是4W左右起薪。但是因为不像公立学校那样有着明确的薪水规定,所以还有上涨的余地。
3.福利:和公立学校差不多,但是基本没有退休金。有随时被辞退的可能。
4.工作时间:和公立学校差不多。
5.学生人数:比公立学校少,一个班10多个学生,也有几个学生一个班,基本上都比较听话。素质较高。家长课后也会请家教什么的,所以学习成绩一般不差。
从家长的角度看
1.学费:
公立学校完全免费,还有早餐和午餐。如果是特困家庭,可以申请减免饭费。
私立学校的学费比较高,不同的学样收费也不一样,通常情况下,不同学校的学费有600-1300美金/月的差距,而且年级不同学费也不同。这还没有算书本费、各种材料费和捐款。
辣么美国都是什么样的人上私立学校?大多是医生、律师、工程师、程序员、商人等高收入群体的孩子,一家人年薪至少在20W美金以上,因为美国一般一家人至少俩孩子,一个孩子一年学费2-3W刀。
2.教师素质:
很多人都觉得私立学校的老师肯定比公立学校的老师好,这其实是一个误区。哪里都有好老师和不好的老师。凭良心说,老师其实都差不多,有教师资格证并且工作几年没有转行的老师都不会差到哪去。。。只是私立学校的老师可能服务态度会更好一些罢了,毕竟学生就是大爷、金主儿、上帝、工资来源,伺候不好就有可能丢了饭碗。
所以私立和公立学校的主要差别并不是在于师资,而是在于学生素质,学生素质高,老师教着舒心,大家一起进步。同样的,老师在比较差的公立学校教课,学生不听讲,那教出来的成绩也不会好到哪去。所以一味把责任都推到老师身上是不负责任的。。。
3.学校设施:
越乱的地方的学校越设计得跟监狱一样,都是铁栏杆,教室门也不能开,窗户也不能打开,帘子也不敢开,怕有人冲进来开枪。。。美国校园枪击案还是时不时会有的。
私立学校就没上限了,学费越贵的设施越好,各种体育馆、剧院、游泳馆等等,捐钱就是了。。。
4.课程设计:
越差(穷)的学校,公立和私立都算,课程种类就越少,比如只有英文和数学,偶尔上上自然科学和人文科学,请不起专门的音乐美术体育等等老师。
5. 总结:
1)如果想让孩子上好学校,不管私立还是公立,一定要挑好地段,最简单的标准就是看房价就是了。不过美国有一点好处是,即便你要上好学区,也不一定要买他们的房子,租房子也可以,当然租金比一般的地段可能贵上两三倍就是了。
2)私立学校都不差,但是公立学校的水平差异比较大,主要原因是学生和家长的素质(钱)。
很多人都问我,怎么看待某某企业,怎么看待某某企业,其实这个东西就跟看戏班子演出一样,台上演出的角儿当然很重要,但幕后那些忙活的人更重要。
经常有朋友陷入这样一个误区,就是过于放大了个人的价值,而忽视了一些普通员工的作用。就拿华为存储来说,外界总是关注那些年薪百万的天才少年,却忽视了他们还有超过4000名研发工程师。
实际上,真正能决定一家公司命运的,恰恰就是这些身在一线的研发人员。虽然看起来他们可能就是普通程序员,格子衫戴眼镜,但不同的公司有不同的文化和制度,他们其实决定了一个企业的真实战斗力有多少。
今天华为存储联合搜狐发布的短片《萤火担当》就挺好,他们把千行百业的程序员们比喻为新时代的萤火虫,虽然很多人都不是光芒万丈的,但从来没有停止发光,赶在1024程序员节这个时间点也确实是用心了。
最后再说一句,看任何事情都得有两面性,只有往深了琢磨,才能想到别人想不到的东西。
#新时代担当#
#1024程序员节主题片正式发布#
全世界都在加班!
画图狗在加班!程序员在加班!摄影师在加班!烘焙师在加班!会计在加班!人资在加班!公务员在加班!老师在加班!包括我了解的我以前认为的规律行业的职员们都在加班!
大家都在加什么?加得合不合理?真的做了事吗?效率高不高?这些工作上班时间内做不完吗?做不完是员工效率低还是行业的缺陷,还是工作量与员工人数比例不合理?
而且据我所知,很多公司为了缩减加班费,表面上不让加班,加班要申请,但是事实是工作还得做完,就是让你不要用公司的电加班,带回家自己做,……
很多雇主和用人单位经常陷入低效的形式主义的加班陷阱。体力劳动的工人每周在工厂工作多达100小时,白领工作者每周996的泡在办公室里,但却未必有实质的工作产量。只是管理者面对激烈的市场竞争,为了缓解自身的心理焦虑,拼命让员工加班。
中国老板们盲要求员工长时间的低效加班,主要在于两个大思维误区:
企业老板总是拿自己拼命工作的标准来要求手下员工,那是不切实际的幻想。
老板为了追逐一个又一个小目标,每天只睡四小时,成功了劳斯莱斯会所嫩模,这关我月薪3000元打工仔什么事。
2.企业老板总是拿少数精英员工作为标杆,看人家每天工作12个小时,每周干100小时,一个人干顶两个人干的活,却要求普通员工也跟着做到。
但问题是人与人之间差距是巨大的,博尔特100米能跑9.79秒,那老板是不是也要自己员工也要跑出9.79秒。个别勤奋体力好的人干活就是能一个顶两个,但老板要考虑到大多数普通员工的体力,意志力,他们就是来工厂混饭吃,体力就那么多,你逼他们更努力工作,要么辞职不干了,要么在单位里偷懒,工作效率反而更低。
尤其是到工厂,工地,餐馆里打工的都是一帮头脑简单,缺乏耐心,喜欢及时享乐的群体。他们无法忍受长期学习的枯燥,考不上大学,才沦落到工厂,工地,餐馆里做着繁重,枯燥,无聊的工作。
老板不能拿精英员工的标准来要求普通员工也做到,结果只会适得其反,让他们更长时间的加班,反而工作效率更低,企业浪费更低宝贵的资金和运营成本。
因为人不是机器,人的体力是有限的,每天每周劳动输出也是有限的。根据英国兵工厂健康委员会研究报告显示,工人每周劳动产出峰值在67小时。当工人每周劳动时间超过67小时,劳动产出就会下降。即使工人每周工作70-80甚至100小时的劳动产出,也不会高于其每周工作67小时的劳动产出,所以超长工作时间反而会降低企业产量。
对于做办公室的脑力劳动者,其每周劳动产出更是有巨大的浮动。可能每天溜号在办公室里呆上12个小时只是为了做样子给老板看,实际工作劳动产出也许只相当于2小时的工作量,也许还不如认真努力工作8小时4分之一的产出。
企业公司在生意旺季繁忙的2-3个月里,确实需要每周加班60小时,来完成紧急的工作任务,但这种高强度工作不能长期化。否则员工就开始上班划水,装模作样的努力加班,但实际劳动产出还不如每周正常40小时。
对于体力劳动“时薪制”雇员,每周工作超过40小时,要支付1.5倍时薪的加班费,每周加班工资立即得到回馈,体力员工低学历喜欢及时享乐的特点,赚到更多加班费,消费欢度周末,以此来刺激体力员工努力工作。
而对于脑力劳动的“责任制”雇员,每周工作超过40小时的加班时间,要给予调休,在企业不忙的时候,给员工带薪假期。如果不能调休,要按员工的正常时薪,把加班费用计入年底奖金来发放。
当中国制造企业采用“周薪制” 每周发一次工资促进职工享受消费生活,并遵循新用工制度“时薪制”和“责任制”,每周工作时间限制在60小时,通过填写“工作项目单”来监督职工的工作效率,那么中国制造企业的劳动生产率将提升30%。
学习成功人士经验时,不要跌入这样的误区......
最近读了10个成功人士的访谈,想看看有没有什么新观点,却发现他们总结自己的那些成功秘诀,很多都高度相似,总结下来,主要有以下7点:
1、成功没有捷径,要热爱你的事业,和自己死磕,打造过硬的产品。
2、职场工作应该为自己建立口碑,要主动解决问题,敢于表达自己的观点。
3、保持好奇,随时拥抱变化,不回避认知的匮乏,持续学习。
4、成就事业需要借力,而拥有优质人脉的三要素是好奇、真诚、利他。
5、用成长性思维看待自己,接受自己的不完美。
6、成年人的世界没有两全其美,想到就要行动,行动就可能失败,要能预见到最坏结果并有勇气承受。
7、信心、耐心、控制情绪缺一不可。
但是,我们在学习别人的成功经验时,务必要独立思考,否则容易产生焦虑。什么都想学,却陷入混乱,最终放弃。
误区一:不了解自己,什么经验都往自己身上套。
有时候不同的人其成功方式截然相反。坚持1000天从程序员成为畅销书作者的Scalers倡导持续行动。他说:“如果1件难度大的事情1000天搞不定就拉长到2000天”。而从体制内裸辞的职场铁娘子虞莹,在7年内平均18个月就换一个行业从头开始,而她每换一次行业都能在这个专业领域重点突破,达到一定水平。看到这两个案例的朋友,就会很纠结,我到底要尝试谁的经验呢?不仅如此,看到虞莹18个月换一个行业,还次次有突破,反观自己,同一个工作都干了5年了,对行业还说不出来个123,莫名的抑郁扑面而来,对自己失望透顶。
其实别人成功的经验不一定都适用于自己。每个人都有做事的节奏。有的人天生做事慢,需要很长的时间来打磨。像这样的人就需要持续专注地做一件事。只要认定方向,不懈地坚持行动,当发现问题的时候,积极做调整,达到一定时间的累积,就能把那件事儿做得比别人好。因此认识自己,按自己的节奏做事儿更加重要。
误区二:别人可以,我也可以。
那些成功的人大多有高学历,曾在知名公司服务过,自己创业后有前公司品牌的背书更容易获得关注,而普通人都是无名之辈,不要妄想像他们那样在短时间内能够一炮而红。如果说那些聪明的有高学历的人成功尚且需要时间,那我们这些普通人需要的时间就更长了,因此坚持长期主义的人,会比碎片式学习和行动的人有更高概率获得成功。
误区三:只学习技巧,而不学习思维。
很多人学习的时候往往更加注重技巧,尤其是特别喜欢寻找更新奇的技巧。但想把一件事情做成功,一定要有独立分析的能力。而这个分析的能力就建立在思维系统上。你要去织一张网,并找到这件事情的关键点,思考要达到这些关键点我需要做什么、获取哪些资源、会有什么风险。各种技巧是为了达成每个关键点采用的工具,如果你都不知道目的地在哪里,即便学会了再厉害的划船技术也只能瞎转。厉害的人喜欢建立各种思维模型,特别是从高质量的书籍中将理论转化为一种思维模型用于解释社会现象,帮助决策。我们平时也要多学习锻炼这种能力,并不断在工作中检验。
误区四:人物传记看得热血沸腾,但永远迈不开第1步。
行动、行动、还是行动。这个世界上没有完美的策划和方案。更没有包治百病的药方,任何人都无法代替你自己去做。所以不要再光看文章了,行动起来吧。
程序员面对流程变动时一般都是什么态度呢?最近工作上有一个明显的感觉,自己对待变更的态度是被动且抗拒的。这不,昨天又因为Netty 实现长连接功能的问题跟领导争论了一番。#程序员#
因为分布式环境下实现长连接, Channel来路不明,需存储具体的路由信息。如果直接基于 Netty的ChannelGroup缓存长连接,只需要在原来的数据存储上加一个路由字段就可以了。而领导的意思是再重新写一套长连接缓存框架,不用ChannelGroup,通过上报头域的信息来维护路由。
最近有好几次实现思路上的争辩,程序开发有时候只是思路不同,本质也是殊途同归,但是在代码量上却有显著的差异。
每次领导的变更,我从开发的角度,以最省力的原则来思考的流程都被领导给否了。我现在陷入了一个误区:一碰到变更第一反应就是反驳这个变更的合理性,以及根据现有流程目标变动可能碰到修改问题。
碰到一个要干预程序员底层实现,甚至连类名要干预的领导,都不知道怎么敲代码了都。
至于为什么会有最省力思考的这种意识,核心在于这是个还挺复杂的项目,从设计到实现只给一个月的时间,又想保证进度,又要抓质量,用得又是新技术,编码免不了踩坑。潜意识里,这个时间节点成了我焦虑的根源。
差不多已经有三四次对着领导干了,领导可能已经对我产生了工作有懈怠、怕写代码的印象了吧!
话说回来,纵观中国软件开发市场,真的有谁能做到,既能兼顾质量又能兼顾进度、同时还要应对流程反复变更的吗?程序员群体也太难了吧。#微头条日签#