疫情后的新世界,你必须知道的趋势。晋升,跳槽必备的知识和认知!

XTDrone平台FAST-LIO2与ego-planner结合路径规划部署 之前做了XTDrone平台FAST-LIO2的部署现在将其结合ego-planner进行导航规划,之前查看教程是使用视觉进行定位导航的,现在重新学习。修改advanced_param_xtdrone.xml,这里有视觉信息,不修改会报错显示为输入视觉话题信息。怎么描述 ,感觉当时觉得很难的问题突然就给解决了,一顿复杂,最近勤更新吧,继续开始学习。还有一个想法就是两个rviz结合在一起启动,写了一个demo,融合的不太好感觉额。改为只使用雷达点云,这里仿真的话题是/scan。 阅读详情

写在开篇的思路

2022年对于我们每个人来说,健康地活着比什么都重要。受到疫情的影响,很多公司都过得比较艰难,裁员更是普遍,所以对大部分来说保住饭碗就很不错了,更别说什么跳槽晋升了。

但我似乎要比很多人幸运,双非出身,起点很低了,在看重学历的一众大厂中杀出一条血路。工作两年我就跳槽进入了苏宁,在苏宁待了3年,现在竟到了阿里。身边很多人都好奇,我究竟是怎么做到的?下面就来分享一下我这些年是怎么快速晋升的,希望能够给你带来一些启发和帮助吧。

本文主要分享4个点,可按需来阅读:

  • Share1:阿里Java岗面试题

  • Share2:苏宁开发三年,我如何积累经验?

  • Share3:5年开发经验,如何跳槽阿里?

  • Share4:如何提升阿里社招面试通过率?

Share1:阿里Java岗面试题

(1)Zookeeper 部分

CAP定理

ZAB协议

leader选举算法和流程

(2)Redis 部分

Redis的应用场景

Redis支持的数据类型(必考)

zset跳表的数据结构(必考)

Redis的数据过期策略(必考)

Redis的LRU过期策略的具体实现

如何解决Redis缓存雪崩,缓存穿透问题

Redis的持久化机制(必考)

Redis的管道pipeline

(3)Mysql 部分

事务的基本要素

事务隔离级别

如何解决事务的并发问题(脏读,幻读)?

MVCC多版本并发控制?

binlog,redolog,undolog都是什么,起什么作用?

InnoDB的行锁/表锁?

myisam和innodb的区别,什么时候选择myisam?

为什么选择B+树作为索引结构?

索引B+树的叶子节点都可以存哪些东西?

查询在什么时候不走(预期中的)索引?

sql如何优化?

explain是如何解析sql的?

order by原理

(4)JVM 部分

运行时数据区域(内存模型)

垃圾回收机制

垃圾回收算法

Minor GC和Full GC触发条件

GC中Stop the world

各垃圾回收器的特点及区别

双亲委派模型

JDBC和双亲委派模型关系

(5)Java 基础部分

HashMap和ConcurrentHashMap区别

ConcurrentHashMap的数据结构

高并发HashMap的环是如何产生的?

volatile作用

Atomic类如何保证原子性(CAS操作)

synchronized和Lock的区别

为什么要使用线程池?

核心线程池ThreadPoolExecutor的参数

ThreadPoolExecutor的工作流程

如何控制线程池线程的优先级

线程之间如何通信

Boolean占几个字节

jdk1.8/jdk1.7都分别新增了哪些特性?

Exception和Error

(6)Spring 部分

Spring的IOC/AOP的实现

动态代理的实现方式

Spring如何解决循环依赖(三级缓存)

Spring的后置处理器

Spring的@Transactional如何实现的?

Spring的事务传播级别

BeanFactory和ApplicationContext的联系和区别

(7)其他部分

高并发系统的限流如何实现?

高并发秒杀系统的设计

负载均衡如何设计?

由于篇幅原因,为了避免影响到大家的阅读体验,在此只以截图展示部分内容

Share2:苏宁开发三年,我如何积累经验?

(1)善于利用碎片时间,学习提升自我

