七牛云首席架构师李道兵:要怎样努力,才能修炼成一个架构师?


架构师是怎样炼成的?怎样在技术团队中快速做到脱颖而出?架构设计有哪些要求和方法论?一起看看EGO会员、七牛云高级副总裁兼首席架构师李道兵在InfoQ视频直播节目大咖说中讲述的个人经验。

作者|李道兵


编辑|小智


未来是不是人人都要学习编程?

很久之前有一部电影叫黑鹰坠落,里边有一个场景是一个打字员在那儿说,因为我会打字,所以我不用上前线。这事放在现在看就比较搞笑了,毕竟现在绝大部分人都会打字。我觉得在未来,编程会像英语、电脑一样是一个很通用的技能。首先是编程的门槛越来越低,从 Fortran, Pascal, C  到 Java, Python,编程语言其实是越来越简单的,即使你不是专业的软件工程师,学会用 Python 写一些简单实用的脚本其实也是一个很轻松的事情,更何况还有 Excel, IFTTT, VBA 这类更简单的工具。

另外,未来的工作对编程的需求也越来越强,你需要做更多自动化的工作,你需要把大量的不同来源的数据串起来完成你的工作,编程会成为你最趁手的工具。最后,我觉得编程是一种很好的逻辑思维训练方式,毕竟任何诡辩、欺骗和逃避的非理性的手段,在编程面前都是走不通的。

从化学专业转到软件是什么感受?

软件是一门很特殊的学科,首先是学习编程的成本很低,你只需花两三千元买一台电脑就够了。如果自学物理、化学、生物,你就得有一个价值不菲的实验室。其次是软件的反馈很快,你有一个新的想法,快则半个小时,慢则一周就能验证你的想法是否有效。而在化学领域,你能在一个月内验证完一个想法就已经谢天谢地了。

这个学科另外一个好的风气是分享交流极度地开放,各个软件公司都非常乐于分享自己的技术、自己遇到的问题和解决方案。这对于传统行业是很难想象的。

这样带来最大的好处是只要你想学,你愿意投入你的时间、精力和意志,那么你就很有希望在这个领域做出成就。

对于我来讲,我是因为高中时化学竞赛保送上了大学,就直接选了化学系。其实我在高中的时候就开始接触编程,也对它很有兴趣,只是苦于没有电脑,也没有足够的时间能花在上面。到了大学之后,我就把自己的大部分业余时间都扑在上面了,只是因为不舍得保研的名额,又继续上了学校的研究生,不过根据自己的兴趣,选了计算化学方向,研究的课题应该可以归到计算机辅助药物设计领域。

在研究生阶段,我比较自豪的一个成就就是教会了几乎所有同学用 Python 来编程,加速了很多日常工作。不过有点可惜的是,我最后没有拿到学位,就离开了学校,开始了自己在软件行业的第一份工作:金山实验室。

年轻程序员如何成长?

我一般会把程序员分为初级、中级和高级。他们的区别在哪儿呢?初级可以在别人的指导下完成工作,中级可以独立地完成工作,高级不仅仅可以指导别人的工作,而且可以很好地提炼自己的方法论,用这些方法论去影响别人,帮助他们成长。而架构师,他更多的职责则应该是确保一个项目不会因为技术的问题而失败,比如是不是伸缩性不足导致大量用户涌入时支撑不住、灵活性差导致功能很难添加,设计过于复杂导致开发持续延期,技术选型错误导致成本和稳定性出现问题,等等。

我们公司采用了 buddy 制度,简单来说就是任何一个新员工入职,都会指定一个 buddy ,在入职的前三个月,你不管什么事情都可以问他,这个制度对新员工快速平滑地融入团队帮助很大。如果你的公司没有这个制度,你可以考虑跟你的上级申请一个 buddy, 你的 buddy 也许很忙,那么你可以考虑一下定期(比如每天中午花半个小时)跟 buddy 核对一下之前遇到的问题。这些都是可以让你快速融入团队的办法。

