国外发达国家码农是真混得好么?

2023-09-20 12:24:44

来看看花旗工作十多年的码农怎么说吧!
美国最大的论坛 Reddit,之前有一个热帖:

一个程序员说自己喝醉了,软件工程师已经当了10年,心里有
好多话想说,“我可能会后悔今天说了这些话。”他洋洋洒洒写了
一大堆,获得9700多个赞。在这里插入图片描述

内容很有意思,和题主“国外发达国家码农真的混的好么”这个问
题很贴切,而且是10年老程的员的肺腑之言。

链接:原文是英文的,阮一峰老师翻译了一下

我选取了一些放在下面:
(1)职业发展的最好方法是换公司。

(2)技术栈不重要。技术领域有大约10-20条核心原则,重要的
是这些原则,技术栈只是落实它们的方法。你如果不熟悉某个技
术栈,不需要过度担心。

(3)工作和人际关系是两回事。有一些公司.我交到了好朋友,但
是工作得并不开心;另一些公司,我没有与任何同事建立友谊,
但是工作得很开心。

(4)我总是对经理实话实说。怕什么?他开除我?我会在两周内
找到一份新工作。

(5)如果一家公司的工程师超过100人,它的期权可能在未来十
年内变得很有价值。对于工程师人数很少的公司,期权一般都是
毫无价值。

(6)好的代码是初级工程师可以理解的代码。伟大的代码可以被
第一年的CS专业的新生理解。

(7)作为一名工程师,最被低估的技能是记录。说真的,如果有
人可以教我怎么写文档,我会付钱,也许是1000美元。网上的口
水战,几乎都无关紧要,别去参与。

(9)如果我发现自己是公司里面最厉害的工程师,那就该离开
了。

(10)我们应该雇佣更多的实习生,他们很棒。那些精力充沛的
小家伙用他们的想法乱搞。如果他们公开质疑或批评某事,那就
更好了。我喜欢实习生。

(11)技术栈很重要。如果你使用Python或C++语言,就会忍不
住想做一些非常不同的事情。因为某些工具确实擅长某些工作。

(12)如果你不确定自己想做什么东西,请使用Java。这是一种
糟糕的编程语言,但几乎无所不能。

(13)对于初学者来说,最赚钱的编程语言是SQL,干翻所有其
他语言。你只了解 SQL而不会做其他事情,照样赚钱。人力资源
专家的年薪?也许5万美元。懂 SQL的人力资源专家?9万美元。

(14)测试很重要,但TDD(测试驱动的开发)几乎变成了一个邪教。

(15)政府单位很轻松,但并不像人们说的那样好。对于职业生涯
早期到中期的工程师,12万美元的年薪+各种福利+养老金听起来不
错,但是你将被禁锢在深奥的专用工具里面,离开政府单位以后,
这些知识就没用了。我非常尊重政府工作人员,但说真的,这些地
方的工程师,年龄中位数在50岁以上是有原因的。

(17)大多数头衔都无关紧要,随便什么公司都可以有首席工程师。

(18)手腕和背部的健康问题可不是开玩笑的,好的设备值得花钱。

(19)当一个软件工程师,最好的事情是什么?你可以结识很多想法
相同的人,大家互相交流,不一定有相同的兴趣,但是对方会用跟你
相同的方式思考问题,这很酷。

(20)有些技术太流行,我不得不用它。我心里就会很讨厌这种技术
,但会把它推荐给客户,比如我恨Jenkins,但把它推荐给新客户,我
不觉得做错了。

(21)成为一名优秀的工程师意味着了解最佳实践,成为高级工程师
意味着知道何时打破最佳实践。

(22)发生事故时,如果周围的人试图将责任归咎于外部错误或底层
服务中断,那么是时候离开这家公司,继续前进了。

(23)我遇到的最好的领导,同意我的一部分观点,同时耐心跟我解释
,为什么不同意我的另一部分观点。我正在努力成为像他们一样的人。

(24)算法和数据结构确实重要,但不应该无限夸大,尤其是面试的
时候。我没见过药剂师面试时,还要测试有机化学的细节。这个行业
的面试过程有时候很糟糕。

(25)做自己喜欢的事情并不重要,不要让我做讨厌的事情更重要。

(26)越接近产品,就越接近推动收入增长。无论工作的技术性如何
,只要它接近产品,我都感到越有价值。

(27)即使我平时用Windows工作,Linux也很重要。为什么?因为
服务器是Linux系统,你最终在Linux系统上工作。

(28)人死了以后,你想让代码成为你的遗产吗?如果是那样,就花很
多时间在代码上面吧,因为那是你的遗产。但是,如果你像我一样,
更看重与家人、朋友和生活中其他人相处的时光,而不是写的代码,
那就别对它太在意。

(29)我挣的钱还不错,对此心存感激,但还是需要省钱。

(30)糟糕,我没酒了!

ps:可能看完以后你会觉得这个人真的喝多了,
一会儿说技术栈重要一会儿说不重要的。
我的理解是技术栈重要是因为这个会影响很多东西,比如工作机会、工作内容、薪资等等,技术栈不重要是因为技术栈你是可以换的,只要你愿意付出时间等代价。

更多推荐

外包干了2个月,技术退步明显.......

