5 年经验年薪百万,一位阿里 P8 分享自己的成长干货

news2024/9/20 9:45:21

今天这篇文章,我前后读了 3 遍,主人公是阿里最年轻的 P8 之一,工作五年连升三级,他在一次采访中分享了自己的成长经历和职场心得,非常接地气,我们整理了 一下,真诚地推荐给每一个渴望成长和进步的职场人,希望能带给你力量。

保持好奇心——培养主动学习的意识和习惯

我每天可能十几个小时一直在下载最新的学习资料视频,由于我的专业偏设计类,我会在网上找一大堆的,比如电影的概念画、原画集、插画集,下来自己临摹。慢慢的塑造了自己的造型和审美能力。之后去看各种各样的电影,对电影特效感兴趣,开始学视频制作。画画画久了,又去学 coding。这里有两点启示:

一是知识对我来说不再稀缺,稀缺的只是好奇心。

它让我建立了获取知识的自信心。以前我们所受的教育都是你要特别努力,经过某次考试或者某种官方的认证才能够进入到下一阶段的学习。而现在知识就在那里,只要你想要随时都可以拿到它。

二是它影响了我看待人与人之间,看待和权威间的关系。

因为信息是平等的,你和权威或者不是你专业领域的人沟通的时候,在信息的量级上就没有太大的鸿沟了,可以通过独立思考平等对话。这使得我不太会去惧怕权威。

凡事都多走一步——不断超越预期

我当时有一个小技巧,在我开始工作第一年就发现很管用。

就是我的每一个新项目,只要有新的人,我第一次合作的人,我就一定要让他们惊讶。

我觉得这个经验叫做多走一步。就是比你想象的多走一步。所谓的多走一步是全方位的。

在不同的项目里,多走的那一步可能是不一样的。

当然会根据他是谁、或者你的目标是什么做一个小的调整。但最重要的事情倒不是因为这个人的性格去做调整。而是他需要什么,你要帮他解决什么问题去做调整。

这个惊讶的点不一定会跟我的项目目标一致,我会这样来想问题:第一次合作大家要完成一个项目,那我第一优先级肯定是把这个项目做得非常好。

比如我们要去解决 GMV ,最后成交量的问题。那我首先会拆分:GMV 等于什么?等于有人来了,这个人的转化,以及这种转化的客单价。我会在这三个方向去找机会点。

在前两年,领到一个任务时,往往目标已经确定。但我会去想这个事情到底对最后的目标起到什么帮助?在目标的哪个环节起到了帮助?除了这件事情以外,有没有比这件事情还能撬动最后目标的?

目标可以拆解成很多假设,我们做的事情是因为某个假设去完成某个目标。

在你工作前两年,别人往往不会再讨论目标,往往讨论的是 to do。但是所有的 to do 都来自于一个目标。从来没有一个项目的 to do 有多么精准,一定有更优化的空间。这是我的第一优先级。

如果这个做不到,那我会在 to do 层面尽量拿到一个更好更优雅的方案。

当这两个层面都做不到的时候,我会往人上面去多做一些东西。能不能做到更贴心?别人需要什么样的东西?能不能为别人多考虑?

完整的知识体系——掌握底层原理才能举一反三

下面我详细介绍成为架构师所必须要学习的知识点:

针对以下学习方向我们有自己的高清思维方向导图以及阿里架构师讲解的架构视频分享(包括高可用,高并发,spring 源码,mybatis 源码,JVM,大数据,Netty 等多个技术知识的架构视频资料和各种电子书籍阅读)

一、分布式架构

分布式架构是 分布式计算技术的应用和工具,目前成熟的技术包括 J2EE, CORBA 和.NET(DCOM),这些技术牵扯的内容非常广:

分布式专题

二、团队协作开发

1、Maven

在如今的互联网项目开发当中,特别是 Java 领域,可以说 Maven 随处可见。Maven 的仓库管理、依赖管理、继承和聚合等特性为项目的构建提供了一整套完善的解决方案,可以说如果你搞不懂 Maven,那么一个多模块的项目足以让你头疼,依赖冲突就会让你不知所措,甚至搞不清楚项目是如何运行起来的

