当前位置: 首页 > news >正文

字节10年架构师职业发展经历,助你做好职业规划

一直以来程序员这一职业都给人高薪资的印象,近年来随着互联网行业的快速发展,程序员更是人满为患,然而很多人关注的却是程序员的薪资,而非职业本身。

一批批程序员进入工作岗位,但是很多人并没有对自己的职业生涯有清醒的认识和系统的规划,由此会在职业发展过程中遇到很多问题。

程序员是好职业吗?

虽然很多程序员总是调侃自己,但是这个问题我想对于大多数程序员都是肯定的,包括我自己。
不说什么改变世界的豪言壮语,单单就程序员本身的工作性质而言也是有无限魅力的:不用把太多的精力放在处理上下级、同事间的关系上,通过自己的敲敲打打做出产品本身就是一件很有成就的事。
当然,还有老生常谈的程序员的薪资,程序员确实是一个薪资相对丰厚的行业,特别对于刚走向社会的人来说,据说那些说不看薪资选职业的一般不是骗子就是富二代……
近几年程序员这一行业的薪资基本没出过年度薪资排行榜前五名,这就足以说明问题。

在此我分享一位在阿里任职的朋友的职业经历,看他是如何一步步稳步晋升的。职业规划、学习资料

第一阶段

第一阶段实际上对于程序员来说是第一个门槛,这个阶段将会决定你是否适合写代码,同时也会淘汰掉一批不适合写代码的人。在这一阶段,我们走出校园,迈入社会,成为一名程序员,正式从书本上的内容迈向真正的企业级开发。

第二阶段

第二阶段是第二个区分程序员的门槛。有些人在1-3年里,除了完成工作,在空余时间基本不会研究别的东西, 而那些热衷于研究各种技术实现细节、看了N多好书、写一些博客、在Github上分享技术、培养自己的架构师思维,这些人在五年后必然具备在技术上独当一面的能力并且清楚自己未来的发展方向,从一个CRUD码农逐步走向架构师,成为项目组中不可或缺的人物,甚至是团队核心人物的存在。

第三阶段

第三阶段考查的就是思考总结能力、代码审查、项目管理等综合能力。而大部分人都不能实现此目标,如果你有天赋,够勤学,那么恭喜你,下一阶段将是你的人生巅峰!

第四阶段

拥有前瞻能力、协调能力、管理能力和技术发展战略眼光这样的人,在公司基本担任的都是CTO、技术专家、首席架构师等最核心、最关键的职位,这对于自己绝对是一件荣耀的事,老板不光在经济上会有所侧重,整个技术团队都会唯你马首是瞻!

怎么样?这样的人生你是不是很向往呢?

我身边大部分的程序员,基本上都有想进大厂的梦想,说的高大一点是实现梦想,倍感荣光,实际上也是因为大厂的薪资待遇,也是一般小公司不能比拟的。在这里没有唯金钱论的意思。俗话说:“人往高处走,水往低处流”。在大的平台,你也会拥有更多的机会,更广阔的视野,去创造出更多得到可能性。而当这一切有希望成为现实时,又有谁能够抗拒呢?

笔者的这位阿里大牛朋友,也是从最基础得到CRUD一路做起,在项目中逐步实战,刻苦自学,有问题查阅相关书籍。而且那时候不比现在,随便上搜索引擎一查,海量知识笔记铺天盖地,如果你真有决心学习,现在的时代真的是最好的时代!

在这里笔者带来他的学习路线及笔记,希望能帮到有需要的朋友们。

Java基础架构

  • 认识SSM框架和Redis
  • Java设计模式
  • 认识MyBatis核心组件
  • MyBatis配置
  • 映射器
  • 动态SQL
  • MyBatis的解析和运行原理
  • 插件
  • Spring loC的概念
  • 装配Spring Bean
  • 面向切面编程
  • Spring和数据库编程
  • 深入Spring数据库事务管理
  • Spring MVC的初始化和流程
  • 深入Spring MVC组件开发
  • Spring MVC高级应用
  • Redis概述
  • Redis数据结构常用命令
  • Redis的一些常用技术
  • Redis配置
  • Spring缓存机制和Redis的结合
  • 高并发业务