先说一下自己的情况,大专生,18年通过校招进入武汉某软件公司,干了接近4年的功能测试,今年年初,感觉自己不能够在这样下去了,长时间呆在一个舒适的环境会让一个人堕落!而我已经在一个企业干了四年的功能测试,已经让我变得不思进取,谈了2年的女朋友也因为我的心态和工资和我分手了。于是,我决定要改变现状,冲击下大厂。刚开始准备时

Spring Cloud超越微服务:服务网格的崭露头角

文章目录1.微服务的挑战2.什么是服务网格?3.SpringCloud和服务网格服务发现负载均衡安全性服务网格扩展4.服务网格的优势4.1.解耦通信逻辑4.2.提高可观察性4.3.灰度发布和流量控制4.4.安全性5.未来展望6.结论🎉欢迎来到架构设计专栏~SpringCloud超越微服务:服务网格的崭露头角☆*o(≧

大数据-Spark-Spark开发高频面试题

一、spark的内存分布堆内内存:在这使用堆内内存的时候,如果我们设置了堆内内存2个g的话,读取的数据也是两个g,此时又来两个g的数据,这样就会产生OOM溢出,因为处理完两个g的数据,并不会马上进行GC。堆外内存:这样我们就可以使用堆外内存,也就是物理内存,堆外内存可以精准的申请和释放空间,不需要Gc,性能比较高,提升

基于Hadoop的MapReduce网站日志大数据分析(含预处理MapReduce程序、hdfs、flume、sqoop、hive、mysql、hbase组件、echarts)

需要本项目的可以私信博主!!!本项目包含:PPT,可视化代码,项目源码,配套Hadoop环境(解压可视化),shell脚本,MapReduce代码,文档以及相关说明教程,大数据集!本文介绍了一种基于Hadoop的网站日志大数据分析方法。本项目首先将网站日志上传到HDFS分布式文件系统,然后使用MapReduce进行数据

Microsoft Excel 101 简介

什么是MicrosoftExcel?MicrosoftExcel是一个电子表格程序,用于记录和分析数值数据。将电子表格想像成构成表格的列和行的集合。字母通常分配给列,数字通常分配给行。列和行相交的点称为像元。单元格的地址由代表列的字母和代表行的数字给出。让我们使用下图说明这一点。为什么要学习MicrosoftExcel

IF,AND,OR 或嵌套 IF &在 Excel 中不是逻辑函数

事情并非总是我们希望的那样。意外的事情可能发生。例如,假设您必须将数字相除。尝试将任何数字除以零(0)都会产生错误。在这种情况下,逻辑功能很方便。在本教程中,我们将涵盖以下主题。在本教程中,我们将涵盖以下主题。什么是逻辑功能此功能使我们能够在执行公式和函数时引入决策制定。功能习惯于;检查条件是对还是错结合多个条件Wha

【Linux】线程池 | 自旋锁 | 读写锁

文章目录一、线程池1.线程池模型和应用场景2.单例模式实现线程池(懒汉模式)二、其他常见的锁1.STL、智能指针和线程安全2.其他常见的锁三、读者写者问题1.读者写者模型2.读写锁一、线程池1.线程池模型和应用场景线程池是一种线程使用模式。线程过多会带来调度开销,进而影响缓存局部性和整体性能。而线程池维护着多个线程,等

深度学习之模型压缩、加速模型推理

简介当将一个机器学习模型部署到生产环境中时,通常需要满足一些在模型原型阶段没有考虑到的要求。例如,在生产中使用的模型将不得不处理来自不同用户的大量请求。因此,您将希望进行优化,以获得较低的延迟和/或吞吐量。延迟:是任务完成所需的时间,就像单击链接后加载网页所需的时间。它是开始某项任务和看到结果之间的等待时间。吞吐量:是

Linux内核源码分析 (B.9)深度解读 Linux 内核级通用内存池 —— kmalloc 体系

Linux内核源码分析(B.9)深度解读Linux内核级通用内存池——kmalloc体系文章目录Linux内核源码分析(B.9)深度解读Linux内核级通用内存池——kmalloc体系1\.kmalloc内存池中都有哪些尺寸的内存块2\.kmalloc内存池如何选取合适尺寸的内存块3\.kmalloc内存池的整体架构4

计网第五章(运输层)(六)(TCP可靠传输的实现)

目录一、基本概述二、具体实现1.前后沿:2.利用指针描述发送窗口的状态3.有差错情况之前在数据链路层时已经讨论过可靠传输(计网第三章(数据链路层)(二)(可靠传输)),也在其中提到过可靠传输并不局限于数据链路层。一、基本概述TCP通过以字节为单位的滑动窗口来实现可靠传输。可靠传输的概念在之前已经提到过,这里不再做赘述。

计算机视觉与深度学习-卷积神经网络-纹理表示&卷积神经网络-卷积神经网络-[北邮鲁鹏]

这里写目录标题参考文章全连接神经网络全连接神经网络的瓶颈全连接神经网络应用场景卷积神经网络卷积层(CONV)卷积核卷积操作卷积层设计卷积步长(stride)边界填充特征响应图组尺寸计算激活层池化层(POOL)池化操作定义池化操作作用池化层超参数常见池化操作全连接层(FC)样本增强翻转随机缩放&抠图色彩抖动参考文章计算机

热文推荐