从初级程序员升到资深开发,没有别的捷径可走,从始至终我都奉信:进步得靠学习,学习得靠时间堆砌。现在互联网行业基本上都是996趋势,程序员加班情况更为明显,所以利用碎片时间来学习,才是提升自己最合适的方式。

先算算我个人的学习时间账(可参考,可借鉴):

每天早上起床后,大概30min(上厕所,吃早餐,通勤等)

每天上班时,利用别人划水的时间搜一些技术资料,逛逛技术博客,约30min。

晚上通勤、吃饭(这个阶段我一般会休息+娱乐来调整自己状态,刷刷微博、朋友圈)

晚上到家后,不管再累都会抽出1~2个小时来学习,看书+看视频。

*这样计算下来,一天大概平均在2~3小时,一周5天至少10个小时,不包括周末。

(2)解决Bug积累经验(提升自己优化能力)

论坛上流行一种说法:大部分的程序员都是通过BUG来积累经验的,你解决的每一个BUG都是你的经验。

实际上,这观点并不在强调BUG的重要性,而是意味着程序员可以通过改Bug来提升自己的优化能力,但这个“改”就非常关键了。

如何“改”?

我在开发过程中,总会遇到大大小小的问题,在遇到问题时,我首先考虑的是凭自己个人的能力去解决,会看一下相关的源码,或者Google一下相关的资料或技术博客。如果问题太大,实在解决不了,就会去请教大佬,不会纠结来纠结去,浪费时间还没效果,耽误自己的项目进度。请教大佬也有讲究,不是让他直接帮你解决好问题,而在是建议或思路的基础上自己去思考。

另一层意思则是需要我们主动地去提升自己的优化能力了。我在写代码的过程中,会主动地引入面向对象思想和设计模式;会考虑性能优化(如何让sql语句更快,如何让虚拟机内存性能更好);在“单机版”程序的基础上问自己,如何搭建集群?如何利用现有的面向集群的组件?(比如可以用Eureka搭建服务治理的集群,在集群中用Ribbon做负载均衡)

最后,技多不压身,还要学一些redis,消息中间件,JVM调优,MySQL优化以及Spring Cloud方面的内容。

(3)参与开源项目

其实,在很多面试攻略和分享中,我们都能get到一个信息:参与过开源项目的面试者往往更吃香,更容易获得offer。

那么,为什么参与过开源项目的程序员会更吃香更抢手呢?

大型的开源项目几乎都是大型团队构建的,且非常复杂,由此可以推断出你个人的能力和素质都是过关的;

开发开源项目,说明个人的综合能力得到极大提高,这些能力包括“书面沟通能力”、“了解如何挑选和协商要处理的事情”、“完善Git流程/GitLab流程”、“理解语言语法”等等;

其他:建立线上声誉、保持个人的进步的动力等等。

(4)提升自己的软实力,让自己更专业

按照我个人的理解来说,初级程序员更像学生,而高级程序员则需要拥有“独当一面”的能力,而这个过渡是需要时间的,也是我前两年来努力的方向之一。

提升自己的软实力,成为更专业的程序员:

要学会积极主动沟通;

提升自己解决问题(bug)的能力,积累解决问题(bug)的经验;

协调(扯皮)的能力:工作方面积极主动协调部门;

学会合作,一起完成一个任务或目标。

Share3:5年经验如何跳槽阿里?

Step1:知己知彼(了解岗位职责,规划职业成长路径)

①岗位职责

求职时,我们往往更注重简历,却忽略了“岗位职责”这个关键词,实际这往往也会影响到我们的面试结果。

俗话说“知己知彼,百战不殆”,岗位职责非常清晰明确地标注了应该干什么,怎么干,干到什么标准,对于程序员来说,技术掌握程度以及之后的开发内容都要了解清楚。

随便找的公司为例,就更不用说BAT一线大厂了

②成长路径