MySQL技术精粹

  • MySQL架构介绍

  • MySQL权限与安全

  • 数据备份与还原

  • MySQL的高级特性

  • MySQL锁定机制

  • 使用MySQL Workbench管理数据库

  • SQL性能优化

  • MySQL服务器性能优化

  • MySQL性能监控

  • MySQL Replication

  • MySQL Cluster实战

  • 企业中MySQL的高可用架构

多线程与高并发

  • Java多线程技能

  • 对象及变量的并发访问

  • 线程间通信

  • Lock的使用

  • 定时器Timer

  • 单例模式与多线程

JVM实战调优

  • 初探Java虚拟机

  • 认识Java虚拟机的基本结构

  • 常用Java虚拟机参数

  • 垃圾回收概念与算法

  • 垃圾收集器和内存分配

  • 性能监控工具

  • 分析Java堆

  • 锁与并发

  • Class文件结构、装载系统

  • 字节码执行

由浅及深的提升充实自己,在工作中配合项目实战,效果真是事半功倍。

最后,我想提醒大家的是,提前做好职业规划固然重要,但是职业规划不是一成不变的,因为可能每个人在职业的每个阶段都会接触不同的领域,自己也会有不同的认知,自己的思维也会有所变化,所以,很可能会发现自己更适合的方向也说不定。

不过无论如何,我们要做的就是不断学习,不断提升自己,更早的关注职业规划,更早的给自己制定一份更适合自己的职业蓝图。

相关文章:

字节10年架构师职业发展经历,助你做好职业规划

一直以来程序员这一职业都给人高薪资的印象,近年来随着互联网行业的快速发展,程序员更是人满为患,然而很多人关注的却是程序员的薪资,而非职业本身。 一批批程序员进入工作岗位,但是很多人并没有对自己的职业生涯有清…...

ArrayList真的是因为实现了RandomAccess接口才能做到快速随机访问的吗

ArrayList和RandomAccess接口RandomAccess 接口Collections.binarySearch()源码总结RandomAccess 接口 首先,RandomAccess接口是什么,以下代码可见: public interface RandomAccess { }RandomAccess接口其实是一个标记接口,它只…...

OSI七层模型与物理层与设备链路层

目录 协议 举例 OSI七层模型 理解七层模型 以下为OSI七层模型数据逐层封装和数据逐层解封的过程 TCP/IP参考模型 数据包的层层封装与层层拆包 各层的数据以及协议 封装所用的协议的数字表示形式 物理层 模拟信号 模拟信号特点 数字信号 数字信号特点 数据通信模…...

Java8的Optional类的使用 和 Stream流式操作

Java知识点总结:想看的可以从这里进入 目录13.6、Optional类13.7、Stream13.7.1、Stream创建13.7.2、中间操作1、筛选2、切片3、映射4、排序13.7.3、终止操作1、遍历2、聚合3、匹配查找4、归约5、收集归集统计分组字符串拼接归约13.6、Optional类 Optional类是一个…...

Authorization Server 认证服务

Hi Auth HiAuth是一个开源的基于Oauth2协议的认证、授权系统,除了标准的Oauth2授权流程功能外,还提供了应用管理、用户管理、权限管理等相关功能。 在这个项目中你能够了解到如何基于spring-security-oauth2-authorization-server实现自己的Authorizat…...

研制过程评审活动(五)生产定型阶段

1. 生产定型阶段主要任务 生产定型的主要任务是对产品批量生产条件和质量稳定情况进行全面考核,以确认产品是否达到批量生产的标准。   需要生产定型的军工产品,在完成设计定型并经小批量试生产后、正式批量生产之前,进行生产定型。生产定型的条件和时间,由定委在批准设计…...

NCUT加权的NMF

矩阵定义 X:特征矩阵,矩阵的维度为体素数mx(指标数x被试数)n S:相似性矩阵,由特征矩阵的每一行计算皮尔逊相关得到mxm的方阵 D:度矩阵,度矩阵的对角线元素由相似性矩阵S对应的行和…...

从0开始的ios自动化测试

最近由于工作内容调整,需要开始弄ios自动化了。网上信息有点杂乱,这边我就按我的实际情况,顺便记录下来,看是否能帮到有需要的人。 环境准备 安装tidevice pip3 install -U “tidevice[openssl]” 它的作用是,帮你绕…...

vue3中使用jszip压缩文件

