【codelife 阿里技术文章分享——读后感】
目前看到的几篇比较有感触的文章,分别是:
- 前端Leader如何做好团队规划?阿里内部培训总结公开 ——》这里会有关于针对技术项目如何做规划的一些指导,非常有价值
- 程序员吃的是青春饭?本质上取决于… ——》推荐了一些书籍,这些是之前作为测试的自己基本没有特别看的,为了能够达到更高的技术专家的标准,必须把这些内容都啃下来才可以
- 如何在阿里技术面试中脱颖而出? ——》之前也参加了很多次的面试,其实有自己总结到一些内容,跟这里面提到的内容做一个互补,帮助自己在后面做项目的时候更加有的放矢
- 如何成为一个顶尖的阿里架构师 ——》你要以架构师的标准要求自己,并且要比50%的人的水平高,这样才能比较容易拿到自己想要的offer
(备注:以上文章可供自查,根据标准制定行为规划,根据时间节点倒排完成)
一、前端Leader如何做好团队规划?阿里内部培训总结公开
一般技术规划路径如下:
1、寻找规划线索可以通过下图:(因为本人其实会需要自己找需求,做项目测试相关的很多规划,以及技术规划的工作,所以这个过程中对于业务痛点的识别非常重要,能够快速准确识别痛点并整理出需求是第一步,之后需要与上级针对该问题进行梳理,而这个梳理过程中就必须要站在老板的角度上去思考)
在上图中,向上管理主要可以从下面几个方面入手:
- 向上管理需要消除“语言差”、做必要的核心概念“科普”。
- 一般业务/ 产品老板的关注点是:流量、转化、跳失、体量、用户体验、规模化、模式/ 产品创新等,要了解清楚现阶段老板的关注点是什么,从自己团队的维度思考试图给出到达路径,这是非常重要的规划线索。
- 向上管理不是有事没事找老板唠嗑,而是注意沟通的有效与质量,提问题最好带着初步的解决方案,业务/ 产品老板的时间有限,又存在“语言差”,相对复杂的内容务必准备 PPT。(备注:说到了ppt,其实很多时候需要总结整理内容时,也需要站在更高层次上思考这个问题,能够站在:老板、会议参与者、下属几个角度上思考这个ppt的内容,能够通过数据表现出专业,数据的丰富度、对比上需要多考虑)
2、在价值聚焦中重点提到了:
规划推导
规划推导分正推:从线索-> 本质痛点或问题-> 解决方案-> 目标,反推:从目标-> 解决方案-> 本质痛点或问题-> 线索。二个过程都需要,你需要通过反推,去论证推导与路径的正确性,比如你的目标是提高 50 张页面 50% 的性能,推到解决方案,发现只能提高 10 张页面 10 % 的性能,就会发现解决方案是不靠谱的,需要再思考。
所有的线索都是现象,你需要去剖析现象背后本质,思考:
- 什么问题导致了出现这些现象?
- 痛点够不够痛?
解决方案的设计要思考:
- 调研是否充分,集团是否有现成方案?
- 是自己做,还是引进?还是引进后二次定制?
- 预计投入资源,投入产出比如何?
目标的设计要思考:
- 能够体现规划价值
- 可量化,可衡量,有影响
- 可达到
3、规划落锤有几件事情要做: —— 后面项目立项后要输出的内容都要到位
规划内容按照重要性排序
- 产出规划 PPT
- 产出关键里程牌时间点
- 排兵布阵、资源调度
二、程序员吃的是青春饭?本质上取决于…
职业发展分为两个阶段:
1)第一阶段:大学毕业3 到5 年
2)第二阶段:大学毕业5 到10 年
第一阶段需要学习的内容包含:(以下内容可以自查,很多书没有看过,很多书即使看过也是看过就忘并没有掌握,关于知识和能力的积累可以参考:Codelife中《一位优秀前端的自我修养》)
- 基础的Java 知识:你会开始看《Java 编程思想》、《Effective Java》。
- 高质量代码进阶知识:你会开始看《重构:改善既有代码的设计》、《代码大全》、《编程珠玑》。
- 常用的主流框架:比如 SSH 相关的《Spring 实战》、《Spring Boot 实战》、《Hibernate 实战( 第2 版)》。当然,这些书已经不够了,你会通过Google、Baidu 大量地浏览在线的资源:Apache 官网、Spring 官网、Hibernate 官网。你会去StackOverflow 问问题或找答案。
- 系统设计与算法知识:《系统分析与设计方法》、《设计模式》、《需求分析与系统设计》、《面向对象分析与设计》、《UML 用户指南》、《算法导论》
- 其他知识:比如数据库调优、缓存框架、NoSQL数据库、日志框架等等
第二阶段需要到达了可能的34+岁问题:
面临这个问题的:真正的原因还是在于自身“竞争力”是否符合这个年龄所应该具备的
此时,一般情况下作为一个TL,需要保证大家产出的价值高于公司给大家支付的工资、奖金等各项支出,那么具备的能力就不单单是知识或者框架等方面的内容:
- 能对所负责领域的业务特点、发展趋势、友商竞争分析有很好的洞察?能知道这个业务领域的客户是谁?他们的需求是什么?他们的痛点是什么?所以,这个TL 应该需要学习《咨询的奥秘》、《探索需求》、《系统化思维导论》。对于技术型的TL,还应该了解《成为技术领导者:掌握全面解决问题的方法》。
- 服务于特定领域的客户,我们需要能了解我们的客户企业架构、业务知识
- 作为 TL, 是否有必要能将自己对于市场的洞察转换成业务规划,并能向自己的老板(或者投资人)说清楚、讲明白?并争取到老板的同意,包括资金、人力资源等。对于,能否把事情讲明白,我们可能需要学习《金字塔原理》,并能非常清晰、有逻辑性地进行表达与沟通。当然,有些业务发展的事不一定特别有逻辑,是需要摸索、尝试,那么你是否能将一个不确定的领域说服老板并获得支持,我们又需要什么?《博弈论》、《影响力》等
- 获得老板支持后,就需要开始带着兄弟们干活了。作为带头人,你看我们是否需要能将业务趋势、客户痛点进行业务建模好让团队的PD、技术都能理解?在做业务进一步深入分析,可能就需要学习《领域驱动设计: 软件核心复杂性应对之道》、《实现领域驱动设计》、《企业应用架构模式》、《恰如其分的软件架构》等等。
- 做完业务设计后,开始要带着团队做技术方案设计、接口设计以及编码实现等。这个过程,TL 又需要具备软件项目管理的能力。无论是《PMBOK 指南》,还是《敏捷软件开发》、《人月神话》、《程序开发心理学》,相信总归还是会有点帮助的
- 在这 10 年内,比较关键的是——你还经历过什么有挑战的业务、技术、产品、平台等方面的成功与失败经验?在这些经历里,你可能会遇到这些困难与挑战:团队磨合的挑战、技术方案上的争执、平台优先 or 业务优先的博弈、低落的团队氛围、个人的低谷等等。而这个过程中所经历的每一种,你但凡遇到了并且有解决和成长的,甚至是迷茫并最终踏过去的都是你的财富
而:这些软、硬知识,从十年这个时间刻度倒排,学习计划、实践计划的执行还是很紧张的。所以,从现在开始给自己制定一个严格的学习计划、严格执行,多实践吧!
三、如何在阿里技术面试中脱颖而出?
评估一个面试者的能力,包括三个方面:
1、技能
- 工作项目经验,以及解决疑难问题的能力
- 需要能够很好的完成工作
2、潜力
- 计算机相关专业的知识体系是否完整
- 基础是否扎实
- 平时是否喜欢钻研
- 好奇心
- 基于自己的过往经历,沉淀的速度和效果(通过博客、开源、参加会议等方式不断加强沉淀)
3、软实力
- 性格
- 执行力
- 领导力
- 对身边人的影响力
综合梳理出一个标杆,就是:需要比目前团队中同一等级50%的同学优秀(所以很多同学会在面试后遇到等级不满意的情况)
面试中,不管是面试官还是被面试者,都可以遵循这几个原则:STAR原则:
- Situation(处境):在什么样的处境下
- Task(任务):接到了什么样的任务
- Action(行动):然后具体是怎么落地的
- Result(结果):最终拿到了什么样的结果
在使用以上原则的过程中,要关心What/How/Why,前因后果,每个阶段要关注的重点不同,需要解决的问题不同,具体采用的方案也会不同,并且还会有很多进阶过程,当第一阶段不满足时继续优化到了第二阶段,这个在做项目的过程中也要重点关注和培养自己如何思考解决问题的能力;如果是作为一个项目完全从头跟到尾的细节部分也会很清晰,如果不是完全从头跟到尾的,就需要多总结和咨询,保证自己能够借助敏感度把握住重点和重要的细节
四、如何成为一个顶尖的阿里架构师
这里我们讨论:关于专职架构师的职责,以专职架构师的职责和能力要求自己,在做兼职架构师时也能够游刃有余(非常相信一句话:你要去一个地方,那么你首先需要具备去到那个地方的能力,并且是要比要求的能力有一定空间的高度才可以轻松胜任,而不是勉强够格)
职责一:全局的技术规划
- 技术规划:最重要的是产出架构,就是一张图,这张图上有什么,没有什么,什么时候有,什么时候没有?只有这张图非常清晰明确才能指引整个团队在同一个时间向同一个方向前进。
- 全局:就是全面+格局,全面就是你的技术规划包含各个方面的,在所有的领域都有明确的指引,所以这张图本质是一系列的图的集合;格局上不要只关注短期利益,更多关注长期利益。不止关注团队利益,更多从公司角度出发,只有这样长期才能为团队带来更多的成长
- 考核:技术规划的好坏、全面性、前瞻性,都是定性的描述,“技术规划”只是一个指路灯,团队中每一个人能不能看到“指路灯”就到达目的地是指路灯价值的体现
职责二:统一的方法& 规范& 机制
- 蓝图确保整个团队在同一个时间向同一个方向前进
- 规范确保前进是有序的。为了有序,你必须拆解你的图,纵向、横向、功能内聚等等纬度拆解到权责清晰对等。
- 考核:无论是业界还是每一个架构师本身都有自己的一套方法,所以只需关注这些东西对应的产出
职责三:完备的基础构建
- 需要提供强大的武器库,在大公司,大部分重量级的基础构建已经是非常完备,对于架构师来说更难的不是从0 到1,而是克制、边界和从1 到2 的过程;不要重复造轮子
- 考核:有了克制跨团队的合作就尤为重要,对应的有两个点一是清晰边界,二是共建
职责四:落地的规划才是架构
- 考核:做到就是做到、没有就是没有、质量好就是质量好,标准非常清晰;过程中只需要紧跟拆解的事情结合实际的组织和业务情况做出决策
最后借用一句话:从无到有的是架构;从表到里的是抽象;从粗到细的是设计
【codelife 阿里技术文章分享——读后感】的更多相关文章
- 阿里技术分享:阿里自研金融级数据库OceanBase的艰辛成长之路
本文原始内容由作者“阳振坤”整理发布于OceanBase技术公众号. 1.引言 OceanBase 是蚂蚁金服自研的分布式数据库,在其 9 年的发展历程里,从艰难上线到找不到业务场景濒临解散,最后在双 ...
- 微信公众号【阿里技术(ali_tech)】历史文章整理
简介 来自微信公众号: ali_tech 阿里巴巴官方技术号,关于阿里的技术创新均呈现于此. 本内容来自微信公众号的分享,最后更新时间2019-10-26,请关注对应公众号接收最新分享,定期同步地址: ...
- 学生党成功拿到阿里技术offer:面Java开发,却是C++考官,几个意思?
摘要: 这是我为大家分享的如何拿到阿里技术offer系列文章中的第一篇,今天分享的文章的作者是一位在2015年阿里的校招中成功得到offer的美女学姐,从学姐的这篇文章中我们能学到很多在阿里面试的宝贵 ...
- SAP成都研究院2018年总共87篇技术文章合集
2018年很快就要结束了.Jerry在2017年年底准备开始写这个公众号时,给自己定的目标是:2018年至少保证每周发布一篇高质量的文章.如今2018年就快过去了,高质量与否需要大家来反馈,至少从量上 ...
- 前阿里技术总监手打:452页Android Framework 精编内核解析
众所周知,Android是一个基于Linux实现的操作系统.但对于Linux内核来说,Android也仅仅只是一个运行在内核之上的应用程序,与其他运行在内核之上的应用程序没有任何区别. 所以Andro ...
- 优秀IT技术文章集(最新)(高质量)
作者:赵磊 博客:http://elf8848.iteye.com 阅读优秀的文章可以使你快速进步,本文收集了广受好评的优秀IT技术文章,在你有空时读一读,安静下来思考一下. 不断更新中... --- ...
- 干货:VLDB论文摘要-阿里技术突破性创新
阿里技术突破性创新 世界顶级大规模数据处理分析管理会议VLDB(VERY LARGE DATA BASE)于9月1日至5日在杭州举办,该会议也是也是大数据云计算领域的盛会,阿里巴巴两个团队在这个会议上 ...
- 收藏的技术文章链接(ubuntu,python,android等)
我的收藏 他山之石,可以攻玉 转载请注明出处:https://ahangchen.gitbooks.io/windy-afternoon/content/ 开发过程中收藏在Chrome书签栏里的技术文 ...
- 2017上半年技术文章集合【Android】—184篇文章分类汇总
地址: http://blog.csdn.net/androidstarjack/article/details/77923753 声明 | 本文是于亚豪 原创 终端研发部 前言: 2017年已经过大 ...
随机推荐
- thinkphp url build 生成localhost.localhost的解决方案
找到框架核心Url.php的下面一段代码 // 原代码// URL组装$url = $domain . rtrim($this->root ?: $this->app['request'] ...
- IoC容器的接口设计
1.从接口BeanFactory---HierarchicalBeanFactory---ConfigurableBeanFactory,是一条主要的BeanFactory设计路径. 2.第二条接口设 ...
- AD中批量创建域用户
EXCEL表中的各列说明情况: A列:姓 B列:名 C列:姓名 D列:账号 E列:密码 此表格另存为person .csv 的格式到AD的C盘目录下,用记事本打开如下图所示: 打开CMD,右键以管理员 ...
- MySQL Group Replication-MGR集群
简介 MySQL Group Replication(简称MGR)字面意思是mysql组复制的意思,但其实他是一个高可用的集群架构,暂时只支持mysql5.7和mysql8.0版本. 是MySQL官方 ...
- windows下获取文件描述
一 背景 前几天, 在公司写的获取文件描述的一段小程序出现了点小问题, 对于一般文件是正常的, 对于win10 C:\Program Files\WindowsApps目录下的通用程序,就是死活获取不 ...
- kmeans
K均值(K-means)算法 ).setSeed(1L) val model=kmeans.fit(dataset) //Make predictions val predictions=model. ...
- JAVA相关技术
开发服务器环境: 1.Linux系统 CentOS 6.5\7 2.JDK1.8 3.tomcat 9 4.mysql 5.7 开发环境: 1.开发集成工具:idea 2.构建工具maven 仓库暂时 ...
- thinkphp中插入ueditor编辑器的代码
1.需要在header中加入以下js内容:<script type="text/javascript" src="{$smarty.const.__ROOT__}/ ...
- django之forms组件
在django中forms组件有其强大的功能,里面集合和众多的函数和方法:下面来看一下它的源码 """ Form classes """ f ...
- Spring 框架用到的 9 个设计模式汇总!
1. 简单工厂 又叫做静态工厂方法(StaticFactory Method)模式,但不属于23种GOF设计模式之一. 简单工厂模式的实质是由一个工厂类根据传入的参数,动态决定应该创建哪一个产品类 ...