这是个i人的问题吧? 角色是因为工作量大,需要多个人分工协作,才产生的,不是必然的。
如果项目比较简单,最好一个人全搞定,不需要区分角色。
技术人相对简单,小团队更好配合,跟项目经理对好分工,架构师负责什么,产出什么,另外做好补位,互相支持,然后就开干了。 一般项目经理负责制的公司,项目经理是第一责任人,为项目成败负责。
5年的开发应该是相对资深一点了,至少在某个领域能打,样样通样样松迟早被淘汰,要是跟3年经验没啥区别的话,那就是3年水平,会被年轻人替代掉。 不同的职业和级别有对应的能力矩阵(胜任力模型),先搞清楚技术管理需要哪些能力。 如果转型,管理或者产品或者其他,甚至转行,要看你的能力模型是不是相对更有优势,至少是中上水平,否则大浪淘沙迟早落下。
如果行业比较成熟,业务创新需求不强,要快速的搞一套自己的,这方面的确有很多所谓通用产品和服务,比如网站CMS、OA、财务、CRM、IM、电商、直播等等。 通用脚手架也可能有,要么在供应商手里,要么有人做成了开源的,开源的商业变现比较难,所以技术支持、质量保障会差一些。 最后往哲学上点价值,要是有个上帝视角,会认为世界基于基本的规律,那么业务模式自然也就是有限的、确定的,用数字化再来“重做一遍”自然也有规律可循,这样的说法没问题,真的要做事,必然举步维艰。所以呢,哲学在上层可以通用,但到具体落实层面,抽象要化为具象,所谓通用,只是折中。
工作的目标是创造价值,这么说有点虚,业务的目标也可以是创造价值,那么业务需求是达成目标的手段,技术是实现业务需求的手段。 技术一直在进步,不代表只有新技术的功能点才能解决新需求的问题,要是没有新技术,需求就实现不了了么?就算没用新技术,业务的竞争力就不行了么?未必。 大概只有一些搞技术的人才如此热衷于新技术,太单纯了。 说回来,软件是有生命周期的,迟早有一天要下线,或者重构,但重构一般不会是因为某一个技术因素就决定的,重构成本巨大,还可能引入新的问题和风险。 因此,有很多种方法可以选择,技术进步和架构能力好的表现不一定是因为用了新技术,而是有多种选择,根据实际情况做取舍。
既然在强调可扩展性,那么最重要的架构原则就是不要过度设计。 一定要界定设计的技术指标,首先不能没有边界,技术不能承担无限责任,其次不能秉承着所谓技术理想,逮着个机会就想放大招,施展出毕生的功力,投入过多的资源和精力,ROI就有问题了,要对公司负责。
成为架构师的关键时刻,不是画了一张“炫酷的系统图”,也不是用上了时髦的技术,而是当你设计的系统在真实场景中高效、稳定运行,同时能应对业务频繁变动,而团队依然保持高效协作。架构师的本质是全局观和决策力,你需要清楚每一个模块的职责、边界和依赖,确保系统既能满足当前需求,又具备可扩展性和演化能力。真正的MOT(Moment of Truth)是,当你第一次为系统的稳定性和扩展性付诸全盘思考,从解耦设计到性能调优都亲自规划,并通过设计规范引导团队统一协作。只有当你的设计能在高并发场景下不崩溃、迭代过程中不割裂、长期运维中不崩塌时,你才可以真正宣称自己是架构师。
当你不再只是埋头写代码实现小功能,而是能主导系统的整体设计,比如考虑电商系统各个模块怎么划分和通信,这就是个信号。能独立进行技术选型,清楚每种技术的好坏和适用场景,像知道选哪种数据库合适,也是成为架构师的迹象。 在团队里,要是经常跟开发、测试、运维等不同团队沟通协调,还能给别人分享技术知识、提供指导,这就有点架构师的样子了。而且你在设计系统时会考虑它未来怎么发展,还对项目的进度、质量、成本等负责,差不多就可以认为自己是架构师啦。
区块链在数字货币场景简直就是横空出世好么,不能说别的场景不适用就是区块链不行吧?
我理解这个问题主要是怕期望过高,形成泡沫,最后破灭对吧?
首先,大模型泡沫破灭又如何?世界不会毁灭,地球照样转,碳基暂时远离被硅基碾压的危机。 其次,AI是最前沿的科技领域之一,创新总有失败,但失败是成功之母,站在浪潮之巅,还有啥可啰嗦的?干就完了。 最后,摩尔定律如果有效,那就是每18个月性能翻倍价格减半,如果不管用了,那就不是啥定律了,都不是定律了,还操啥心呢?
鉴于架构师这个名头比较泛化,不能一概而论。 如果是指负责某个软件系统架构设计、实现的核心工程师,那必须要写代码。 写什么代码呢?搭建整体框架、编写核心模块、甚至还要确定代码规范、模块边界。 因为如果是别人干了这些,那他才是这个系统的架构师。
建筑设计师(Architect)可以只画图出方案,做软件一般不分设计方和施工方,项目团队得为最终交付负责。