1、安装依赖 npm install jszip npm install file-saver --save 2、使用 <template><el-card class"mb15"><template #header><span>jszip</span></template><!-- 二维码容器 --><div id"qrCodeBox">&…...

React 虚拟DOM的前世今生

引文 通过本文你将了解到 什么是虚拟DOM&#xff1f;虚拟DOM有什么优势&#xff1f;React的虚拟Dom是如何实现的&#xff1f;React是如何将虚拟Dom转变为真实Dom&#xff1f; 一、前言 要了解虚拟DOM&#xff0c;我们先明确一下DOM的概念。 根据MDN的说法&#xff1a; 文档…...

Java环境变量配置

一、Path环境变量配置设置环境变量的值&#xff1a;C:\Program Files\Java\jdk-17\bin目前较新的JDK安装时会自动配置javac、java程序的路径到Path环境变量中去 &#xff0c;因此&#xff0c;javac、java可以直接使用。注意&#xff1a;以前的老版本的JDK在安装的是没有自动配置…...

超详细解读!数据库表分区技术全攻略

更多内容可以关注微信公众号&#xff1a;老程序员刘飞 分区的定义 分区是一种数据库优化技术&#xff0c;它可以将大表按照一定的规则分成多个小表&#xff0c;从而提高查询和维护的效率。在分区的过程中&#xff0c;数据库会将数据按照分区规则分配到不同的分区中&#xff0…...

Redis高可用集群方案

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 @[TOC](文章目录)主从复制哨兵模式(sentinel)Cluster集群在生产过程中,Redis不一定会单独部署。因为一旦redis服务因为某些原因导致无法提供数,那么redis就不可用了。那么实现redis高可用的方式就…...

企业微信机器人发送消息

前言 随着科技的发展,各企业公司的业务不断发展,那么就需要强有力的沟通软件,其中企业微信、钉钉的能力得到了大众的认可,今天这篇文章就讲其中的一个功能-调用企业微信机器人(下文简称应用)进行消息传递。它的好处有哪些呢?自然是可以让相关人员及时追踪任务进度。 一、…...

使用PHP+yii2调用asmx服务接口

一.创建服务端 1&#xff1a;创建一个ASP.NET web应用程序 2:选择空的模板 3&#xff1a;系统生成项目目录 4&#xff1a;右键项目-添加项-新建项 5&#xff1a;选择Web 服务&#xff08;ASMX&#xff09; 6&#xff1a;选择之后项目中会有一个Test.asmx服务程序&#xff0c;…...

【042】904. 水果成篮[滑动窗口]

你正在探访一家农场&#xff0c;农场从左到右种植了一排果树。这些树用一个整数数组 fruits 表示&#xff0c;其中 fruits[i] 是第 i 棵树上的水果 种类 。 你想要尽可能多地收集水果。然而&#xff0c;农场的主人设定了一些严格的规矩&#xff0c;你必须按照要求采摘水果&…...

Linux基础知识(一)

♥️作者&#xff1a;小刘在C站 ♥️个人主页&#xff1a;小刘主页 ♥️每天分享云计算网络运维课堂笔记&#xff0c;努力不一定有收获&#xff0c;但一定会有收获加油&#xff01;一起努力&#xff0c;共赴美好人生&#xff01; ♥️夕阳下&#xff0c;是最美的绽放&#xff0…...

Redis面试题

目录 Redis持久化机制:RDB和AOF Redis线程模型有哪些&#xff1f;单线程为什么快&#xff1f; Redis的过期键有哪些删除策略&#xff1f; Redis集群方案有哪些&#xff1f; redis事务怎么实现&#xff1f; 为什么redis不支持回滚&#xff1f; redis主从复制的原理是什么 …...

微服务之Eureka

&#x1f3e0;个人主页&#xff1a;阿杰的博客 &#x1f4aa;个人简介&#xff1a;大家好&#xff0c;我是阿杰&#xff0c;一个正在努力让自己变得更好的男人&#x1f468; 目前状况&#x1f389;&#xff1a;24届毕业生&#xff0c;奋斗在找实习的路上&#x1f31f; &#x1…...

日日顺于贞超:供应链数字化要做到有数、有路、有人

在供应链行业里面&#xff0c;关于“数字化”的讨论绝对是一个经久不衰的话题。 但关于这个话题的讨论又时常让人觉得“隔靴搔痒”&#xff0c;因为数字化变革为非一日之功&#xff0c;对于企业来说意味着投入和牺牲。企业既怕不做怕将来被淘汰&#xff0c;又怕投入过高、不达预…...

