京东架构师告诉你:一个优秀的架构师应该具备什么能力?

对于一个优秀的程序员来讲,学习和思考是贯穿整个职业生涯的事情。在日新月异的人工智能时代,越来越多的程序员重视自己的技能的提升。其实我一直认为,知识是能力的基础,而思维则是行动的先导,一个人事业上能获得更大的发展,一部分是由于他的专业技术,另外一大部分需要依赖他的软性技能。如果把专业技能称为硬实力的话,逻辑思维/解决问题的能力,书面沟通能力,领导力统统归为不可或缺的软实力范畴。在越来越多的技术课程涌现的今天,很少人去重视思维养成对于技术精进的重要性。鉴于此,胡峰老师在极客时间开设专栏《程序员进阶攻略》他目前在京东成都研究院承担咚咚产品线技术架构工作,同时领导研究院技术委员会,负责人才识别,晋升选拔,关注人才梯队层次建设和个人成长发展。 

\\

4ef2a53d212cfd978a00a54a85c1faed.jpg

\\

胡峰老师结合他自己的成长知识体系的演进过程,将技术人员的知识体系构建总结成以下四个维度“点—线—面—体”。

\\

\\

进入任一领域,都是选择从一个点开始的。

\\

444e66263e4b0cd47d7f9506b07cc4fa.png

\\

上图是胡峰老师从大学进入软件开发领域的一系列的点,按时间序列排列。老师入行的年代,流行的是 C/S 架构的软件开发模型。当时客户端开发三剑客是 PB(PowerBuilder)、VB(VisualBasic)和 Delphi,所以便顺势选了其中的一两点,开启了程序员生涯。

\\

没过两年陆续 B/S 架构开始流行,逐步取代了 C/S 架构。只是因为研究生时学校开了一门面向对象语言课,Java 做教学语言,后来就成了一名 Java 程序员,只是因为 Java 的生命力特别旺盛,所以也就延续至今。

\\

早些年,前后端还没太分离时,因为项目需要,所以又去涉猎了一些前端 JS 开发,之后移动互联网崛起,又去学习了些移动开发的东西,再之后就是 ABC(AI 人工智能、Big Data 大数据、Cloud 云计算) 时代,又被潮流裹挟去追逐技术的浪潮。

\\

每一个技术点,看似只是一种被趋势推动的一次次无意选择。有些点之间有先后的承接关系,而更多点都慢慢变成了孤点,从这片技术的星空中暗淡下去。

\\

线

\\

当形成的点足够多了后,一部分点开始形成线,而另一些点这在技术趋势的演进中被自然淘汰。

\\

bc0d984cce6ffa381bdc8df5594c3020.png

\\

如上,胡峰老师用了一个技术人成长的形象 T(纵横)型图来串联如今沉淀下来的点。从成为了一名 Java 程序员开始,以前涉猎的技术点逐步就暗淡了。在纵深线,先向下走,专注于解决业务发展碰到的技术问题。后来开始往上走,更多关注目标的价值、路径的有效与合理性。

\\

整个纵向的技术线,最终汇总到顶点,就体现了对这条线的 「掌控力」。然后在这里可以横向发展,如图中,也就有了新的能力域 —— 领导力、组织力。

\\

一个个点,构成了基本的价值点。这些点串起来,就形成了更大的价值输出链条。

\\

\\

线的交织,将形成面。

\\

447f45cfaf66083e4e90e207d6edf30a.png

\\

如上图,近7年胡峰老师都在京东做电商客服和即时通讯领域的工作,所以整个面都围绕于此织就。从最早的聚焦于某个业务点和技术栈,逐步延伸扩展到整个面。

\\

事实是,整个团队才会分布工作在整个面上,而每个个体只会具体工作在这个面上的某个或某些点。

\\

在点上我们解决具体问题,是做解答题;但在整个面上选择路径,是做选择题。

\\

\\

体是经济体或其中的单元。

\\

从电力时代到信息时代再到智能时代,互联网、电商、移动互联网,这些都是 “体” 的变化。今天互联网行业的软件工程师,它们面临的挑战和难度不见得比传统的机械电力工程师更大,只不过他们所从事的点所属的面,附着于一个快速崛起的体上,获得了更大的加速度。

\\

在领域知识体系中,“点” 是利器,“线” 是路径,“面” 是地图。

\\

在知识构建的过程中,有不同的成长阶段,会面临各种不同的问题与困惑,胡峰老师会结合自身成长路径上面临的实际问题、设身处地去思索、分析、拆解这些问题,并给出可践行的答案。

\\

用户评价

\\

课程刚刚上线,大家都期待满满。

\\

0ce67fa88d6da78638dd518f47813853.jpg

\\

2d26db7be292a43e82b547d67bf28c4f.jpg

\\

也许你正处于下面的某个阶段:

\\

入行之初,困惑于技能选择的方向和掌握的方法?

\\

编程前期,苦恼于只能写出Bug不断的挖坑代码?

\\

快速成长期,纠结于无法建立出自己的精进体系?

\\

进阶瓶颈期,迫切于做出改变、寻求突破和上升?

\\

面对成长断层,迷茫于停滞不前、无法跃迁成长?

\\

不管你处于何种阶段,也不管你是学生、初级开发人员、技术主管,或者是架构师,甚至是对程序相关领域感兴趣的人士,都可以利用专栏中所提及的框架体系和思维方法去践行,一定会有所得、有所获。

\\

用户福利

\\

福利一:专栏上新,限时特价68元(原价99元),一共有62节课,每课仅需1.09元。(1块钱)

\\

福利二:分享课程,每成功邀请一位朋友订阅,可以获得24元奖金,多邀多得,上不封顶,立即提现。

\\

订阅方式

\\

戳此订阅

\\

课程目录

\\

fc0a21c29ab490324399bb0f1cb5f545.png

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Go语言(也称为Golang)是由Google开发的一种静态强类型、编译型的编程语言。它旨在成为一门简单、高效、安全和并发的编程语言,特别适用于构建高性能的服务器和分布式系统。以下是Go语言的一些主要特点和优势: 简洁性:Go语言的语法简单直观,易于学习和使用。它避免了复杂的语法特性,如继承、重载等,转而采用组合和接口来实现代码的复用和扩展。 高性能:Go语言具有出色的性能,可以媲美C和C++。它使用静态类型系统和编译型语言的优势,能够生成高效的机器码。 并发性:Go语言内置了对并发的支持,通过轻量级的goroutine和channel机制,可以轻松实现并发编程。这使得Go语言在构建高性能的服务器和分布式系统时具有天然的优势。 安全性:Go语言具有强大的类型系统和内存管理机制,能够减少运行时错误和内存泄漏等问题。它还支持编译时检查,可以在编译阶段就发现潜在的问题。 标准库:Go语言的标准库非常丰富,包含了大量的实用功能和工具,如网络编程、文件操作、加密解密等。这使得开发者可以更加专注于业务逻辑的实现,而无需花费太多时间在底层功能的实现上。 跨平台:Go语言支持多种操作系统和平台,包括Windows、Linux、macOS等。它使用统一的构建系统(如Go Modules),可以轻松地跨平台编译和运行代码。 开源和社区支持:Go语言是开源的,具有庞大的社区支持和丰富的资源。开发者可以通过社区获取帮助、分享经验和学习资料。 总之,Go语言是一种简单、高效、安全、并发的编程语言,特别适用于构建高性能的服务器和分布式系统。如果你正在寻找一种易于学习和使用的编程语言,并且需要处理大量的并发请求和数据,那么Go语言可能是一个不错的选择。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值