2、Git

一个专业的程序员,怎么能不掌握 Git 呢?版本控制领域,已经发展了一段时间,从古老的 CVS,到 SVN 集中式管理,再到现在的 Git。由于 Git 的分布式、everything is local、分支等诸多特性,让越来越多的项目开始从 SVN 迁移到 Git 进行管理。

3、Jenkins

Jenkins 是一个开源的持续集成工具,应用 Jenkins 搭建持续集成环境,可以进行自动构建、自动编译和部署,非常方便。

在服务器比较少的情况下,Jenkins 的优势并不明显,但是随着项目发展,服务器数量的增加,Jenkins 的优势就会凸显出来,可以很好的提高效率,减少很多人工操作。

公司的项目自动自动化部署是采用 Jenkins,并且编写自动构建的 shell 脚本。

由于项目是前后端分离,前端和后端都是单独部署的, 后端 采用 JAVA 编写,使用 Maven 管理多模块和项目依赖, 前段使用 npm 管理项目组件依赖, webpack 进行打包。

4、Sonar

Sonar 是一个用于代码质量管理的开源平台,用于管理 Java 源代码的质量。通过插件机制,Sonar 可以集成不同的测试工具,代码分析工具,以及持续集成工具,比如 pmd-cpd、checkstyle、findbugs、Jenkins。通过不同的插件对这些结果进行再加工处理,通过量化的方式度量代码质量的变化,从而可以方便地对不同规模和种类的工程进行代码质量管理。

同时 Sonar 还对大量的持续集成工具提供了接口支持,可以很方便地在持续集成中使用 Sonar。

此外,Sonar 的插件还可以对 Java 以外的其他编程语言提供支持,对国际化以及报告文档化也有良好的支持。

团队协作开发

三、微服务架构

1、微框架

微服务架构(MSA)是一种架构概念,旨在通过将功能分解到各个离散的服务中以实现对解决方案的解耦。你可以将其看作是在架构层次而非获取服务的类上应用很多 SOLID 原则。 用通俗的话来讲,就是为了高度解耦软件之间的依赖性,使每个独立的模块都能够单独测试,单独运维,最大限度的提高软件的开发流程。

2、Docker 虚拟化

Docker 有着小巧、迁移部署快速、运行高效等特点,但隔离性比服务器虚拟化差:不同的集装箱属于不同的运单(Docker 上运行不同的应用实例),相互独立(隔离)。但由同一个库管人员管理(主机操作系统内核),因此通过库管人员可以看到所有集装箱的相关信息(因为共享操作系统内核,因此相关信息会共享)。

微服务架构

四、性能优化

性能优化,简而言之,就是在不影响系统运行正确性的前提下,使之运行地更快,完成特定功能所需的时间更短。性能问题永远是永恒的主题之一,而优化则更需要技巧。

性能优化

五、开源框架源码分析

源码主要功用有如下 2 种作用:

1.生成目标代码,即计算机可以识别的代码。

2.对软件进行说明,即对软件的编写进行说明。为数不少的初学者,甚至少数有经验的程序员都忽视软件说明的编写,因为这部分虽然不会在生成的程序中直接显示,也不参与编译。但是说明对软件的学习、分享、维护和软件复用都有巨大的好处

我们在写程式时,有不少时间都是在看别人的代码。

例如看小组的代码,看小组整合的守则,若一开始没规划怎么看,不管是参考也好,从开源抓下来研究也好,为了了解箇中含意,在有限的时间下,不免会对庞大的源代码解读感到压力。

开源框架解析

六、电商项目实战

无需赘述,如果没有实战经验,如何成为一名架构师?

B2C 商城实战

七、并发编程

从 Java 基础接触多线程,到分布式架构环境下的高并发访问,并发编程充分利用好各个服务器处理器,以最高的效率处理各个任务协同有序工作。透彻理解锁的应用。

 

并发编程