一般过了 2 年左右,很多人就不再能直接从项目或者周围的同事身上获得成长了,这个时候一个比较好的手段是跳出现在的圈子,多参加一些本地社区的活动,多参加 QCon 这类的技术会议(当然看直播或者视频也行),看看这个也就的标杆长什么样,他们在解决什么问题,他的知识体系有哪些是你缺少的。我很认同的一句话是“参加会议的目的不是为了学到什么,而是为了知道要学习什么”。找到一个好的标杆,相信你在职业生涯的前面 5 年会一直快速成长。

如何在团队中脱颖而出?

方法其实很多,每个人都可能有不同的选择,甚至说在不同的团队,你的做法也可能会不一样,下面仅就个人的经验讲讲我自己的看法:

首先一点是要把手边的活做扎实,如果这点做不到,你的意见比较容易被人轻视和质疑。

其次是要经常参与项目中的设计与技术相关的讨论,勇于发表自己的意见,但这个时候要学习一些讨论问题的常识,比如说对于别人的方案,要先去接受而不是拒绝,然后从两个方面去考虑,一方面是这个方案有什么漏洞,礼貌地提出潜在的漏洞,等待对方抛出他的观点。另外一方面这个方案有什么可以延伸或者扩展的地方,是否可以根据对方的方案抛出一个更好的方案。对于自己的方案,不要过于强势,毕竟很多事情一个问题有超过一个正确答案,自己的方案没选上也要有平常心。

对于团队来讲很重要的一点其实是担当,也就是你是否愿意为某个小项目整体来承担责任,当然这也意味着你需要再代码之外做很多事情,包括很多沟通、妥协和持续跟进的事宜。这一点对于那些有志于在管理或者产品方向有进一步发展的人尤其重要。如果你在很多事情上表现出不错的担当能力,相信你的上司一定不会埋没你这种人才。

如何做好架构?

从我自己来看,我觉得我把自己定位从开发转为架构的一个时间点在于,我不再是在寻找一个问题的答案,而是在从问题的一堆答案中评估哪个对我们更合适,这个时候我感觉到我已经能充分驾驭这个问题,而且也有信心来面对未来更多的挑战。

如果你要走架构这条路,我有如下的几个建议:

首先是要多读一些书,其中最基础的是类似于重构和设计模式这种书,你需要知道很多小尺度级别上的问题解决技巧(如果你要做导演,你首先要做得是能熟练地把一个句子翻译为一组镜头),以及这些作者梳理问题的方式,反过来问一下自己,如果让你来写设计模式这本书,你有哪些知识点可以写?你如何组织这些知识点?如何让大家接受你的观点。

看完这两本书之后,非常推荐你看一下 Martin Fowler 写的《企业应用架构模式》和 Eric Evans 的《领域驱动设计》这类书,他能扩大你的视野,专注于更有意义的问题,而不是设计模式究竟有多少种这种缺乏意义的问题。有一句话叫,“如果要成功,就要远离那些廉价的娱乐”。类似的,对于软件工程师来讲,要想让自己更强,就要远离那些廉价的争论(vim vs emacs, linux vs unix, redhat vs debian, 这些争论其实并没有太大的价值)。

其次,你要对大量开源软件的实际特性有深入的了解,容量究竟多大?高可用怎么做?如何扩容?是否易维护?这些知识部分来自网上的各种测试和经验文章,部分还要来自你的亲手测试。作为架构师,你的每一个技术选型都是在挖坑,给你的开发、测试、运维团队挖坑,而你的作用之一,就是保证你的团队能够在你的帮助下从坑里走出来。

另外,要解决很多大尺度的问题,你需要从很多同行去吸收经验,我个人的经验就是,阅读每年两次 QCon 和 ArchSummit 架构相关的幻灯片,先只看题目和问题部分,自己想一想解决方案是啥,然后再看一下演讲者给出的解答,通过这种方式来淬炼自己的思维,丰富自己的工具箱。我想提醒的一点是,由于软件行业还远不成熟,所以一个架构师会长期跟进一个项目,这就导致了一个架构师如果不主动去练习的话,一辈子也做不了几个架构,至少相对于建筑专业的结构工程师来讲,我们每年的项目缺少少很多。你做的架构越少,你就越容易自满。