Js中blob、file、FormData、DataView、TypedArray

引言 最开始我们看网页时&#xff0c;对网页的需求不高&#xff0c;显示点文字&#xff0c;显示点图片就很满足了&#xff0c;所以对于浏览器而言其操作的数据其实并不多&#xff08;比如读取本地图片显示出来&#xff0c;或上传图片到服务器&#xff09;&#xff0c;那么浏览器…...

CTFer成长之路之任意文件读取漏洞

任意文件读取漏洞CTF 任意文件读取漏洞 afr_1 题目描述: 暂无 docker-compose.yml version: 3.2services:web:image: registry.cn-hangzhou.aliyuncs.com/n1book/web-file-read-1:latestports:- 80:80启动方式 docker-compose up -d 题目Flag n1book{afr_1_solved} W…...

制造企业为何要上数字化工厂系统?

以目前形势来看&#xff0c;数字化转型是制造企业生存的关键&#xff0c;而数字化工厂管理系统是一个综合性、系统性的工程&#xff0c;波及整个企业及其供应链生态系统。数字化工厂系统所要实现的互联互通系统集成、数据信息融合和产品全生命周期集成&#xff0c;将方方面面的…...

Facebook广告投放的正确姿势:玩转目标定位

如果你正在投放 Facebook广告&#xff0c;那么你一定有过这样的经历&#xff1a;明明设置了目标受众&#xff0c;但是广告却没有带来转化。在这方面&#xff0c;你可能忽略了一个很重要的因素——目标定位。想要打造高质量、高曝光率的 Facebook广告&#xff0c;如何才能成功实…...

思科C9115AXI-H型号AP上线C9800失败处理记录

问题描述 原先的AP故障&#xff0c;从DNAC上发现状态down。现场发现AP灯灭&#xff0c;端口不亮。随即定位为AP单点故障。暂时的处理方法为&#xff1a;更换新AP上线。更换完毕后发现绿灯亮后熄灭。进一步说明网线无异常&#xff0c;属于AP故障。 如果顺利&#xff0c;在DNAC上…...

WSO2通过设定Role来订阅对应的Api

WSO2通过设定Role来订阅对应的Api1. Add Role And User1.0 Add Role1.1 Add User 1.2 Add Mapping2. Upload Api2.1 Upload Three Apis2.2 Inspection3. AwakeningWSO2安装使用的全过程详解: https://blog.csdn.net/weixin_43916074/article/details/127987099. 1. Add Role An…...

使用 PyTorch+LSTM 进行单变量时间序列预测(附完整源码)

时间序列是指在一段时间内发生的任何可量化的度量或事件。尽管这听起来微不足道&#xff0c;但几乎任何东西都可以被认为是时间序列。一个月里你每小时的平均心率&#xff0c;一年里一只股票的日收盘价&#xff0c;一年里某个城市每周发生的交通事故数。 在任何一段时间段内记…...

操作系统(day12)-- 虚拟内存;页面分配策略

虚拟内存管理 虚拟内存的基本概念 传统存储管理方式的特征、缺点 一次性&#xff1a; 作业必须一次性全部装入内存后才能开始运行。驻留性&#xff1a;作业一旦被装入内存&#xff0c;就会一直驻留在内存中&#xff0c;直至作业运行结束。事实上&#xff0c;在一个时间段内&…...

Git commit 提交没有被远端分支合并,撤销本次commit

问题&#xff1a;今天修改代码&#xff0c;误把项目配置文件修改为本地数据库连接&#xff0c;需要撤销本次commit 记录。解决办法&#xff1a;第一步&#xff1a;使用git log 查看所有commit 记录。第二步&#xff1a;使用git show commitID 查看指定commit 文件修改记录。第三…...

Netty核心原理(线程模型、核心API)与入门案例详解

Netty核心原理&#xff08;线程模型、核心API&#xff09;与入门案例详解 文章目录Netty核心原理&#xff08;线程模型、核心API&#xff09;与入门案例详解Netty 介绍原生 NIO 存在的问题概述线程模型线程模型基本介绍传统阻塞 I/O 服务模型Reactor 模型单 Reactor 单线程Nett…...