八、设计模式

作为一个程序员,如果你追求的不仅仅是 crud,那么设计模式是你必须要学会的。

想要进步,看知名项目的源码是学习的重要途径,但如果你不懂设计模式,你在看源码的过程中将会异常的煎熬。你根本看不懂作者的意图和代码的逻辑

只有学会了设计模式,你才能更进一步。万丈高楼平地起,不要急躁。为了啃 spring 的源码,jdk 的源码,你必须沉住。吃了设计模式。

设计模式

资料已整理成文档,需要获取的小伙伴可以直接转发+关注后私信(学习)即可获取哦

以上,就是一整个项目的流程清单,以一步一个脚印的经历总结,不涉及具体语言代码,但是思路都是相通的,希望对你有帮助!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/68551.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

基于主成分分析的支持向量机入侵检测系统

基于主成分分析的支持向量机入侵检测系统学习目标:学习内容:A. 数据集分析B. 主成分分析 (PCA)--降维C. 支持向量机 (SVM)核函数数据集预处理--转换数据集预处理 --特征缩放算法过程核函数对比总结不足参考论文申明: 未经许可,禁止…

ESB产品Oracle数据库升级说明

ESB企业服务总线平台作为支撑企业综合集成的产品,在应用集成、数据集成、数据治理等解决方案都发挥着非常重要的作用。随着产品和解决方案的不断优化和升级,ESB企业服务总线平台功能需要逐步进行完善,不断提升产品功能的完备性、易用性和全面…

Github最新霸榜,Alibaba架构师手写的分布式系统核心原理手册

前言: 分布式的重要性就不需要我再强调了吧,它现在已经是大厂面试的“常驻嘉宾”了 前几天有粉丝在后台跟我吐槽:鑫哥,我觉得现在的风气真的变了,之前只觉得网上的情况是个例,结果自己就遇到了很多次&…

东方甄选、交个朋友迎头而上,云集不进则退

配图来自Canva可画 社交电商、会员电商、精选电商,多个定位描绘出云集的“求变史”。 2015年前后,社交电商概念崛起,拼多多靠“砍一刀”、“拼团”快速成长,云集也学着借助社交平台微信的传播途径,通过社交互动、用户…

【论文笔记】DEEP FEATURE SELECTION-AND-FUSION FOR RGB-D SEMANTIC SEGMENTATION

论文 题目:DEEP FEATURE SELECTION-AND-FUSION FOR RGB-D SEMANTIC SEGMENTATION 收录于:ICME 2021 论文:Deep Feature Selection-And-Fusion for RGB-D Semantic Segmentation | IEEE Conference Publication | IEEE Xplore [2105.04102]…

[附源码]Python计算机毕业设计Django学生宿舍维修管理系统

项目运行 环境配置: Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术: django python Vue 等等组成,B/S模式 pychram管理等等。 环境需要 1.运行环境:最好是python3.7.7,…

仿QQ音乐(HTML+CSS)

