81002001,架构师和程序员的区别( 二 )


程序员转架构还是做管理比较好?你会怎么选?

81002001,架构师和程序员的区别


程序员的发展方向取决于个人的知识结构和发展意愿,对于研发级程序员来说,未来一直从事程序研发工作也是没有任何问题的,通常情况下,应用级程序员往往会考虑转换岗位的事情 。通常情况下,架构师对于知识结构的要求还是比较多的,架构师也是研发级程序员的发展方向之一,对于架构师的要求主要体现在以下几个方面:第一:对于行业技术发展比较敏感 。
架构师的主要作用是设计产品的整体技术解决方案,要充分考虑可能出现的技术瓶颈、未来发展以及团队开发能力 。简单的说,架构设计既要解决眼前的问题,也要着眼于未来,留出充分的扩展空间 。第二:具备规划能力 。架构师的解决方案是搭建开发团队的重要参考,一个开发团队需要什么样的人员配置在很大程度上取决于架构师给出的方案,所以架构师在方案设计的过程中要充分考虑团队的配置,在工作量上需要给出一个比较准确的描述 。
目前不少团队都采取项目经理负责制,所以架构师的专业度对于项目整体进度有重要的影响 。第三:具备丰富的行业经验 。行业经验的积累对架构师岗位来说是比较重要的,因为不同行业的解决方案存在巨大的差异,即使在用户数量比较接近的情况下,不同行业在应用过程中的关注点也不一样,甚至存在地区性的差异 。目前,不少企业已经把架构师和技术专家进行了岗位分离,架构师更多的任务是设计方案,而性能验证以及顶层技术实现往往由技术专家来完成,所以现在不少公司的架构师并不需要去做具体的编码工作,一些咨询专家(业务架构师)甚至并不懂得具体的编码,这也是随着IT行业发展出现的新变化 。
架构师和程序员有什么区别,各自都有什么要求?
程序员属于关心新库,编码语言,测试覆盖率,完成开发任务等的极客物种 。他们通常在一个或几个组件/服务中工作,但他们不决定这些组件如何相互配合以适应整体大局 。(有很多开发人员了解这一点,但他们没有必要)软件架构师属于另一个极客物种,专注于所有组件的设计以及它们如何适应大局以支持业务用例或公司的未来愿景,而不是过多地关注一个组件 。
有各种类型的建筑师:1.企业架构师:了解各个组件如何相互交互以及其他后台IT系统(包括CRM,订单管理,BI或网站)的软件架构师 。2.解决方案架构师:软件架构师,除了技术和设计知识之外,在30-50%的时间内在业务方面工作,具有深厚的功能知识 。3.技术架构师:与一个团队或几个团队合作的软件架构师,负责指定编码标准,代码审查,可扩展性,部署,性能等方面 。
IT程序员应该转架构师、部门管理、还是项目管理?
本人10年开发培训经验,期间经历了Java,Android,H5,大数据,PHP等多个不同的方向的开发,也做过软件培训公司的金牌讲师,很有兴趣回答你这个问题 。一个程序员干到一定的程度之后,基本上都要考虑转型的,很少有人一辈子都在一线撸码 。那要转型可以往哪个方向转呢?一般程序员可以按如下方向进行转型:可以看到,在程序员从初级,中级,高级一步步提升之后,一般可以往3个方向转型,也就是项目经理,架构师,或者产品经理,当然这是3个比较常见的转型方案,未必非要按这个路线发展 。
那么一个发展到一定程度的程序员,到底是选择哪个方向发展呢?我觉得更多的还是得看个人的意愿和特长 。如果你喜欢和善于做管理,其实更应该走管理路线,而且管理路线的福利薪资都是普通程序员比不了的 。如果你就是很喜欢研究技术,那就架构师路线,把精力放在技术研究上,沉浸在技术的世界里,也是不错的选择 。如果自己既不喜欢做管理,有厌倦了代码,那可以选择做产品,讨论讨论需求,工作压力相对来说没有那么大 。

推荐阅读