最后,我希望你是一个终身学习者,不管多忙,一定要规划你的学习时间,一个星期也许不用太多,几个小时即可,但这几个小时一定要用在刀刃上,所以最好是哪些需要几十个小时甚至更多时间才能弄清楚的课题,而且一直要坚持到这个课题结束。千万不能是学一点这个概念,遇到新事物,就马上转移方向。如果你有这样的习惯,我建议你先把新想法放到一个池子里,等手边的课题学习完,再到池子里边捞一个新课题来继续学习。不过关于学习,这个是一个很大的话题,就不在这儿阐述了。

多谢各位。

极客邦旗下的高端技术领导者社群EGO,汇聚全国400余位技术大牛,链接技术圈顶级资源,提供闭门会议、主题论坛、在线社群等丰富的学习交流形式,助力技术领导者开拓视野、提升能力、解决问题、达成合作,精准把握时代脉搏!

9月1日至9月15日,EGO会员招募季限时开启,点击阅读原文查看详情。


始发于微信公众号:EGONetworks

通过「BeePress|微信公众号文章采集」WordPress 插件生成

中国海军刚刚在印度洋结束军演,印度就宣布撤军了


8月28日下午14时30分许,印方将越界人员和设备全部撤回边界印方一侧,中方现场人员对此进行了确认。中方将继续按照历史界约规定行使主权权利,维护领土主权。 洞朗对峙两个多月后,印度撤了。


印度做出了一个明智的选择,为自己留下了和平解决问题的余地。



当战争差一点就爆发的时候,我们才能更真切地感受到,“祝世界和平”并不是一句空话。和平来之不易,是需要争取的,在印度撤军前,中印已隔空交手好几个回合。


比如中印两国士兵在班公湖互掷石块事件刚发生不久,印度就又开始了新的挑衅:不仅批准了新建一条距离班公湖仅20公里的公路,还在附近的张拉山口举行了军事演习。



张拉山口海拔4000多米,据称有世界第二高的可以通行机动车的道路。在拉达克地区通向班公湖的道路上,可以看到印度军队和车辆正在移动部署。


正如我外交部所说,印度这么做感觉是在“自己打自己的脸”。一直以来,印度一直在中印边界有关问题上说一套、做一套。


不仅在陆上边界前后不一,印度在海上也是一样自相矛盾。前几天,中国海军在西印度洋上的一场演习,让印度紧张坏了。


8月24日开始,中国海军远航访问编队在印度洋西部海域,展开了一场全方位、全要素、全武器系统的实战化攻防演练,全面检验了舰艇编队在远洋陌生海域的作战能力。



据报道,此次海上演练科目多、难度大、演练海区生疏,并且还构设了遭遇导弹来袭、潜艇威胁、强电磁干扰等复杂战场环境,使演习难度大大增加,但也正是这样,才能更好的检验我海军编队在远海大洋上的作战能力,而编队也顺利通过了考验。



如此一来,紧张的就是印度了。印媒认为,这次演习是对印度发出的又一个强硬信号。


也许是重名的原因,印度一向视印度洋为自己的“后院”,但是其海军能力又配不上自己的野心,所以对进入印度洋的各国海军都满怀警惕,尤其是针对中国海军。



所以,印度海军开始临阵磨枪,极力强化对印度洋的控制。


首先就是“买买买”——印度海军抛出了巨额军购订单,向全球各大军火商发出邀标,要花费100亿美元采购234架直升机。



还有就是联合军演,7月时,美日印三国在印度洋举行了“马拉巴尔”海上联合军演。这个“马拉巴尔”演习本来是美印双边演习,莫迪上台后,又邀请日本参与进来,形成了三方联合军演,而针对的对象是谁也就不用多说了。



不仅拉拢大国,印度海军还要拉小国组队。印度将借着即将在孟加拉召开的印度洋海军论坛的机会,与论坛各参与国在孟加拉湾举行海上联合搜救演习。印度洋沿岸各国除了印度之外,的确也没什么海军强国,所以印度正好借此机会秀一下肌肉,还打算邀请那些没有大型舰艇的国家登上印度海军的航母上参观,好见识一下大国海军是怎么运作的。



