首页 > 编程语言 >如何才能从程序员到架构师?

如何才能从程序员到架构师?

时间:2023-10-27 09:23:43浏览次数:23  
标签:LVS 技术 程序员 Linux 才能 架构师 章文嵩

1 引言

小团队一般 10 人左右,其中常常是技术最牛的人做架构师(或TL)。所以,架构师在广大码农中的占比大概平均不到 10%。而架构师也可以分为初级、中级、高级三档,江湖上真正高水平的软件架构师就更少了。

所以,大部分(超过九成的)码农干上许多年,还是做不了架构师,这是什么原因造成的呢?

2 说个阿里高级研究员

章文嵩,滴滴出行高级副总裁,CCF杰出工程师,成名作LVS。

LVS项目里,章文嵩是程序员,也是架构师。

LVS第一版章文嵩花两星期完成,根据首批用户反馈,这个demo“集配置简单、稳定可靠、[可扩展性]于一体”。这环节是程序员最擅长:明确做什么,怎么做,再埋头做出来。

虽“配置简单、稳定可靠、可扩展”已可过滤相当比例程序员,但真正体现架构师综合素质,是在这两星期之前、之后。

3 两星期前

发现LocalDirector太贵,需几万美元,即:

3.1 基于对痛点和需求的理解,决定做什么是有价值的

项目里需要做什么事情绝不仅是PM决定,架构师要有自己判断。架构师本身就是要在需求和技术之间trade off,一门心思搞技术很难成优秀架构师。

判断达到LocalDirector类似的效果并不难,即:

3.2 对所能取得的预期效果和投入成本,有准确判断

基于对底层机制的深刻理解,对关键技术路径和关键技术问题有准确的判断。不少项目最终没有达到预期,架构师能力不达标是主要原因。Meta倾全公司之力打造的元宇宙平台Horizon在很长一段时间内只有半个身子,现在想来依然搞笑。

LVS技术方案受Berkeley MagicRouter论文启发,即:

3.3 良好技术视野

这不是做出正确技术选型的必要条件,但帮助无疑是巨大的。对于程序来说更多是How, 但对于架构师而言What和Why更加重要。另外能google就不要baidu。

决定基于Linux开发,这是

3.4 对技术发展趋势的判断

将近30年前,Linux远没有如今服务器领域的霸主地位,选择基于Linux开发并促成LVS进入Linux内核是远见的。又比如七八年前,在K8s/Mesos/Swarm调度系统三国大战中押注K8s的架构师也是有远见的。对趋势的判断,会直接影响团队的产出甚至是项目的成败。

4 两星期后

在Linux Kernel邮件列表里广而告之。每天会收到很多邮件,有的是用户使用心得,有的是用户的修改建议,好的建议我就会采纳,这样LVS得到不断的丰富和完善,即:

4.1 自我推销和服务意识

NB的技术和产品不是自己PPT写出来的,是用户用出来的。从0到90%简单,从90%到100%难,剩下这10%靠的更多不一定是技术。