在第一次正式工作后,我就非常认真仔细的思考过自己日后的发展方向,实际上程序员的成长轨迹(晋升路径)越早确定越好。程序员的方向大致分为技术岗和管理岗,而这两个方向所看重的能力还是有很大本质区别的。

成长路径如下:

管理岗:初做者→技术经理→技术总监→副总裁→总裁

技术岗:初做者→高级工程师→技术专家→领域专家→领域权威

Step2:制定目标(制定明确的、可衡量的、可达到的、有时间限制的目标)

在职场中,一定要制定自己的的目标,这样才不免被沦为“咸鱼”,想要快速晋升,就得从目标下手,目标需要满足SMART原则:

具体的(Specific)

可以衡量的(Measurable)

可以达到的(Attainable)

具有相关联性的(Relevant)

有明确的时间截止的(Time-based)

简单来说,我的操作就是将自己的目标进行阶段性的拆分,比如我1-3年需要达到一个什么阶段,3-5年要达到什么阶段,然后在这个阶段里继续进行拆分,树立一个一个小目标,然后构成一个大目标,总目标,这样就会容易达到得多了。

Step3:善于思考(培养逆向思维、优化思维)

不想机械式的码代码,快速晋升之道首先就要转变自己的思维,要开始慢慢调整,善于思考一些问题,培养逆向思维和优化思维。

所谓的逆向思维,就是要多问自己为什么?如:

为什么需要这些数据?

为什么要做这些事?

为什么要做总结?

为什么要做规划?

为什么要做代码审核?

而优化思维,则是把事情做得更好,即使是繁琐杂事,也有优化的空间,包括效率和效果,任何事都是有优化空间的,缺少的是发现的眼睛。

Share4:如何提升阿里社招面试通过率?

(1)准备简历

面试是会根据简历来进行对你提问的,尤其是对于开发人员来说,看到你的项目经历后,或多或少都会问相关的问题,甚至一线互联网公司会针对项目进行提问,所以准备简历这一环节就尤为重要。

准备简历时,一定要真实,简历作假是职场大忌,切记切记。其次,要分清楚“了解、熟悉、精通”三词的区别,对技术栈的掌握程度跟面试题难度密切相关。

当然,为了帮助各位能够顺利过了简历,我也准备了一些模板大礼包,包括我自己的个人简历也在里面,欢迎大家参考:

(2)尽量找内推

校招容易,社招难。这是一线互联网的普遍现象,对于应届生的要求相对来说还是比较宽松的,但对于有一定工作年限的人来说,技术要求就比较高了,因此很多中途想要进一线大厂的人都说社招实在太难了,简历都过不了。

那其实也是有一些“捷径”可走的,可以找一些内推机会,相对直接社招来说,几率大大提升了。

(3)对技术要掌握一定的广度和深度

既然是技术岗,那么企业对于技术掌握的广度和深度是有自己相应的要求的,学历在技术面前都显得没那么重要了,因此努力提升自己的技术水平是程序员的首要目标。

那么,技术要掌握到什么程度呢?特梳理了一下技术路线,如下图谱:

对于现在流行的一些技术框架,我又掌握得如何了呢?实际上,我是有一个记录学习心得,做学习笔记的习惯,所以我对一些技术也有自己的总结和经验。

Java核心成长笔记:

SpringBoot核心技术笔记:

SpringMVC开发核心笔记:

Spring源码深度解析:

Redis学习总结

4)面的是什么部门?面试的时候喜欢问什么?

在面试前,事先要清楚自己面试的是什么部门,要做好功课。比如,支付宝、蚂蚁金服这类的事业部,项目多与金融相关,淘宝、拼多多则是电商,这些区别也会影响面试的侧重点。

至于面试官喜欢问什么,则需要依靠平时的刷题来积累了,刷刷题,做到举一反三,对面试还是有很大的帮助的。

写在文末的箴言

读万卷书,行万里路。作为程序员,都说职业生涯到35岁就结束了,实际上大可不必相信这种年龄焦虑,35岁上的程序员也有不少,要不想被市场淘汰,首先你的有价值,你没有了价值,无论是什么职业都被社会淘汰的。