好吧,印度的航母再破,好歹也是个航母。


印度洋海军论坛最早是由印度发起的,但是已经停办了好几届,现在印度又想起来这个论坛,大概是想靠着向小国秀肌肉来给自己壮胆?


其实印度这么做,更暴露了自己的心虚,同样一支海军编队,怀着不同的心态去看,自然会有不一样的结果。这次在西太平洋实弹演习的中国海军编队,是一支远航访问编队,从4月23日启航以来,已经先后与10个到访国海军开展了海上联合演练。


编队在马来西亚时:



编队在菲律宾时:



编队在巴基斯坦时:



编队在意大利时:



编队在希腊时:



别的国家都感受到了来自中国的善意,偏偏印度感受到的是强硬信号,难道不是自己有问题吗?


温馨提示:

联系邮箱:zzz-1952@163.com

欢迎来稿,选题、内容、题材不限,文章、漫画、视频均可,但必须确保是原创首发。

~“局座召忠”是张召忠教授亲自开办的微信公众号,关注国际时事热点,致力爱国主义国防教育。免费阅读,转载请注明出处。

~文末广告是腾讯平台配送广告,内容与本公众号无关,但您的每一次点击都会给我们带来一点收益。

~您的每一份支持都是我们前行的动力。欢迎投放广告,欢迎商家合作。

局座召忠

                 微信号:zhangzhaozhong45

·军品汇·

始发于微信公众号:局座召忠

通过「BeePress|微信公众号文章采集」WordPress 插件生成

全国房价涨幅地图:这一轮暴涨有多恐怖?



虎嗅注:本文转自微信公众号“房屋屋”(ID:its-home),作者:凯风。

就在几天前,国家统计局发布了一组数据:一线城市房价趋于稳定,二三线城市环比涨幅明显回落。
 
在限价、限售等政策手段作用之下,大多数城市房价趋于稳定,部分城市已经进入高位盘整。

这意味着,本轮房价暴涨已进入收尾期,是时候消化经验和教训了。
 
过去二十年,我们经历了中国房价三次大暴涨。2004年到2007年释放住房需求的疯狂,2009年到2013年四万亿的刺激,2015年至今去库存余波未了。
 
每隔两年,房价就是钱袋子的一轮洗劫,有人哭有人笑,有人暴发有人跌倒,下一次会是什么时候?

这是2017年7月全国主要城市房价行情地图:


这是70个大中城市在本轮上涨周期里的涨幅分布:


可以看出,从2015年房价开始反弹以来,九成以上的城市房价出现上涨。毫无悬念,本月房价涨幅超过40%的城市:一线城市“北上广深”四大金刚,二线城市是厦门、南京、合肥“三只王”。

仍有两城在下跌。这两个城市是锦州和丹东,都来自东北老大哥。

由于是官方统计数据,在诸多“你懂的”因素作用之下,数据可能有所失真,一二线城市的实际涨幅可能更高。

一线城市:广州涨幅没有你想象中那么小



老习惯,直接说要点:
 
1.本轮房价上涨,深圳领头羊

暴涨最先从一线城市开始,又以深圳一马当先一骑绝尘。

2014年10月,当大多数城市房价还在跌跌不休时,深圳就已率先反弹,从此一骑绝尘,开启连续两年的暴涨,在2016年9月达到最高点,整体涨幅超过70%。随后深圳房价步入高位盘整期。
 
按官方的说法,深圳房价连续十个月下跌,但按照目前数据来看,整体涨幅仅仅回落不到6个百分点,聊胜于无。
 
2.房价走势打脸“广州衰落论”

一线城市里,最不被看好的是广州,当初就说“广州房价为何涨不过深圳”,随后又喊“合肥郑州房价涨幅秒杀广州”,再后面“杭州即将超越广州成为一线城市”!

然而,房价走势却相当打脸。

虽然2015-2016年广州房价犹如慢牛上山,但进入2017年,调控尽管一再加码,限购、限贷、限卖等“砰砰”一招接一招,房价却一飞冲天。连续半年领跑于一二线城市,从中心城区到外围郊区,多数楼盘房价翻倍。
 
