邹雪
随着软件行业的蓬勃发展,构架师的角色越来越重要,众多软件公司急需优质的架构师,尤其在大型软件产品和项目的研发中,架构师的作用极为明显,由于缺乏优秀的架构师导致项目开发失败的例子数不胜数。成为一名优秀的架构师是对软件开发人员能力的最大肯定,也是每个软件技术人员努力追求的目标。然而,能够胜任架构师的工作并非易事,他们绝不仅仅拥有写代码的能力,更需要丰富的从业经验和扎实的软件技术功底。如何才能进化为优秀的软件架构师,在产品和项目开发中独挡一面?以及架构师应该具备哪些素质呢?带着这样的疑问,笔者对麦克尔斯(深圳)科技服务有限公司的资深经理索红升先生进行了访谈,他结合自身的职业履历,向我们讲述了软件架构师的进阶之路。
(一)进入代码世界探索美好未来
大容量、高速度的计算机的出现后,催生了大规模的应用范围,也推动了软件开发技术的急速增长,高级语言迅速迭代,与日俱增的规模,对软件的可靠性提出了更高的要求。进入21世纪后,较低的软件开发程度已经很难满足高运算速度的计算机需求,彼时软件行业的从业者大多数没有进行过系统性的学习,缺乏精通技术的软件人才,也无法对软件进行合理预估、科学规划,进而导致开发过程混乱,工作流程繁琐,对资源造成极大的浪费。高精尖人才数量不足,使得行业发展严重受困。
在上述背景下,计算机软件相关专业迎来了发展的春天,无数人进入高校学习计算机专业,索红升就是其中之一。2007年,索红升在西安交通大学读完计算机科学与技术专业,获得硕士学位。之后,进入信源通科技(深圳有限公司),任职高级软件工程师,以开发组长的身份带领UI开发团队,深度参与ALarmService紧急报警系统的开发,该项目的主要实现技术和工具主要包括Java,Apache、百度地图、Tomcat、Mysql、Liferay、Jquery、C++、PHP等,网络终端采用Browser+Apache+Tomcat+Mysql模型,基于手机终端的位置信息,为用户提供紧急报警服务。在该项目中,他负责系统整体的UI设计与开发、地图模块与LBS模块开发设计、短信猫服务器开发,以及负责基于GPRS与短信通信协议的设计与评估。在高质高效地完成项目任务后,还为公司设计了全新的门户网站。
2009年,索红升加入了中兴通讯股份有限公司,负责开发Wimax基站管理系统的开发,该系统采用Swing+Jboss模型,分为客户端,服务器端,网元代理三大模块,系统的实现工具包括Java,SQL Server,Oracle,Jboss等。作为高级软件工程师,索红升主要负责配置模块CLI接口的开发设计,以及该模块中管理服务器与被管理基站之间的数据同步模块的设计开发。由于精湛的专业优势,在该项目设计与开发中,索红升对配置模块的处理逻辑进行修改和优化,通过技术创新,将同步单线程改为异步多线程处理模式,极大地提高了网元配置效率。因此,该技术也在公司内部申报了专利发明。
初入代码世界,顺利完成了幾项重大项目后,让索红升意识到软件行业潜力巨大,只要找到自己发展的方向,才能创造更多的可能性。
(二)扎根软件行业汲取成长养分
“软件企业业务更新快,要从一名程序员走向架构工程师,必须及时学习新知识、新技能,只有扎根项目一线,精心打磨专业技术,不断地提升自我、超越自我,进而实现职业角色的转变。”
两年之后,华美优客网路技术(深圳)有限公司,担任java开发组长、架构师,该公司是移动网络市场上先进的无线系统供应商,集无线网络产品的设计、研究、开发于一体,具备大型产品和项目开发实力。索红升进入公司后,主导了多个项目的设计和研发,其中Flexmaster WLAN管理系统和SmartZone WLAN管理平台两个项目的设计开发,给索红升留下了特别深刻的印象,也让他积累的丰富的工作经验。
Flexmaster WLAN管理系统属于企业级项目,由FM企业版与FM-Cloud云服务版两个子项目组成。其中,FM属于单机系统,主要采用Browser+Tomcat+Mysql模型,通过http协议与网元交互,实现WLAN管理系统中的配置管理、告警管理、报表等多项功能。FM-Cloud是FM的云服务版,可为众多中小企业提供云端无线网络管理服务。其架构上采用Nginx+Tomcat+Memcached+Mycat+Mysql集群模型,通过新增用户管理模块以及重构数据抓取模式,实现了FM管理功能的服务化。该系统涉及技术众多,实现难度较大,对架构师的专业技能有极高的要求。
索红升从容应对挑战,作为构架师他从更宏观的视角与用户、技术人员、业务人员进行多方面交流,全面负责产品的架构设计、系统优化、项目管理、Java开发以及用户支持等内容,以极强的专业技术,推动项目顺利实施。对FM的系统架构进行修改、优化处理性能,引入多线模式完成数据抓取,实现单节点系统扩容;
重构与编码FM数据抓取模块,将被动抓取数据变为主动上报;
优化Mysql配置、SQL查询,完成FM系统迁移……极大地解决了用户的实际需求。
SmartZone WLAN管理平台是运营商级的WLAN管理平台,在该系统设计与开发中,采用了Browser+Tomcat+Cassandra模型,平台分为数据子系统与控制子系统,各个子系统内部分若干个模块协作运行,数据子系统实现数据导流,控制系统实现管理功能。开发环节涉及到的技术包括Java、C、Pytho、Groovy等数十种计算机语言。索红升主要负责系统集群部署、启动/停止、性能监控、备份恢复、升降级等模块,开发系统网络模块的配置接口,快速搭建与基准测试系统集群,以及分配项目Bug等内容。
通过完整的项目历练,让索红升具备了全面和深入的技术底蕴,成为了全面思考架构和技术路线的技术决策者,能够出色地完成技术选型、方向决策、技术方案规划、定制实施策略等职能,也让他对架构师的使命有了更深层次的理解。
(三)助力平安银行实现科技转型
多年的行业积累,让索红升具备了技术领导力,能够通过技术影响力去寻找目标愿景,在更多的行业领域里带领团队获取战略结果。
2017年,索红升加入平安银行。该银行属于跨区域经营的股份制银行。随着互联网渗透到人们生活的方方面面,体验更好、成本更低、智能更优、赋能更强成为新的商业标准,银行业的新产品、新业务、新模式、新业态的不断涌现,金融服务模式正在悄然变化,平安银行也面临着信息化、数字化转型的迫切需要。
平安银行要实现数字化转型,必须要具备数据驱动的理念,树立大数据思维和互联网思维,跳出传统商业银行的運营模式,基于科技手段建立全新的生态系统,不断优化产品顶层设计,才可能提高实现组织的快速转型。
作为平台架构师和产品负责人,索红升在加入平安银行的三年多时间里,主导开发了SLB软负载流量平台系统、平安银行PAAS项目和同城双活项目。SLB项目是平安银行首款流量负载平台,能够帮助应用实现负载均衡、流量拉入拉出、无损发布,蓝绿灰度、堡垒验证等功能,SLB架构上分为后管系统(SLB-admin)与服务实例(SLB-cluster),后管系统为BS架构,为用户提供管理界面,通过http协议与服务实例交互,管理多个服务实例;
服务实例为“二次开发的nginx”集群,集群中每个节点上运行有定制代理(ng_agent),代理接收后管系统操作指令,控制同节点下nginx服务器的行为,实现流量的全方位管控。目前,该系统已经作为平安银行的基础设施,在银行范围内推广使用。
在此项目中,索红升全面负责产品总体开发进度、架构设计、数据模型设计和UI设计,深度参与核心模块编码,SLB集群与监控系统的对接,以及通过各种形式完成产品推广,在推广接入过程中负责存量老旧系统的架构改造方案的设计与实施。同时,负责完成了平安口袋银行公网入口域名的规划与管控,确保所有产品的各个集群稳定运行。平安银行PAAS项目是信用卡中心A+核心升级项目, 在该项目设计中,索红升主要负责DSU分流方案设计与落地实施、SLB产品的流量镜像功能的设计开发与生产实施、多DSU支持功能开发设计,以及负责A+核心相关SLB集群的稳定运行与日常问题排障。通过基础设施的DSU改造以及应用的微服务改造,完成A+核心基础设施的去IOE化及软件国产化。
同城双活项目是平安银行的同城多机房建设项目,在原有观澜IDC的基础上,在深圳福田再建设一个IDC,为应用提供双活保障,当一个IDC出现故障时,流量可自行全部倒入另一个IDC,也支持双IDC流量比例划分和动态调整。作为同城双活接入层负责人,在短短的几个月时间里,完成了接入层的整体架构设计与方案落地、全称参与全链路双活方案的设计与规划、SLB的双活能力规划开发、存量老旧系统的双活改造,以及处理应用在双活改造过程中的架构咨询和疑难问题,助力平安银行实现了数字化转型。
(四)赋能电商交易平台快速崛起
探索新的业务场景,是架构工程师不断进步发展的重要途径。在新的业务模型中,能够充分释放架构师的才华,提升新技术应用能力和创新能力。
2021年,索红升加入麦克尔斯(深圳)科技服务有限公司,担任资深经理职务。全面负责优化Michaels电商平台架构,该平台是美国艺术平台零售巨头Michaels为配合公司实现数字化转型的发展战略,自主研发的适应于当前业务布局的电商平台,主要包括自营业务(DOTCOM)、三方商家业务(Marketplace)、个人卖家(Makerplace)三个子平台,项目使用Java,Springboot,SpringCloud,K8S, GCP等技术栈涉,采用微服务架构,使用谷歌云服务作为部署平台。
作为第三方平台Marketplace的开发负责人,索红升与PM、其他开发者及运维团队沟通产品的设计,同时完成技术团队的招聘、培训与搭建,并带领技术团队处理开发过程中遇到的疑难技术问题,设计架构与优化性能。在他的努力下,成功地将三方平台Marketplace打造成公司内部第一个达到生产级别的应用平台,该平台比其他两个平台提前半年部署到sandbox环境,并接纳真实用户入场内测。同时,作为技术委员会核心成员,他深度参与公司的重大技术选型与核心技术方案审核决策,主导了对全平台API架构设计,完成了数据模型设计的复审,以及完成了入口网关和数据库的性能测试。最终让Michaels电商平台在短时间内,重新获得巨大的流量,用技术手段赋能电商平台的崛起。
一路走来,暗香盈袖。从软件开发者到架构工程师,索红升对产品和项目有了更精准的理解,他的技术能力在大量的项目实践中得到迁越和升华。我们相信,在冰冷的代码世界里,他一定会书写出更多的精彩故事!
猜你喜欢架构软件模块基于FPGA的RNN硬件加速架构成都信息工程大学学报(2022年4期)2022-11-1828通道收发处理模块设计成都信息工程大学学报(2022年3期)2022-07-21“选修3—3”模块的复习备考中学生数理化(高中版.高考理化)(2022年5期)2022-06-01禅宗软件英语文摘(2021年10期)2021-11-22功能架构在电子电气架构开发中的应用和实践汽车工程(2021年12期)2021-03-08软件对对碰摄影之友(影像视觉)(2019年3期)2019-03-30LSN DCI EVPN VxLAN组网架构研究及实现电信科学(2017年6期)2017-07-01一种基于FPGA+ARM架构的μPMU实现电测与仪表(2015年22期)2015-04-09谈软件的破解与保护精品(2015年9期)2015-01-23集成水空中冷器的进气模块汽车与新动力(2012年1期)2012-03-25扩展阅读文章
推荐阅读文章
恒微文秘网 https://www.sc-bjx.com Copyright © 2015-2024 . 恒微文秘网 版权所有
Powered by 恒微文秘网 © All Rights Reserved. 备案号:蜀ICP备15013507号-1