如何进入一个新领域

周末下午,阴雨连绵,北大燕园。

自己也没想到,项目进展的如此迅猛,事情来的措手不及,伙伴们还在加班鏖战。但是,承诺的,还是要做到。更何况,这是好友海峰提前半月就约定的,最终还是参加了4.21 这次沙龙的分享,尽管心中对伙伴们很是歉然。

这一次分享的主题是——如何进入一个新的领域,按规矩从自我简介开始。

作为一个半吊子全栈工匠,一枚二十多年的老码农,有过三次世界500强的从业经历,参与过四家创业公司,几篇铅字短文,几次会议分享,在一个生态环境中投入过7年时间,杂乱的学了8种编程语言,署名九项国内外专利,《深入分布式缓存》一书的作者之一,右图就是本公众号。

主要按照 what->why->How->Do 的次序分享本次的内容。

按照我们思考的习惯,先要定义,也就是明确问题的边界。

为了简化起见,可以从业务和技术两个维度结合“新”来粗略地界定新领域。在这里,只有原技术实施于原业务没有定义为新领域。进入一个新领域包含换工作岗位,却远不局限于此。

为什么要进入新领域呢?

个人认为,主要有两个原因,第一个是“人在江湖,身不由己”。从业务上看,是组织的需要,不论业务转型还是多元化经营,都可能安排我们进入新的领域。从技术层面看,可能原有的技术满足不了技术的需求,或者对历史遗留技术债务的偿还,也可能是我们进入一个新领域。关于技术债务,可以参见一下老码农看到的技术债务

如果说组织需要我们进入一个新领域是被动的,那么由于个人追求进入一个新领域就是主动的。主动进入一个新领域可能有三个原因:

  1. 出于乐趣和热情,对自身技术的追求和完善
  2. 出于对财富的追逐,“君子爱财,取之有道”,这也没什么不妥
  3. 出于对技术或产业趋势的自我洞见

前面,秦金卫就提到了自己对趋势的见解。自己在5年前,也将互联网的技术趋势不知深浅的分为3个: 可信的网络,安全的网络和无所不在的网络。这也是自己目前从事IoT领域研发的原因之一。

如何在一个新领域中地位自己呢?

个人觉得,大概是“知人者智,知己者明,知己知彼,百战不殆”。

对于一个新的领域或者行当,从业务上看,要了解其功能特点和业务场景,简单的说,就是认知这一领域解决了我们生产和生活中的哪些问题,这些问题的边界在哪里,这很像我们了解的《领域驱动设计》。从技术上看,要考察具体实现中的核心组件与核心技术, 进而了解实现过程中的关键路径。

认识自己不是一件容易的事情。每个人都可能高估或者低估自己,而且是高估的时候比较多。对个人而言,尺有所短,寸有所长,认识自己技术栈中的优势和劣势。更重要的是,明确自己的志趣所在,明确自己的目标和期望。

在初步了解了新领域的特点和自己的特点后, 可以分别为领域知识和个人的能力建一个知识体系树,然后做对比映射,这一会有助于在新领域中定位自己。

回归到主题,如何进入一个新领域呢?

个人觉得,以系统思维考虑问题,进而建立自己的知识体系,然后以终为始的方式去行动,可能更容易适应一个新的领域。

系统思维,精彩会被大家提及,那什么是系统呢?

这是维基百科对系统的一个描述,大意是:

一个系统是一个经常相互作用或相互依存的组成一个整体的项目。

每一个系统都被它的时空界限所划定,被它的环境所包围和影响,由它的结构和目的所描述,并在其运作中表达。

系统科学是一门学科,不是一介码农能搞清楚的。但是从相互作用和相互依存来看,是否可以理解成“面向接口的设计”呢?不论是系统的内部,还是系统与外部环境,交互表面都应该是优先思考的问题。

对系统中的一个重要描述,就是时空限定, 我把它理解为时空观。

从下向上,子系统->系统-> 超系统, 相当于空间结构,大致可以理解为组件,产品/服务,平台。

从左到右,过去-> 现在->未来,相当于时间维度,大致可以理解为系统的历史演变。

以架构的一种演变说法为例,单体->垂直->SOA-> 微服务,(前面秦金卫中的讲述), 从时间上来看, what is the next? 是 service mash 吗?还是 FaaS 的Serverless 架构呢, 这都是指的思考的问题。

举一个 用系统思维理解 AI 的例子。

详见老码农眼中的简明AI

构建所谓的知识体系之前,先弄清一下什么是知识体系?

这又是一个复杂的概念, 但我们可以粗浅的理解为,让每个我们所掌握的知识点联系起来,让这些知识点可以相互作用和相互依存,并用时空的方式给予表达。知识不再是孤立的点,而是线,面,体。