学习,永远不会辜负你,靠学习得到的,永远是你最宝贵的财富

MATLAB - 使用 RRT 进行挖掘机运动规划 本例演示了如何使用运动规划器在包含障碍物的环境中为挖掘机规划路径。在此示例中,您将以运动树的简化形式为挖掘机建模,然后使用基于采样的运动规划器确定挖掘机在存在障碍物的两个姿势之间的可行路径。在 Simscape™ 多体™ 模型中模拟结果。 阅读详情

相关推荐

为Codex添加任务完成提示音:提升开发效率的实用技巧

在自动化脚本开发和模型训练过程中,实时获取任务状态反馈是提升工作效率的关键。通过Hook机制,开发者可以在代码执行的关键节点注入自定义逻辑,实现各种自动化操作。Codex的Hook系统特别适合用于任务完成提醒,其post_execution节点能准确捕获执行结束事件。技术实现上,只需简单配置TOML文件并编写音频播放脚本,就能让系统在任务完成时自动播放提示音。这种声音反馈机制尤其适用于长时间运行的批量任务和模型训练场景,实测可提升30%以上的工作效率。结合动态音效选择和跨平台兼容方案,该技巧还能扩展为桌面通

weixin_26767391的博客 539

晋升之路经验总结分享,如何晋升,如何跳槽

2022年是多灾难的一年,对于我们每个人来说,健康地活着比什么都重要。受到疫情的影响,很多公司都过得比较艰难,裁员更是普遍,所以对大部分来说保住饭碗就很不错了,更别说什么跳槽晋升了。但今年的我,似乎要比很多人幸运,双非出身,起点很低了,在看重学历的一众大厂中杀出一条血路。工作两年我就跳槽进入了苏宁,在苏宁待了3年,现在竟到了阿里。身边很多人都好奇,我究竟是怎么做到的?下面就来分享一下我这些年是怎么快速晋升的,希望能够给你带来一些启发和帮助吧。本文主要分享4个点,可按需来阅读:Share1:阿里Java岗面试

JavaMonsterr的博客 440

ICC2 实战秘籍:create_workspace 命令全解析

必选项:工作区名称,这可是创建工作区的 “身份证”,必不可少。技术数据选项匹配:优先考虑用 -technology 直接加载技术文件,这是获取最新、最准确技术数据的首选路径;要是已经有合适的技术库了,那 -use_technology_lib 引用现有技术库也能快速上手。精度设置优先规则:技术文件自动配置排在第一位,能自动适配就别手动操心;要是自动配置不理想,那就显式指定 scale_factor;实在没要求,就用默认配置,但得清楚它的精度限制。

weixin_50820814的博客 1124

专科出身,2年进入苏宁,5年跳槽阿里!这些年是怎么快速晋升的?

写在开篇的思路 2020 年是多灾难的一年,对于我们每个人来说,健康地活着比什么都重要。受到疫情的影响,很多公司都过得比较艰难,裁员更是普遍,所以对大部分来说保住饭碗就很不错了,更别说什么跳槽晋升了。 但今年的我,似乎要比很多人幸运,专科出身,起点很低了,在看重学历的一众大厂中杀出一条血路。工作两年我就跳槽进入了苏宁,在苏宁待了 3 年,现在竟到了阿里。身边很多人都好奇,我究竟是怎么做到的?下面就来分享一下我这些年是怎么快速晋升的,希望能够给你带来一些启发和帮助吧。 本文主要分享 4 个点,可按需来阅

m0_50180963的博客 339

机器人控制算法九之 位姿描述与空间变换

机器人控制算法九之 位姿描述与空间变换

yohnyang的博客 1032

基于Vivado MIG IP核的DDR3读写实验(top_rom_ddr/ddr_top)

