2KB项目,专业的源码交易网站 帮助 收藏 每日签到

【开源访谈】华为 SCEF 产品软件架构师姚磊:如何成为一名优秀的软件架构师

  • 时间:2019-01-23 16:26 编辑:2KB 来源:2KB.COM 阅读:538
  • 扫一扫,手机访问
  • 分享
摘要:

随着软件行业的发展,软件人才的队伍不断壮大,但同时新老交替的速度也在不断加快,让很多技术人员开始有一种危机感。在这种大环境下,从事更高层次开发构架工作的软件架构师成为令人向往的角色。本期【开源访谈】邀请到华为 SCEF 产品软件架构师姚磊分享如何成为一名优秀的软件架构师。

【分享嘉宾】

姚磊,华为SCEF产品软件架构师,8年电信设备从业经验,进入华为以来一直从事华为EPC网络能力开放产品SCEF软件开发、设计工作,对SCEF产品架构、业务功能有深入的理解。

【访谈实录】
1、请简单地介绍一下您自己(技术背景、学习经历、工作经历)。

答:大家好,我是姚磊,2010 年毕业于湖南大学。我一开始是在一家电信设备公司从事网管的工作,当时基于开源软件做了一个网络管理工具,算是一些比较简单的代码编写和模块开发工作;工作两三年之后,开始涉及一些模块的设计,可以说是一名优秀开发者了,但还算不上一个架构师;后来到了第二家公司主要做了一个协议的开发; 2014 年进入华为,刚开始的时候作为 SE 负责产品的开发,做的是开源代码的研究,就是考虑怎么把开源代码集成到我们的产品中去,后来担任的是华为的 MDE,研究平台的对接,再后来开始做一些独立性的设计。所以,从我个人来说看来,大部分时间只是在做开发的工作,真正作为一名架构师的资历还是比较浅的。


2、程序员与架构师的区别是什么?

答:程序员可能更多关注的是如何实现一个模块的功能,但做为一名架构师要有一个全局性的思维,关注的不是具体实现的细节,而是各个模块之间怎么去交互、部署,还有它们的性能、安全,以及跟 web 的交互,以及怎么去管理等等。把各个模块都部署好之后,还要把限制通讯的结果、交互的内容都清晰地定义好,考虑接口对接的时候采用什么样的协议这些层次的问题。


3、软件架构师的进阶除了日常工作上的积累,还需要哪些方面的学习?

答:作为一个架构师首先要关注技术方面的问题,但不仅仅关注于当前的产品的技术,还要关注整个行业的发展趋势,包括优秀的一些架构,比如优秀的开源技术架构等,如果你只是关注自己产品的架构的话,也许能满足当前的需要,一旦外部发生变更的时候,就可能不适用了。

除了技术方面的问题外,周边的东西或者日常生活的方方面面都要去留心观察。举个例子,我们架构部有个大拿,他在设计我们产品的一个主要架构的时候,想了很多方案都通不过,有一天他在路上看到交通管制,看交通梳理的时候灵感来了,他按照这个思路设计了一个架构之后投票一次就通过了。


4、软件架构师需要具备怎样的素质与职责

答:(1)过硬的技术。其实大部分的软件架构师都是软件出身的,所以至少是某一个技术方面的大拿,如果技术不过关的话,设计的框架的性能、安全性都会受到约束。即使是成为架构师之后写代码的机会少了,也要经常去研究一些比较优秀的代码、开源架构,还要学习别人优秀的实践经验等等。

(2)良好的沟通能力。作为一名架构师,设计好一个架构之后肯定要给别人介绍这么一个东西,告诉别人这个架构能解决别人的问题,这就需要一定的沟通能力。

(3)良好的书面表达能力。一个优秀的文档能更好地呈现你所设计的东西。现在一些比较规范的公司,写架构的时候都会要你写这个架构的模板,包括安全、性能、数据库都要有一个章节去分析。但是一些别的小公司没有那么规范,这时候就要去研究一下周边的一些大公司或者行业的标准。


5、作为 SCEF 软件的架构师,应该注重业务上的发展,还是技术上的发展?

答:因为我本身是做技术出身的,原来我的理解是技术的发展更重要。但后来发现一个问题,我们的工程师能把产品说得头头是道,但只是从工程师这个角度去给别人演示展示这个产品,当对象发生变化了,面对的不再是工程师而是客户的时候,就不能很好地用客户化的语言去描述。

所以作为一个架构工程师的话,技术是基础,业务方面的发展也很重要。程序员可以只关注自己的技术,但是作为 SE ,视野应该放宽,不能闭门造车。华为内部对职位的划分都是很详细的,在各个层级都有很专业的人才,像行销人员的业务能力就很强,我们就可以多到一线去跟行销人员和客户沟通,学习怎么用客户的语言来跟他们沟通。


6、您是如何看待“大部分码农做不了软件架构师”这一观点的?

答:从人自身的发展来看,成为架构师要比一般的开发者要付出更多的精力,但是很多码农会满足于目前的成就,不再愿意去学习提升自己,其实架构师写的文档都是可以看得到的,所以如果愿意去提升的话可以自己去学习、去实践,大部分的架构师其实都是在一步步摸索和实践中成长起来的;从行业的大环境来说,公司方面也不需要很多架构师,一个产品最多配备一两个架构师就够了,然后可能还需要个别优秀的开发者对架构师设计的模块进行理解,把这个模块进行消化,再由其他的开发人员去实现就可以了。


7、什么样的人更合适做软件架构师?

答:程序员能成为架构师,首先当然要热爱这门技术,再者我觉得应该有良好的沟通能力和表达能力,包括写文档的能力,还有视野要开阔,能主动地从生活中的点点滴滴去感悟和思考。


2KB项目(www.2kb.com,源码交易平台),提供担保交易、源码交易、虚拟商品、在家创业、在线创业、任务交易、网站设计、软件设计、网络兼职、站长交易、域名交易、链接买卖、网站交易、广告买卖、站长培训、建站美工等服务

  • 全部评论(0)
资讯详情页最新发布上方横幅
最新发布的资讯信息
【计算机/互联网|】Nginx出现502错误(2020-01-20 21:02)
【计算机/互联网|】网站运营全智能软手V0.1版发布(2020-01-20 12:16)
【计算机/互联网|】淘宝这是怎么了?(2020-01-19 19:15)
【行业动态|】谷歌关闭小米智能摄像头,因为窃听器显示了陌生人家中的照片(2020-01-15 09:42)
【行业动态|】据报道谷歌新闻终止了数字杂志,退还主动订阅(2020-01-15 09:39)
【行业动态|】康佳将OLED电视带到美国与LG和索尼竞争(2020-01-15 09:38)
【行业动态|】2020年最佳AV接收机(2020-01-15 09:35)
【行业动态|】2020年最佳流媒体设备:Roku,Apple TV,Firebar,Chromecast等(2020-01-15 09:31)
【行业动态|】CES 2020预览:更多的流媒体服务和订阅即将到来(2020-01-08 21:41)
【行业动态|】从埃隆·马斯克到杰夫·贝佐斯,这30位人物定义了2010年代(2020-01-01 15:14)
联系我们

Q Q: 7090832

电话:400-0011-990

邮箱:7090832@qq.com

时间:9:00-23:00

联系客服
商家入住 服务咨询 投拆建议 联系客服
0577-67068160
手机版

扫一扫进手机版
返回顶部