这是我过去对全栈技术栈的一点设想,尽管全栈泛滥,且充满争议。

左侧是从空间构成上的理解,右面是时间和效率方面的理解。具体可以参见我的两篇旧文全栈的技术栈设想再谈<全栈架构师> 一文

另一个例子是缓存。

缓存是拿空间换时间的艺术。传闻,互联网有两大神器,一个是缓存,另一个就是消息队列。关于缓存知识体系的构建,我负责任地推荐我们合著的一本书——《深入分布式缓存:从原理到实践》。

最后,举一个嵌入式领域的例子, 对于便携式设备而言,大家经常会讨论的一个问题——功耗。

金字塔是一种很有用的建模方式,或者说系统思维的方法,对于非技术领域也是如此,比如,马斯洛需求层次理论中的金字塔。关于功耗的详细描述,我准备单独立文描述,这里不再赘述。

最后,谈谈以终为始。

架构的原则有很多,个人觉得,以终为始是非常重要的一条。要知道系统的目标是什么,要理解理想状态是什么,并按照目标去预测和实践。

图中的九个方面来自于《创新算法》一书, 在10年前读此书时被深深震撼。关于这九个方面的详细描述,可以参见面向全栈的技术管理 一文,那是过去的一次分享的内容。

在问答过程中,出现了一些有趣的环节,例如,答非所问,还有人再次问到我在初入职场时的经历, 我又讲了那个故事,即三本书影响一个人

附:这是饿了么与北大开源协会(组织者是邬老师的学生)举办的技术沙龙,有视频回放:http://www.itdks.com/eventlist/detail/2072

原文发布于微信公众号 - 喔家ArchiSelf(wireless_com)

原文发表时间:2018-04-22

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Java学习网

技术团队负责人应该具备怎样的能力

技术团队负责人应该具备怎样的能力 正好写2015年终总结,其实今年不太想写的,但是公司层面要求有个人总结要弄,写了个开始就情不自禁多写了一些,谈谈这方面的总结...

3136
来自专栏java一日一条

让程序员/技术主管/项目经理最可怕的事情是什么?

到现在我已经专业地构建软件超过10年时间了。我热爱我的工作,并且我希望能在这一行一直干到成为老程序员的那一天。一路走来,我遇到过很多可怕的事情,让我觉得我的工作...

1431
来自专栏姬小光

深度好文 | 你一定不知道,微信里竟然有这么多赚钱的路子 ...

现如今的微信,已经远远不止是社交工具了。有人说微信正在变成操作系统,承载了各种应用,吞噬了用户大量的时间。其实,不管微信本身发展成什么样子,在这个月活超过 10...

1.9K2
来自专栏WeTest质量开放平台团队的专栏

腾讯WeTest助力游戏不再负重安全压力

根据CNNIC第42次《中国互联网络发展状况》调查显示,截至2018年5月,我国市场上监测到的游戏类移动应用程序数量为152万,避开版号审批等问题不谈,总量依然...

962
来自专栏机器之心

业界 | Stack Overflow 2018开发者调研结果公布:DevOps和机器学习行业收入最高

选自Stack Overflow 机器之心编译 参与:路雪、黄小天、刘晓坤 近日,Stack Overflow 公布了其第八次年度开发者调查结果,这次参与者超过...

2796
来自专栏北京马哥教育

大数据的核心价值到底是什么?

? 作者:王喆 链接:https://www.zhihu.com/question/23273263/answer/65433220 先说结论:大数据的终极...

3095
来自专栏微信终端开发团队的专栏

今天不讲技术的事情了,讲个最近让我有些纠结的事

4436
来自专栏PPV课数据科学社区

如何从一开始就设计好数据分析的基本框架

【引子】 Porterfield的最新创业项目是Looker,一个商业数据分析解决方案提供商。主人公在下面这篇文章中向我们讲解创业者们如何可以从一开始就设计好数...

3147
来自专栏无原型不设计

使用Mockplus的九大理由

简洁高效,是它的主要产品特点。 关注设计,而非工具,是它带给设计人员的理念。 1.不为工具所累,关注设计而不是工具 Mockplus超级简单,但是功...

2973
来自专栏祝威廉

Hey,Siri,帮我把服务器A的X目录凌晨五点拷贝到B服务器上

人无法从海量的语料中学习到规律,但是语料经过数学化后,经历深度网络,网络的的节点通过某种群体行为能够记录下这种规律,从而在新的数据到来后,能够用这种隐藏的规律进...

876

扫码关注云+社区

领取腾讯云代金券