🎉精彩专栏推荐 💭文末获取联系 ✍️ 作者简介: 一个热爱把逻辑思维转变为代码的技术博主 💂 作者主页: 【主页——🚀获取更多优质源码】 🎓 web前端期末大作业: 【📚毕设项目精品实战案例 (10…

[安装] Doris集群搭建环境

参考文献 参考链接 推荐指数 Doris集群安装部署(详细) [火][火][火][火][火] Doris学习笔记之数据表的创建 [火][火][火] doris官网0.15版本的安装部署 [火][火][火][火][火] Doris0.15升级到1.1.1 [火][火][火][火][火] [说明] Doris使用…

7个有用的Pandas显示选项

Pandas是一个在数据科学中常用的功能强大的Python库。它可以从各种来源加载和操作数据集。当使用Pandas时,默认选项就已经适合大多数人了。但是在某些情况下,我们可能希望更改所显示内容的格式。所以就需要使用Pandas的一些定制功能来帮助我们自定义内容…

Word控件Spire.Doc 【图像形状】教程(13): 如何在C#中对齐word文档上的形状

Spire.Doc for .NET是一款专门对 Word 文档进行操作的 .NET 类库。在于帮助开发人员无需安装 Microsoft Word情况下,轻松快捷高效地创建、编辑、转换和打印 Microsoft Word 文档。拥有近10年专业开发经验Spire系列办公文档开发工具,专注于创建、编辑、转…

poi-tl实现对Word模板中复杂表格的数据填充

文章目录前言what poi-tlwhy poi-tlHow poi-tl1. 版本问题2. 集成和使用3. SpringEL表达式总结前言 开发时, 我们有时需要进行word类型表格导出, 而对于表格操作. 我们一般可能会倾向于使用 poi 进行操作. 但poi操作比较复杂, 所以就在寻找一种可以快速将内容填充到表格中的工具…

yolov7配置与训练记录(二)

yolov7配置与训练记录(一) 已经完成了环境的配置,下面开始文件内部的操作 yolov7官方下载地址为 git clone https://github.com/WongKinYiu/yolov71 将下载好的预训练权重放在yolov7-main/weights内 需要在yolov7中新建weights文件夹(也是为了方便管理权重文件) 测试 pyth…

单调队列算法总结

背景 单调队列,即为单调递减或者单调递增的队列。队列中的元素只能在队尾入队、从队首或者队尾出队。 单调队列的基本实现就是维护一个双向队列,只有当一个元素是当前最值、或者可能成为最值时才保留,否则出队。 单调队列通常用来解决在滑…

NR 大规模天线设计--1

参考《无线系统设计与国际标准》 概述 空间自由度是多天线系统获得性能增益的源泉。随着有源天线技术理论的出现, 为MIMO维度的扩展奠定了理论基础,有源天线技术在商用移动通讯领域的发展, 对天线的进一步扩展,尤其对信道垂直维…

Java常用API

Java常用API什么是API?Object类的作用:Object类的常用方法:Object的toString方法:Obiect的equals方法ObiectsStringBuilderMathSystem类概述BigDecimal什么是API? 1.API应用程序编程接口。 2.简单来说:就是Java帮我们…

JAVA中变量与常量

文章目录0 写在前面1 变量1.1 声明变量1.2 变量初始化2 常量3 写在最后0 写在前面 所有程序设计语言一样,Java 也使用变量来存储值。常量就是值不变的变量。 1 变量 1.1 声明变量 格式 类型 变量名; 例如: int index; double salary; long earthPop…

华为云发布CodeArts Req需求管理工具,让需求管理化繁为简

摘要:华为云正式发布CodeArts Req,这是一款自主研发的软件研发管理与团队协作工具,旨在助力企业大规模研发转型成功,释放组织生产力。本文分享自华为云社区《华为云发布CodeArts Req需求管理工具,让需求管理化繁为简》…

代码随想录刷题day56 583. 两个字符串的删除操作;72. 编辑距离;编辑距离总结篇

代码随想录刷题day56 583. 两个字符串的删除操作;72. 编辑距离;编辑距离总结篇 关于编辑距离的一些题目。 583. 两个字符串的删除操作 583. 两个字符串的删除操作 - 力扣(Leetcode) 化简这一步不容易想到。原理就是两个都删除…

华为云大数据BI赋能企业数字化发展

企业在数字化转型过程中面临着不少挑战,比如数据整合能力有限、不足的需求快速响应能力、缺乏数据管理机制和保障、自建分析平台成本高等等。所以各大企业都希望通过一个大数据智能系统来全方位帮助企业处理数据分析,做好智能决策。因此,对于…

基于SOPHON TPU架构实现 Faiss 的两个查询接口

文章目录1. Faiss 简介2. 距离度量3. 在 Sophon TPU 上的接口实现3.1 Sophon TPU3.2 indexflat 实现3.3 indexPQ 实现 1. Faiss 简介 Faiss 库是 Facebook 开发的一个用于稠密向量相似性搜索和聚类的库,该库包含有诸多向量相似性搜索的算法。向量相似性搜索是将一…