一、前言 关于Vivado MIG IP核详细配置可以参考我之前的文章:基于Vivado MIG IP核的DDR3控制器(DDR3_CONTROL) 关于MIG IP核的用户端的接口时序可以参考这篇文章:XILINX 的 MIG IP(非AXI4)接口时序以及控制 二、实验内容 本次实验的内容主要是通过MIG IP核向DDR3读写数据,DDR3的接口时序由ddr_top模块提供: ddr_top模块的数据来源是wr_fifo,wr_fifo的数据实际来自top_sd_photo模块(本实验仿真

耐心的小黑的博客 3027

专科出身,2年进入苏宁,5年跳槽阿里,论我是怎么快速晋升的?

我在开发过程中,总会遇到大大小小的问题,在遇到问题时,我首先考虑的是凭自己个人的能力去解决,会看一下相关的源码,或者Google一下相关的资料或技术博客。简单来说,我的操作就是将自己的目标进行阶段性的拆分,比如我1-3年需要达到一个什么阶段,3-5年要达到什么阶段,然后在这个阶段里继续进行拆分,树立一个一个小目标,然后构成一个大目标,总目标,这样就会容易达到得多了。而优化思维,则是把事情做得更好,即使是繁琐杂事,也有优化的空间,包括效率和效果,任何事都是有优化空间的,缺少的是发现的眼睛。

代码界的扛把子 981

Opencv项目实战:20 单手识别数字0到5

今天要做的是单手识别数字0到5,通过在窗口展示,实时的展示相应的图片以及文字。在这里,我提供一下识别更多数字的方法(0-10)。首先最简便的是双手识别,完全不用更改代码,把图片处理好就行了;其次,就是按照最上面的那张图片,参数figureup是一个长度为5的列表[0,0,0,0,0],你可以参照着手势将其打印出来,然后将其用if条件判断。当然,在我们这边最常见的还是华北手势表示数字,大家按照自己的习惯来就行。

m0_62919535的博客 2877

专科出身得我,2年进入苏宁,5年跳槽阿里,论如何快速晋升的?

写在开篇的思路 2020年是多灾难的一年,对于我们每个人来说,健康地活着比什么都重要。受到疫情的影响,很多公司都过得比较艰难,裁员更是普遍,所以对大部分来说保住饭碗就很不错了,更别说什么跳槽晋升了。 但今年的我,似乎要比很多人幸运,专科出身,起点很低了,在看重学历的一众大厂中杀出一条血路。工作两年我就跳槽进入了苏宁,在苏宁待了3年,现在竟到了阿里。身边很多人都好奇,我究竟是怎么做到的?下面就来分享一下我这些年是怎么快速晋升的,希望能够给你带来一些启发和帮助吧。 本文主要分享4个点,可按需来阅读: S

文章中资料均可获取,有需要请添加yunduoa2019即可 214

PIMPL 模式 以及Q_DECLARE_PUBLIC 与 Q_DECLARE_PRIVATE

在 C++ 中,PIMPL 模式通常通过将类的私有数据和实现放在一个单独的类中,然后在类的公共接口中使用指向该私有实现类的指针来实现。宏可以帮助在 Qt 的 PIMPL 模式中实现类的私有实现和公共接口的分离,提高代码的封装性和可维护性。宏的结合使用,我们可以实现类的私有性和封装,避免暴露私有实现的细节,同时提高类的可维护性和灵活性。:这一行声明了一个友元类,使得类的公共接口可以访问私有实现类的私有成员。:这一行声明了一个友元类,使得类的私有实现可以访问类的私有成员。是两个宏,用于实现 PIMPL 模式。

追赶时代的博客 846

智能车图像处理22-进阶篇14--小s的判断

这篇文章中主要讲述智能车图像处理中 : 小s的判断方法。

taiyuezyh的博客 2570

成功逆袭:外包—苏宁—阿里 论我是怎么快速晋升的?

写在开篇的思路 2020年是多灾难的一年,对于我们每个人来说,健康地活着比什么都重要。受到疫情的影响,很多公司都过得比较艰难,裁员更是普遍,所以对大部分来说保住饭碗就很不错了,更别说什么跳槽晋升了。 但今年的我,似乎要比很多人幸运,专科出身,起点很低了,在看重学历的一众大厂中杀出一条血路。工作两年我就跳槽进入了苏宁,在苏宁待了3年,现在竟到了阿里。身边很多人都好奇,我究竟是怎么做到的?下面就来分享一下我这些年是怎么快速晋升的,希望能够给你带来一些启发和帮助吧。 本文主要分享4个点,可按需来阅读: S

Java6888的博客 574

BAT007:批量为当前目录下的文件夹添加前缀或后缀

摘要:编写批处理程序,实现批量为当前目录下的文件夹添加前缀或后缀。

qq_31762031的博客 4052

谁说专科不配进大厂,2年进入网易,5年跳槽腾讯,论我是怎么快速晋升的?

写在开篇的思路 2020年是多灾难的一年,对于我们每个人来说,健康地活着比什么都重要。受到疫情的影响,很多公司都过得比较艰难,裁员更是普遍,所以对大部分来说保住饭碗就很不错了,更别说什么跳槽晋升了。 但今年的我,似乎要比很多人幸运,专科出身,起点很低了,在看重学历的一众大厂中杀出一条血路。工作两年我就跳槽进入了网易,在网易待了3年,现在竟到了腾讯。身边很多人都好奇,我究竟是怎么做到的?下面就来分享一下我这些年是怎么快速晋升的,希望能够给你带来一些启发和帮助吧。 本文主要分享4个点,可按需来阅读: S

javassb的博客 955

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

要不要跳槽,看完就懂了

一转眼,年就过完了。经历了魔幻的2020最难招聘季,终于要迎来2021的“金三银四”。估计不少“打工人”早已蠢蠢欲动。但领教过疫情的余威,经历过史上最难的地狱级求职季,尤其是对应届生求职受...

zouhui1003it的专栏 272

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

专科出身,论我是怎么快速晋升的?2年进入苏宁,5年跳槽阿里,我行你也行

写在开篇的思路 2020年是多灾难的一年,对于我们每个人来说,健康地活着比什么都重要。受到疫情的影响,很多公司都过得比较艰难,裁员更是普遍,所以对大部分来说保住饭碗就很不错了,更别说什么跳槽晋升了。 但今年的我,似乎要比很多人幸运,专科出身,起点很低了,在看重学历的一众大厂中杀出一条血路。工作两年我就跳槽进入了苏宁,在苏宁待了3年,现在竟到了阿里。身边很多人都好奇,我究竟是怎么做到的?下面就来分享一下我这些年是怎么快速晋升的,希望能够给你带来一些启发和帮助吧。 本文主要分享4个点,可按需来阅读: S

weixin_49723683的博客 295

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

专科出身,2年进入苏宁,5年跳槽阿里,论我是怎么做到的?

写在开篇的思路 2020年是多灾难的一年,对于我们每个人来说,健康地活着比什么都重要。受到疫情的影响,很多公司都过得比较艰难,裁员更是普遍,所以对大部分来说保住饭碗就很不错了,更别说什么跳槽晋升了。 但今年的我,似乎要比很多人幸运,专科出身,起点很低了,在看重学历的一众大厂中杀出一条血路。工作两年我就跳槽进入了苏宁,在苏宁待了3年,现在竟到了阿里。身边很多人都好奇,我究竟是怎么做到的?下面就来分享一下我这些年是怎么快速晋升的,希望能够给你带来一些启发和帮助吧。 本文主要分享4个点,可按需来阅读: S

Java_chain的博客 1381

年后要不要跳槽,看完就懂了

一转眼,2021年就要过完了。经历了魔幻的2021最难招聘季,终于要迎来2022虎年。估计不少“打工人”早已蠢蠢欲动。

软件自动化测试技术交流、资源分享 490
上一篇: async-profiler的使用与RocketMQ性能优化案例
下一篇: 1000道最新高频Java面试题,覆盖25个技术栈(多线程、JVM、高并发、spring、微服务、kafka,redis、分布式)从底层原理到架构!
Java技术那些事儿
博客等级 码龄5年 2306粉丝 2584原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值