因为工作的关系,最近面试了很多软件架构师,遗憾的是真正能录用的很少。很多候选人有多年的工作经验,常见的框架也玩得很溜。然而最擅长的是“用既定的技术方案去解决特定的问题”,如果遇到的问题没有严格对应的现成框架,就比较吃力。这样的技能水平或许适合某些行业,但很遗憾不符合我们的要求。
软件架构师到底应该做什么,又为什么这么难做好,这都是近来的热门问题,我也一直在和朋友们讨论。正巧,最近我看完了新鲜出炉的《微服务设计》,所以大概可以谈谈自己的看法了。因为这类问题比较抽象,也没有统一答案,我努力尝试把思路整理清楚,把表达变得流畅。最终有没有讲清楚,说的对不对,欢迎大家给我留言。
Continue reading 微服务与架构师
最近的面试中我发现一个很有意思的现象。问“还记得数据库范式吗?”,大多数工作了几年的开发人员都答不上来,但是其中大多数人会补充说“虽然我不记得范式了,但我可以保证自己设计的数据库肯定都是符合范式的”。
身为技术人员,大家都知道逻辑的重要性,那么逻辑的结论就是:范式这东西完全不重要,不记得了也不妨碍使用,而且不会出错。这种结论似乎有点不合逻辑,所以有必要专门谈谈范式。
Continue reading 浅谈范式
最近有好几个朋友同事问我,一直都在做软件开发,想做软件架构,要如何入门呢?我从一些提问里感觉到,架构有时会被一些人理解为《葵花宝典》、《九阴真经》一类的秘籍,功力不到绝不能碰,功力到了才能专门修行。
可惜这种认知是不对的。架构的工作虽然比开发复杂,但脱胎于开发,它与开发之间并没有绝对的界限。即便只是做开发,也不妨碍你积累架构经验,从架构方面理解和看待问题,而这些,都是未来成为专职“架构师”的必要积累。所以,我现在尝试回答“做软件架构该如何入门”的问题,为各位正在做开发,但未来希望从事架构的同学们提供几点参考意见。
Continue reading 做软件架构该如何入门
2014年,我接连失去了两位亲人。
年初是奶奶去世。当天是过年期间,正轮到我家做东,与母亲这边的亲戚齐聚。午饭的菜肴刚刚上桌,忽然一个电话从医院打来,父亲神色凝重地匆匆赶去。过会儿他打电话来说,奶奶去世了,你们赶紧来。于是我和母亲私下托舅舅招呼大家,匆匆赶去医院。
我还记得当天从医院出来,各位亲戚去看爷爷。他看到来了这么多人,忽然意识到什么。等到一位长辈真的把消息告诉他,他掩面长叹一声,半晌没有说话。于是奶奶就这么去了,之前她已经瘫痪在床六七年,我们潜意识里大概知道,声音洪亮、做事麻利的奶奶,终会走到这样一天。
Continue reading 时间的敌人2016
上海的很多朋友可能已经知道了,最近我们(沪江)正在大力招聘架构师和Java工程师。招人过程在紧锣密鼓进行的同时,我们内部也在不断总结数据,收集反馈,提高效率的同时尽力照顾候选人的感受。
我们也注意到,候选人的部分反馈是比较有共性的。经过仔细分析,我们确认这些反馈是可以理解的,但是我们更确认在技术招聘中必须有所坚持,最终才能得到好的技术团队和系统。所以今天我想“私器公用”一把,讲讲我对技术招聘和技术人员成长及评价的若干观点。
Continue reading 技术招聘的若干问题
小时候经常在一些杂志上看到“偷懒读书法”,说的是某些身居高位的人很忙,没时间读书,又不得不读书,于是就安排手下人读完了给他复述书的主要内容,或者是摘抄重要文字出来做成“精编版”,这样读书的效率就高很多了。
这样的描述让我印象深刻,而且羡慕不已:我们读书读得再快,终究得一段段一页页地看过来,怎么样也比不了人家直取精华的待遇。这样比下去,大家的差距只会越来越大,这可怎么得了。
这个问题也不难解决:能享受这种待遇的毕竟只是少数人,大部分人还是得自己读书的,所以即便不公平,对大部分人来说也还是公平的。这样一想,心里也就平衡了。加之我仔细观察,发现大部分有学问的人都不是这样读书的,心里就更平衡了。
不过最近的情况似乎有所改变:一方面,越来越多的人反感“一本书里翻来覆去讲同样的道理”,不耐烦“几句话就能说明白的道理,何必读一本书”;另一方面,有些人、有些媒体,大张旗鼓地宣称“我替你读书,你只要听我的就好了”,并且讲得还挺像那么回事,真的让许多人相信,读整本书不再有必要,让人替你读书,自己只要听听这些“精华论述”就好了,效率反而更高。
刚开始和这些追求“读书效率”的人打交道,觉得“他们怎么可能知道那么多事情,那么多理论”。然而不久就会发现,这种“效率”未必真的站得住脚,对那些知识,他们也不过是“知道”而已,真的要分析点新问题,或者遇到相反的观点,不是左支右绌,就是进退失据。这种状态,只适合夸夸其谈,距离“掌握”还差十万八千里呢。
Continue reading 让别人替你读书,哪有这样的好事
之所以写这个话题,是因为最近见了不少的分享,觉得甚为惋惜。这些分享的演讲者往往有很多的积累,在某些领域确实掌握了非常多的知识,也非常真诚,希望把自己掌握的知识和盘托出。可惜的是,分享的效果往往不如人意,哪怕听众本来对这个话题有兴趣,真正聆听的时候也感到枯燥乏味,因而意兴阑珊,听完之后一头雾水。
问题出在哪里呢?在我看来,问题出在演讲者没有重视“演员的修养”。
什么是“演员的修养”?很多人听到这个词会有朴素的想法,觉得无非是虚头巴脑的伎俩,刻意把真实的自己藏起来,巧言令色,迎合其他人的喜好。这种作派对于分享和演讲,真的有什么帮助吗?
确实没有什么帮助。但是,这并不是演员的修养,因为演员的修养包括更重要的内容——移情,也就是放弃自我,进入另一个角色,用完全不同的方式来思考和行为的能力。
Continue reading 要做好分享,需有演员的修养
“全站HTTPs”俨然成了目前的热门话题,很多网站都在摩拳擦掌要实行全站HTTPs。凑巧,我们(沪江)也在推行这个计划。
一开始大家想得都很简单,把证书购买了、配好了,相应的路径改一改,就没有问题。事实也确实如此,单个独立站点的HTTPs改造是很容易的。一旦走向“全站”,才发现事情远远比想象的要复杂,全站意味着所有资源面对所有客户端,涉及的因素异常多,网络上又没有太多资料,只能自己摸索。下面我简单讲讲遇到的几个问题,提供一些经验给大家参考。
Continue reading 全站HTTPs的那些坑
之前的《创业不等于职业生涯加成》是我根据最近的面试经历,随手而作,没想到创下了近期阅读和传播的新高。随之也引起了不少讨论,某些反对意见认为“创业并非一无是处”,并列举了创业能给人带来的技能上、性格上、思维上的各种磨练和收益。这些论据当然有道理,但是和我说的观点并无矛盾——“不等于”的意思是,不要以为你创过业,你的职业生涯就自动升华了。
说得更直接点,“创业”绝不是职业生涯中的金字招牌,单纯“为创业而创业”,很可能结果是头撞南墙、遍体鳞伤,却无甚收获。这次我把话题说更详细点,希望理解的人更多,误解的人更少。
前段时间一个工作不久的朋友跟我说,离开了某创业公司,才觉得之前的同事都很苦。他们做的是大量重复性的劳动,却是公司业务发展不可或缺的支柱。但是,公司完全是出于“降低劳动力成本”的考虑在安排这些同事的工作,低廉的待遇,超长的加班时间,唯一能维系大家的,就是公司创始团队对牺牲精神的强调,以及不断吹嘘的愿景,当然那些诱人的长期回报从来都只是若隐若现,没有扎实的落地措施。
Continue reading 再谈创业不是金字招牌
面试,无论对哪家公司来说,都是件重要的事。
因此许多公司很重视面试,制定了面试规范,以及对面试官的一系列要求,网上关于面试礼仪的文章更是汗牛充栋。然而,很多面试的效果仍然不够满意。最显然的表现是迟迟没有找到合适的候选人——尽管他们本来合适的,更糟糕的是没有给候选人留下好印象。在这个“人人都有麦克风”的时代,这种印象很可能通过面试官和公司意料不到的渠道传播出去,造成一系列的麻烦。这种情况,相信是任何公司都不愿意看到的。
要如何避免这种问题?怎样才能真正把面试做好?在我看来,规范、技巧、礼仪都不是最重要的,最重要的是公司对待人才的态度,具体落实下来就是面试官的态度。如果面试官能做到“正心诚意”,面试的效果通常不会太差。
正心诚意,用直白的话说,就是两个词:尊重、诚恳。
Continue reading 正心诚意,当好面试官