LVS很快聚集来自世界各地的问题解决高手和技术专家,他们一起为LVS的优化添砖加瓦][凡是对LVS有贡献的人,其名字都会被章文嵩写入项目历史中,即:

4.2 技术威望和技术领导力

不管谁加入,章文嵩都遵照自己的技术原则和方法论,掌控LVS的发展路径,什么东西做,什么东西不做,什么东西怎么做。同样不管是谁加入,也都会得到同等的尊重。不是所有开源项目都有如此优秀的领导者,如Rust。

章文嵩经常参加Linux的会议,章文嵩和Netfilter的作者Rusty Russell在酒吧相谈甚欢,即:

4.3 social能力

额.....不是架构师必备技能,但确实是提升个人影响力的有效方法。

5 为你总结好的借口

一般原因是,一般程序员根本对接不到需求方,信息缺乏,得到的工作任务根本都是设计好的离散零碎的小模块。至于模块如何组织,为何这样组织,缺乏信息,缺乏时间,缺乏动机思考。

而且99+%的程序员不喜欢和需求方打交道,而不是没有机遇。

X 总结

也许你说,这些都不是程序员应该特别关心,而我只是想成为一个架构师,不是要成为章文嵩。如果你有这种想法,那么有可能单纯程序员更适合你。

也许你说,据我观察XX架构师也就运气好。也许他确实次次运气爆棚,也有可能是他在你不注意的地方把问题化于无形了。一般来说,云淡风轻的架构师还是要比哭爹喊娘的架构师段位高的。

也许你会说,现阶级固化,没上升机会了。只能说一夜暴富的机会越来越少了,但码农成长为架构师的通道从来没有也不可能关闭,是不会关闭,因为大多数根本没这钻研能力。

本文由博客一文多发平台 OpenWrite 发布!

标签:LVS,技术,程序员,Linux,才能,架构师,章文嵩
From: https://www.cnblogs.com/JavaEdge/p/17791008.html

相关文章

  • #yyds干货盘点# LeetCode程序员面试金典:生命游戏
    题目根据百度百科,生命游戏,简称为生命,是英国数学家约翰·何顿·康威在1970年发明的细胞自动机。给定一个包含m×n个格子的面板,每一个格子都可以看成是一个细胞。每个细胞都具有一个初始状态:1即为活细胞(live),或0即为死细胞(dead)。每个细胞与其八个相邻位置(水平,垂......
  • #yyds干货盘点# LeetCode程序员面试金典:最小操作次数使数组元素相等 II
    题目给你一个长度为n的整数数组nums,返回使所有数组元素相等需要的最小操作数。在一次操作中,你可以使数组中的一个元素加1或者减1。 示例1:输入:nums=[1,2,3]输出:2解释:只需要两次操作(每次操作指南使一个元素加1或减1):[1,2,3] => [2,2,3] => [2,2,2]示......
  • 软考系列(系统架构师)- 2014年系统架构师软考案例分析考点
    试题一软件架构(MYC架构、扩展接口模式)MVC架构风格最初是Smalltalk-80中用来构建用户界面时采用的架构设计风格。其中M代表模型(Model),V代表视图(View),C代表控制器(Controller)。在该风格中,模型表示待展示的对象,视图表示模型的展示,控制器负责把用户的动作转成针对模型的操作。模......
  • 从高薪码农到失业大龄程序员:一位程序员的职场悲歌
    真实的故事30岁对于程序员来说并不算老,但在互联网行业这个快速变化的领域里,过了30岁的程序员就开始被认为是“大龄程序员”,尤其是在某些公司,面试官会直接问“年龄多大了”这样的问题,让许多程序员感到不安。然而,在一个不断追求年轻化的行业里,30岁的程序员被裁是不鲜见的事情。我前同......
  • 《创新者-一群技术狂人和鬼才程序员如何改变世界》
    IT技术创新的历史经验创新者创新者必须深入理解产品的工程与设计,最优秀的领导人对工程和产品设计理解最为深刻。创新者的一个基本特质是保持专注。创新者应该热爱自己的事业,为之而狂热以至忘我工作。只有在激情的驱使下,创新者才能做出最出色的工作。创新者可以看到既......
  • 为啥外行都觉得程序员的代码不值钱?
    不,代码是值钱的!前几天我们一直服务的一个客户觉得自己用了两三年的UI太丑,乞求我们换一套。集团领导讨论后一口报价30w,牛逼哄哄说:很麻烦的啊,要先设计UI库,然后把所有页面都换个样,又要测试这玩意(内行人都明白前端能测出啥bug,也就可能要考虑优化),大概要6个人做一个月。然后我这架构大......
  • 为啥外行都觉得程序员的代码不值钱?
    不,代码是值钱的!前几天我们一直服务的一个客户觉得自己用了两三年的UI太丑,乞求我们换一套。集团领导讨论后一口报价30w,牛逼哄哄说:很麻烦的啊,要先设计UI库,然后把所有页面都换个样,又要测试这玩意(内行人都明白前端能测出啥bug,也就可能要考虑优化),大概要6个人做一个月。然后我这架构大......
  • 大厂中年人的职场卑微:深圳大厂程序员,被裁后身背百万房贷
    前言在职场中,有许多中年人,他们承担着家庭、房贷、子女教育等沉重的责任。随着年龄的增长,也承受着更多的压力。尽管已经经历了职场的风风雨雨,但是在“中年人”的年纪,职场生活却是越来越卑微。职场生活中的卑微并不陌生,但在中年这个阶段,这种感觉似乎变得更加显著。一位曾经在深圳某大......
  • 软考系列(系统架构师)- 2016年系统架构师软考案例分析考点
    试题一软件架构(质量属性、架构风格对比、根据描述填空)试题二系统开发(用例图参与者、用例关系、类图关系)学生、教师、管理员、时间、打印机【问题2】(7分)用例是对系统行为的动态描述,用例获取是需求分析阶段的主要任务之一。请指出在面向对象系统建模中,用例之间的关系有......
  • 1024程序员节,我们来点轻松的,拼手速截图看看你是哪种type的程序员!
    “爱码士”们来拼手速!云宏君今日也是“需求加载中“,与身边的it小伙伴一起来找标签吧......