3.北京反超深圳,广州反超上海

2016年10月,史上最严调控出台,深圳与上海的房价开始进入高位盘整期。但北京广州,却又开启了新一轮暴涨。今年两会期间,受房地产税暂时不出台、一线城市收缩土地供应等消息影响,北京广州房价同步暴涨。北京涨幅一度超过深圳,广州涨幅则超过上海。
 
本轮上涨周期里,一线城市房价涨幅实际均超过了50%,这再次说明,一线城市作为经济基本面最良好、产业优势最突出、人口流入最积极的区域,房价上涨比二三四线城市有更好的支撑。虽然收入相对于房价已经高不可攀,但其安全边际仍然是最高的。
 
二线城市同是省会,命运大不同



与一线城市普涨不同,二线城市呈现分化态势。如果青春无处安放,请往东南沿海省份,大西北和东三省不是战场。
 
1.这三个城市涨得微妙

厦门、南京、合肥涨幅均超49%,上涨启动时间早于广州,涨幅也与广州不相上下。

不管是事实还是人为,这三地土地供应都相对紧缺。早在2016年,合肥买房就要找关系,而南京更是最早推出了限房价、限地价乃至摇号抽签买房等政策手段。过度干预,这三个二线早于与一线城市旗鼓相当。
 
2.重庆成都为何启动这么晚?

重庆成都虽然都被列为新一线城市,但房价直到2016年下半年才开始启动,而且在涨幅上仍然弱于南京杭州武汉等城。一个原因是两地在过去都有大量的土地供应,导致库存居高不下,先消耗完已有的库存,房价才会步入上涨通道。
 
3.我们正在进入强省会时代

随着经济步入新常态,过去的普遍高增速不再,强省会时代正在来临。作为集聚全省政治经济资源的省会城市,其房价上涨态势,更能代表整个省域的状况。
 
然而,东三省的经济形势一度十分堪忧。经济衰退、人口流出、重工业优势不再,虽然在普涨效应的示范之下,沈阳等地的房价出现反弹,也依然缺乏基本面的长期支撑。

三四线城市大拆大建后,谁是接盘侠?



2016-2017年,三线城市集体暴涨,虽然从涨幅上看,不可能比得上一二线城市。但它毕竟容纳了更多的人口,上扬势头如此暴烈,值得深思。
 
1.拆迁棚改的蝴蝶效应

就在一两年前,三四线城市还备受高库存之困,大多数房价都还在下跌。此番暴涨,一方面是一二线城市限购限售带来的外溢效应,另一方面则是棚改货币化改革制造出来的本地需求。

以棚改之名大肆拆除现有的住房,再以货币化补贴之名,让被拆迁者有了购房的资本。既少了原来的存量,又多了新的需求,房价哪有不一路上扬的道理?
 
2.你想不到的蚌埠

以涨幅榜第二名的蚌埠作为样本,2017年5、6、7月,蚌埠房价环比涨幅分别为3.4%、2.1%和1.2%,不仅位居全国前列,而且3.4%的月涨幅也创当地2006年以来的新高。
 
从2014年开始,蚌埠就大力推进城中村和棚户区改造,2014年和2015年合计改造面积600万平方米,简单换算约为6万户,2016年和2017年有合计改在棚户3.7万户,这意味着将近10万座棚户被拆除,而这些被拆除的棚户大多数都拿了货币化补贴,到处买房。
 
未来,或许没有未来。用大拆大建来去三四线城市的库存,短期只会制造房价暴涨,长期则因为缺乏实体的支撑,只会制造出一大批没有流动价值的不动产。被拆迁的人来接现在的库存,未来谁接他们的盘?


*文章为作者独立观点,不代表虎嗅网立场




七夕有什么好过的

More名其妙

真爱要表心意哪用等节日

单身照顾好自己哪用等时机

黄历说今日宜满减,大满减

就现在,点进来

Be Water,My Friend👇👇

始发于微信公众号:虎嗅网

通过「BeePress|微信公众号文章采集」WordPress 插件生成