当前位置: 首页 > 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;又怕投入过高、不达预…...

微信小程序云开发平台MySQL的连接方式

注&#xff1a;微信小程序云开发平台指的是腾讯云开发 先给结论&#xff1a;微信小程序云开发平台的MySQL&#xff0c;无法通过获取数据库连接信息的方式进行连接&#xff0c;连接只能通过云开发的SDK连接&#xff0c;具体要参考官方文档&#xff1a; 为什么&#xff1f; 因为…...

UR 协作机器人「三剑客」:精密轻量担当(UR7e)、全能协作主力(UR12e)、重型任务专家(UR15)

UR协作机器人正以其卓越性能在现代制造业自动化中扮演重要角色。UR7e、UR12e和UR15通过创新技术和精准设计满足了不同行业的多样化需求。其中&#xff0c;UR15以其速度、精度及人工智能准备能力成为自动化领域的重要突破。UR7e和UR12e则在负载规格和市场定位上不断优化&#xf…...

多模态大语言模型arxiv论文略读(108)

CROME: Cross-Modal Adapters for Efficient Multimodal LLM ➡️ 论文标题&#xff1a;CROME: Cross-Modal Adapters for Efficient Multimodal LLM ➡️ 论文作者&#xff1a;Sayna Ebrahimi, Sercan O. Arik, Tejas Nama, Tomas Pfister ➡️ 研究机构: Google Cloud AI Re…...

html-<abbr> 缩写或首字母缩略词

定义与作用 <abbr> 标签用于表示缩写或首字母缩略词&#xff0c;它可以帮助用户更好地理解缩写的含义&#xff0c;尤其是对于那些不熟悉该缩写的用户。 title 属性的内容提供了缩写的详细说明。当用户将鼠标悬停在缩写上时&#xff0c;会显示一个提示框。 示例&#x…...

MinIO Docker 部署:仅开放一个端口

MinIO Docker 部署:仅开放一个端口 在实际的服务器部署中,出于安全和管理的考虑,我们可能只能开放一个端口。MinIO 是一个高性能的对象存储服务,支持 Docker 部署,但默认情况下它需要两个端口:一个是 API 端口(用于存储和访问数据),另一个是控制台端口(用于管理界面…...

手机平板能效生态设计指令EU 2023/1670标准解读

手机平板能效生态设计指令EU 2023/1670标准解读 以下是针对欧盟《手机和平板电脑生态设计法规》(EU) 2023/1670 的核心解读&#xff0c;综合法规核心要求、最新修正及企业合规要点&#xff1a; 一、法规背景与目标 生效与强制时间 发布于2023年8月31日&#xff08;OJ公报&…...

Vue 模板语句的数据来源

&#x1f9e9; Vue 模板语句的数据来源&#xff1a;全方位解析 Vue 模板&#xff08;<template> 部分&#xff09;中的表达式、指令绑定&#xff08;如 v-bind, v-on&#xff09;和插值&#xff08;{{ }}&#xff09;都在一个特定的作用域内求值。这个作用域由当前 组件…...

C++_哈希表

本篇文章是对C学习的哈希表部分的学习分享 相信一定会对你有所帮助~ 那咱们废话不多说&#xff0c;直接开始吧&#xff01; 一、基础概念 1. 哈希核心思想&#xff1a; 哈希函数的作用&#xff1a;通过此函数建立一个Key与存储位置之间的映射关系。理想目标&#xff1a;实现…...

Windows 下端口占用排查与释放全攻略

Windows 下端口占用排查与释放全攻略​ 在开发和运维过程中&#xff0c;经常会遇到端口被占用的问题&#xff08;如 8080、3306 等常用端口&#xff09;。本文将详细介绍如何通过命令行和图形化界面快速定位并释放被占用的端口&#xff0c;帮助你高效解决此类问题。​ 一、准…...

Linux基础开发工具——vim工具

文章目录 vim工具什么是vimvim的多模式和使用vim的基础模式vim的三种基础模式三种模式的初步了解 常用模式的详细讲解插入模式命令模式模式转化光标的移动文本的编辑 底行模式替换模式视图模式总结 使用vim的小技巧vim的配置(了解) vim工具 本文章仍然是继续讲解Linux系统下的…...