105

软件工程师的职业建议 - 未来世界的幸存者

 6 years ago
source link: http://survivor.ruanyifeng.com/startup/advices.html?
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

作者:阮一峰

什么样的人适合当软件工程师?

下面的职业建议分别来自台湾的侯捷老师,以及美国的著名程序员尼古拉斯.泽卡斯(Nicholas C. Zakas)。我觉得这些建议非常好,很有启发,不仅适合 IT 行业,也适合其他行业。

兴趣 #

虽然很多人在选择职业时受到家庭、环境等方面因素的影响,不一定能从事自己非常感兴趣的工作,但是如果可能的话,一定要以兴趣为要。这样在工作时会很开心,在个人发展方面也会取得很好的成就。

因为只有兴趣才能使你乐在其中,乐在其中你才会产生热情,充满热情才能使你做到卓越。

认知 #

认知影响态度,态度决定一切。

侯捷老师认为,一个人在选择发展道路时,尤其重要的是要对自己有一个正确的认知。每个人的兴趣可能会变,有些人看到某个行业有发展,有前途,因此对这个行业、这条路产生很大兴趣,这是非常可能的。但是每个人的本质基本不变,你是否甘于寂寞,是否能够与寂寞为伍?你的抗压性怎样?你的毅力强不强?你的心理素质如何?这些特质都是不易改变的,而且只有你自己才能给出这些问题的准确答案。只有对自己有了正确的认知后,才能决定往哪个方向发展。

他认为,做 IT 产业非常寂寞,也非常辛苦,大家可能在周末的晚上都要加班,这就要求从事该产业的人必须甘于寂寞,具备一定的忍耐力。侯捷先生在年轻的时候非常努力,曾被称为部门的“门神”,通常都是最早来,最晚走。他认为如果一个人喜欢交际应酬,喜欢公关,就应该尽早离开这个行业,因为选择道路一定要忠实于你的本质、你的兴趣。

我补充一点,软件工程师主要跟机器打交道,而不是跟人打交道。有时,你会整整一天坐在电脑屏幕前,不说一句话,全神贯注地调试软件。所以,如果你特别喜欢社交场合,喜欢跟人互动,你可能不适合当软件工程师。

EQ(情商) #

有能力读完大学的人,聪明才智基本上处于同一水平,没有人可以凭借聪明就可以取得成功。尤其是在进入社会后聪明才智已经退为次要位置,人们更重视 EQ 方面的东西,包括你的人际关系能力、沟通表达能力,抗压性、处理危机的能力等等。

学技术要掌握本质 #

我们在学习技术时应该注意掌握技术的本质性、不变性和可复用性。本质的东西不易变,不易变就可复用,这三者是一体的。

在接触先进的技术时,如果我们能将它的底层结构 、本质性的东西搞清楚,会给我们带来莫大的帮助。本质性、结构性的东西属于基础建设方面的问题,它对我们做项目可能不会带来直接的帮助,但在无形中会带来很大的影响,无形的通常是最宝贵的!世界上没有万变不变的手法,只有万变不变的宗旨。

刻苦修炼内功 #

学武的人都必须从最基本的马步、吐纳等内功方面学起,招术很重要,但如果没有内功方面的基础,招术也只能停留在基本的层面,不会到达很高的成就。

在技术追求方面也一样,我们有时候会太热心于学习业界的新技术,每一样都想沾一点。其实不必太急,基本功的东西更重要,研究得扎实一些,招术就比较容易创作了。

唯坚持得成功。 #

坚持、毅力对一个人的成功是最重要的。有一句话说:在大树底下站久了,树阴就是你的。

侯捷老师自认才能平庸,但很能坚持。他的这个个性在朋友之间是被称道的。虽然有时坚持并不代表一定成功,但只有坚持才能有成功的机会。年轻时尽量刻苦一些,使肉体承受最大的痛苦,年龄稍大一些的时候才能享受成果。有一句话“退一步海阔天空”,但侯捷先生更希望大家“撑一下海阔天空”,一试再试做不成,再试一下。

不要别人点什么,就做什么 #

尼古拉斯.泽卡斯的第一份工作,只干了8个月,那家公司就倒闭了。他问经理,接下来他该怎么办,经理说:

”小伙子,千万不要当一个被人点菜的厨师,别人点什么,你就烧什么。不要接受那样一份工作,别人下命令你该干什么,以及怎么干。你要去一个地方,那里的人肯定你对产品的想法,相信你的能力,放手让你去做。“

他从此明白,单单实现一个产品是不够的,你还必须参与决定怎么实现。好的工程师并不仅仅服从命令,而且还给出反馈,帮助产品的拥有者改进它。

推销自己 #

泽卡斯进入雅虎公司以后,经理有一天跟他谈话,觉得他还做得不够。

”你工作得很好,代码看上去不错,很少出Bug。但是,问题是别人都没看到这一点。为了让其他人相信你,你必须首先让别人知道你做了什么。你需要推销自己,引起别人的注意。“

他这才意识到,即使做出了很好的工作,别人都不知道,也没用。做一个角落里静静编码的工程师,并不可取。你的主管会支持你,但是他没法替你宣传。公司的其他人需要明白你的价值,最好的办法就是告诉别人你做了什么。一封简单的 Email:”嗨,我完成了 XXX,欢迎将你的想法告诉我“,就很管用。

学会带领团队 #

工作几年后,已经没人怀疑泽卡斯的技术能力了,大家知道他能写出高质量的可靠代码。有一次,他问主管,怎么才能得到提升,主管说:

”当你的技术能力过关以后,就要考验你与他人相处的能力了。“

于是,他看到了,自己缺乏的是领导能力,如何带领一个团队,有效地与其他人协同工作,取到更大的成果。

生活才是最重要的 #

有一段时间,泽卡斯在雅虎公司很有挫折感,对公司的一些做法不认同,经常会对别人发火。他问一个同事,后者怎么能对这种事情保持平静,同事回答:

”你要想通,这一切并不重要。有人提交了烂代码,网站下线了,又怎么样?工作并不是你的整个生活。它们不是真正的问题,只是工作上的问题。真正重要的事情都发生在工作以外。我回到家,家里人正在等我,这才重要啊。“

从此,他就把工作和生活分开了,只把它当作“工作问题”看待。这样一来,对工作就总能心平气和,与人交流也更顺利了。

自己找到道路 #

泽卡斯被提升为主管以后,不知道该怎么做。他请教了上级,上级回答:

”以前都是我们告诉你做什么,从现在开始,你必须自己回答这个问题了,我期待你来告诉我,什么事情需要做。“

很多工程师都没有完成这个转变,如果能够做到,可能就说明你成熟了,学会了取舍。你不可能把时间花在所有事情上面,必须找到一个重点。

把自己当成主人 #

泽卡斯每天要开很多会,有些会议根本无话可说。他对一个朋友说,我不知道自己为什么要参加这个会,也没有什么可以贡献,朋友说:

”不要再去开这样的会了。你参加一个会,那是因为你参与了某件事。如果不确定自己为什么要在场,就停下来问。如果这件事不需要你,就离开。不要从头到尾都静静地参加一个会,要把自己当成负责人,大家会相信你的。“

从那时起,他从没有一声不发地参加会议。他确保只参加那些需要他参加的会议。


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK