毕业生
澄清一些常见的,找工作过程中,容易被误解的问题
leezy_2000
《完美软件开发:方法与逻辑》作者
展开
-
如何检查自己是否平庸?
平庸是程序员的最大忌讳。大家可以看看最近出来的软件开发者薪资调查报告(http://www.programmer.com.cn/14918/)。读过之后每个人的认知可能不同,有的人感觉我怎么赚这么少得跳槽,有的人感觉自己还可以,我个人的感觉就是上面那句话:平庸是程序员的大忌。在一个还不算老的行业里,在一个相对较高收入占比在20%~30%的行业中,没有什么比平庸更可怕的了。反倒是编程语言,数据库这类原创 2013-02-19 21:29:44 · 4540 阅读 · 3 评论 -
关于如何读代码?
读代码这事,先要分是精读还是泛读。从学习的目的来看,一定要精读一定量的经典代码。而精读是指每行都读懂,不看代码脑子里就能勾画出程序的基本结构。这里有个很形象的状态,精读代码时会满脑子都是代码,放不下,甚至睡觉前脑子里也是代码。但这一篇里主要不是关注如何精读代码的,而是关于如何在工作中掌握既有代码的,等价于泛读。 现存的很多系统往往很大,几十万行的可能也只算普通。这时候一旦加入了这样一个项目,那么如原创 2013-01-07 07:20:41 · 6400 阅读 · 12 评论 -
程序员在大学里究竟应该学习什么?
近来在CSDN结识了贺利坚老师,并仔细的读了一下贺老师的博客,感觉贺老师是非常负责的一个大学老师,在他的博客中看到了很多他和大学生的交流。这就促使我开始思考,如果大学再来一遍,我也还是想做软件,那我应该在大学里学点什么?最终我决定把想到的东西写下来,希望能对在校的人有点帮助。 首先我们得知道这问题的答案是个变量,他依赖于你的目标和天资能力,绝不唯一。当然大学的课程设置往往是唯一的,所以会有点矛盾。原创 2012-12-24 00:05:41 · 8622 阅读 · 45 评论 -
软件开发和机械制造的核心差别
我个人的经历略有一点特别,本身学的专业并不是软件,但在当年软件热的背景下,加入了这个行业。由于很多同学仍在原来的行业,时不时的沟通让我反思软件开发究竟和机械制造这类行业有啥区别。老实讲,对于毕业生而言,10年前做软件收入要比做机械制造有明显优势,但10年后的今天这种优势就不明显了。这也是触发我考虑这种问题的一个原因。软件行业与机械制造比一个很不同的特质:知识更迭频度较快。在考虑如何使自己升值时,这原创 2012-09-26 02:03:36 · 6310 阅读 · 5 评论 -
技术还是管理?
我们必须承认技术和管理所面临的问题、所需要的性格和能力皆是不同。虽然有的时候管理也被认为是一种技术,但我们更愿意把直接贡献于软件产品的工作称之为技术,而把通过协调沟通等手段间接贡献于软件产品的工作称之为管理。 从先天性格来看,有的人天生适合做管理多一点,有的人天生适合做技术多一点。 比如说:有的程序员天生有点被动,不喜欢主动学习很多东西,不喜欢与人沟通,但对工作所直接关联的领域研究较深,做事情兢兢原创 2012-09-18 23:56:57 · 5060 阅读 · 3 评论 -
为啥不招北大清华的?
前几天同一个朋友闲聊,他说了个很有意思的观点:我们不招北大清华的。 因为大家都经过高考的折磨,所以心里对考上北大清华的都还是有点敬畏的,因此就追问了下原因。他的回答很简单:我们得承认这两所学校的人非常优秀,但跑到二线城市来的大部分都不能踏实做事,招了也不能用。 他说的踏实做事这点比较能引起我的共鸣,可能也有一定的代表性。 学校本身提供了一个起点,证明的也是过去,毕业后想证明自己还是得用事实说话。但原创 2012-09-10 07:59:32 · 7547 阅读 · 28 评论 -
软件开发究竟是“难”还是“复杂”?
我一直的观点是要对“难”做一点分解。好比说航空母舰的弹射器,我们造不出来,很“难”与一台机器有一千个螺丝要拧,保证3年中所有螺丝都拧对了,很“难”,这两种场景下“难”的含义是不同的。软件开发的难度更多的类似于后者,表现为繁杂,而不是类似于前者表现为“搞不定”或“做不出来”。总是有人喜欢把问题绝对化,所以这里补充一句,软件涵盖的范畴可以很广,因此确实有很难搞定的,类似于弹射器的领域,但应该不是主流。原创 2012-08-20 06:31:35 · 6981 阅读 · 3 评论 -
技能的可流动性
近来,我发现有这么样一个现象:在某类特定环境下,越是年纪小工作年限短的,越容易流动;越是年纪大的,越稳定,但相应的会焦虑。同周围的人做了些交流后,感觉这也不能算是一种个案,还是有一定的代表性,因此就想做一点分析。个人感觉上述这一现象可以用软件开发技能的可流动性来解释。从可流动性的角度看,越是通用的知识,可流动性越好,越是专门的知识可流动性越差。比如说:开发语言,在当前市场环境下,任何一门主流开发语原创 2012-07-02 00:08:24 · 6042 阅读 · 15 评论 -
程序之外的一点点理财知识
年青的时候最大的资产就是时间,所以最关键的理财就是如何投资自己,这点毫无疑问。但在此之外,倒也不能说是什么事也不用做。为了收益最大化,还是要有一点点理财知识。了解这些知识不用花什么时间,但多少会有点收益。因此,我在这里做一点总结,以供参考,但绝对不为任何因此而产生的结果负任何责任。l 算算买第一套房子的收益率很多地方房价高的离谱,如果说彻底让人绝望了,那就彻底不用理它。但是如果可能买的起,还有点犹原创 2012-06-04 00:58:15 · 5392 阅读 · 4 评论 -
选择公司的智慧
假设说一个人最终可以到达的高度和努力,能力,机缘都有关系,那么选择了那个公司则是机缘中一个很关键的影响因子。也即是说在同等努力程度下,选了那个公司,大致决定了可以达到的高度。选公司就和买股票一样,你也可以闭着眼睛瞎选,未必就不能找一个还算合适的公司,但从几率上讲,分析了基本面,选好的可能性就更高一点。选公司前,要先给公司做个分类,这很关键。有的公司是成长型的,有的公司则是稳定发展型的,有的公司则是原创 2012-05-21 00:30:00 · 5790 阅读 · 12 评论 -
学习中的悖论
如果非让我找一个最能说明现在的软件开发和10年前的软件开发相异的地方的话,我想应该是知识在量上的爆炸。在软件行业里,制造知识的速度远超可能的学习速度。夸张点讲,今天在软件世界里应该没有全才了。如果不信,可以看看下面从Wiki以及TIOBE上拷贝的列表。在当下,你很难即做内核驱动也精通css,即精通后端也精通前端,即开发数据库也开发数据库应用。当然终究是有些东西共通于各种技术之间,比如设计原则,模式原创 2012-05-14 00:01:52 · 5878 阅读 · 13 评论 -
从一生的角度看程序员的学习和发展
很多人谈学习和发展的时候,往往忽略人的先天自然条件,在这里我们从这个视角切入,来探讨一下程序员一生的可能轨迹。如果把程序员的人生分为三个阶段,那么他们是:毕业~30岁:这个时间段里,大多数人无牵无挂,家里面父亲母亲不用太操心,也没娃,可能会犯愁找不到老婆或老公,但基本上自由时间较为充沛,身体比较健康。算是上升时期。30~45岁:这个时间段大多数人处在上有老,下有小。父亲母亲可能需要较多照顾,倒霉的原创 2012-04-15 23:57:49 · 20628 阅读 · 53 评论 -
开始工作后,一个人会失去什么?
程序员这个群体有一个典型的特征:那就是【技术能力】大多时候和【以自我为中心的程度】成正比。具体表现形式可能是目中无人,也可能是特立独行,诸如此类。但实质上,以当前的情势而论,大多时候一旦你选择打工,而非创业,大致上也就失去了目中无人或特立独行的资格。毕业生首先需要的是适应环境,而非是指望环境来适应你。这里的环境就包含了身边可能有点落伍的技术,可能有点繁杂的“人”“事”,可能有点愚蠢的规章制度,可能原创 2012-04-11 00:15:54 · 5844 阅读 · 10 评论 -
软件开发人员的“七重苦”(2)
(接前一篇,继续)第五重:技术变化快,积累上不去设想一下,一个10年前的高手,这10年他什么也不学,那他今天会是什么样的一个状况。我个人估计是快被淘汰了。这是个极端的例子,但回顾一下软件的发展历程你会发现,新技术的出现是爆炸式的。在DOS的时代里,软硬件的距离非常近,你只要会一种语言,了解基本算法和数据结构,再了解计算机硬件的知识,你就可以写大部分的程序。接下来软件和硬件间的层次越来越多,Wind原创 2012-02-07 00:40:55 · 16751 阅读 · 32 评论 -
软件开发人员的“七重苦”(1)
软件开发这个行业无疑的是有快乐的,但这篇文章里,我们先不关注他,而是要来看看那些让人痛苦的地方。有时候想想,人作为一种生物还是挺有意思的。快乐的东西快乐过了,也就忘了,记的牢的的反倒是些让人不快乐的东西。 第一重:垃圾代码佛家总讲成住坏空,软件亦莫能外。唯一有点特别的是,软件“住”的阶段短,“坏”的阶段来的快。要想软件保持不“腐败”,其实要花的精力远比想的多,这导致在商业利益比较强势的世界里,大多原创 2012-02-06 00:06:51 · 22608 阅读 · 37 评论 -
【毕业生】简历究竟应该怎么“写”?
工作中感觉,在很多要毕业的同学身上有一个矛盾的地方:一方面怕找不到工作,自费参加培训,辛辛苦苦四处投简历;一方面又不大练习写程序。这实际上是舍本逐末,从一生的角度看,很容易让自己的价值变成负的。人的简历不是写出来的,而是做出来的。对于毕业生而言,简历中关键的就那么几点,看的人也就看那么几个点:(也就是说美化个人简历这种工作几乎毫无价值,当然你不能有错误和乱糟糟)成绩如何? 这个可以包含课内成绩(尤原创 2012-01-09 00:32:22 · 5624 阅读 · 15 评论 -
国内知名产品和他们的开发语言v0.0.1
首先要声明的是:这个列表既不权威,也不全面,所有信息仅供参考,本人也不对由此导致的任何后果负任何责任。建立这个列表的初衷来自三个方面:一个是很多人在加入程序员这个行业前,需要对编程语言有一个大致的认知,一定程度上这对学生很关键。一个是如果有人要从头开发一个产品终究需要类似的信息做些参考最后一个则是自己的好奇心,在看了国外那张表后,我自己也挺想知道国内的状况究竟是什么样。编程语言是程序员必备诸多技能原创 2011-12-19 01:36:40 · 37291 阅读 · 171 评论 -
C++的精英化趋势与两个关键缺陷
精英化趋势C++是一门引起无数争议的语言。眼下最常听到的声音则是C++将趋于没落,会被某某语言取代。我很怀疑这种论调的起点是商业宣传,C++的真实趋势应该是越来越倾向于精英化。精英化是指在可用可不用C++的领域中,C++将逐渐退出,而所有剩下必须用C++的领域通常都是附加值比较高,难度较高的领域,比如:操作系统,数据库,大型网站后端等。这一过程造成的现象就是在TIOBE上,C++的份额逐步下降。但原创 2011-12-14 00:06:44 · 39799 阅读 · 105 评论 -
【理想流】程序员的性格和命运
性格决定命运,程序员亦莫能外。性格影响机缘有无,影响才情发挥,影响努力深浅,最终影响人生之结局,是人这一生里可以把握,又往往被忽视的因素。在这里,我们来试着对程序员的性格和可能命运做一归结,当可为有心则戒。绵羊型的程序员这类型的程序员每天有点糊涂,也不知道应该干点什么。不是很有上进心,安排干什么都行,但会因为小糊涂或不用心偶尔犯犯错误。除非家境很好,要不然绵羊型的程序员其实有点危险。公司如果严苛,原创 2011-11-28 00:06:18 · 23148 阅读 · 82 评论 -
【毕业生】资历与跳槽
资历即是常说的论资排辈里面的“资”。刚毕业时,大多数人会对“论资排辈”这样的事情很反感,也就忽视了其背后的力量。而跳槽本身,对资历的损伤最大,如果没有可见的东西(职位提升,明显的收入增长等)做弥补,就会得不偿失。在进一步展开这个话题前,先来看两个小故事:故事1:在某个国内知名公司内,据说在一段时间内,Title没有工号作用大,工号10000内的人发起信来立刻有人回,某某职位的人就不好说了。故事2:原创 2011-11-14 00:02:58 · 23427 阅读 · 46 评论 -
【毕业生】公司间的食物链
一说到食物链很多人一定会想到狼吃羊,羊吃草。是的,我们说的就是这个。公司间的食物链虽然不像自然界那么血腥,但确实存在。至少这是影响工作和发展的一个很重要的维度,不考察是对自己不负责任的。商业社会中的食物链可以做简单理解:付钱的在食物链上端,靠别人给钱的在下端。垄断的或接近于垄断的在上端,被垄断的在下端。比如说:公司A把业务分包了给公司B,那么公司A在食物链的上端,公司B则在下端。比如说:公司G占有原创 2011-11-06 16:02:44 · 8124 阅读 · 9 评论 -
杀人不见血系列之一:青春饭陷阱及对应
#青春饭这现象其实很凄惨。#大好青春,挑灯夜战却换来两手空空,满头白发,即对不起老婆孩子,也对不起老爹老妈。#谁也受不了。#这是真的杀人不见血。写篇文章为苦闷中的人提点建议吧!这世上有些基本规律在限定条件下不容违反,比如辩证法,比如万有引力定律。而其中和大多职场中人直接相关的一条则是价值规律。这条规律可以简单描述为:当一个人自身的价值和他的酬劳明显不相匹配的时候,这个人最终将被淘汰。在中国,过去很原创 2011-10-13 06:23:20 · 10793 阅读 · 21 评论 -
【毕业生】外包公司适合你么?
#如果有人听了本文的观点,但后果不太好,那本人也负不起责任。#所以听或不听,请君自决。虽然没法知道究竟多少人会进外包相关的公司,但估计比例不低。因此花点时间说说外包。很难笼统的讲外包好或不好,但如果你是技术狂热者,或性格极度内向,做外包就有点不适合。简单来讲是,做外包时,技术上职业路径没那么长,为求发展,必须做管理,必须学着和人沟通。外包出来的东西总体来看,技术含量偏低,但涉及的面可能很广。形象的原创 2011-11-03 20:13:00 · 11798 阅读 · 12 评论 -
【毕业生】找工作的原则
#如果有人听了本文的观点,但后果不太好,那本人也负不起责任。 #所以听或不听,请君自决。 有时候会被问到找工作的事,写点东西给即将毕业的同学参考。毕业生找工作首重方向(即行业)。 公司错了可以换,收入低了可以搏,方向错了,转起来代价太大,甚至没法转。 男怕入错行就是这个意思。 软件听着是一个行业,但里面的分野太大,和不同行业也差不多。 比如:网站开发和驱动程序开发几乎是两个行业。 这里的关键是一旦原创 2011-11-01 01:02:39 · 11870 阅读 · 33 评论