来自一个双非Java社招经历
17年毕业 工作四年+了
回首这四年感觉真的是命途多舛啊
很普通的二本学校 很普通的一个学生 我毕业的时候挂了23.5个学分
差点清考不了 侥幸拿到了学位证。感觉我唯一一次欧皇经历
17年校招 我当时什么也不会 狂刷面试题
去了好未来工作,不过干了几个月后,我摸鱼太严重了 ***掉
在家休息了一段时间, 去了水滴互助公司。
工作了块一年 也***掉了。欲哭无泪。。
之后19年左右面试拿到了小米 360的offer 选择去了小米
有一说一,小米的工作强度、工作休息 真的很舒适
如果你base比较高,或者没什么想法 完全可以去小米
我在小米边缘互联网部门 10点-10点半上班 晚上七点半-8点走
但是小米的缺点就如脉脉上很多人说的一样。基层对中层、上层的规划想法一无所知
用个人的感觉来说 就是盲人摸象 你在部门摸到哪里 才感觉到部门的事情或者职责
用我的话来说 就是 混沌
20年因为疫情没有普调 晋升也很少 内部也没有正式邮件下发告知。
21年倒是有制度明确了,但是21年都快结束了才告知。很多人因为绩效无法参与晋升和普调
我在这里两年没有涨薪 真的扛不住了
如果你们base高 我还是推荐去的 时薪真的超高
因为无法晋升 以及预感今年普调不多 七月20号准备学习 顺便面试 中途面了十来家 上海\深圳岗位
1. 小红书 基础架构部 2面 + hr面 聊了薪资后 没后续了 大小周 可能我薪资要高了 26 * 15
2. 去哪儿网 机票事业部 2面 + hrbp 聊了薪资后 感觉在hrbp那里应该挂掉了 10-10-5工作时长
太卷了 让我通过的话我也太会去 如果有同学去 可以考虑要高一点
3.喜马拉雅 组织效能 聊了薪资是27 *15 最后被告知 架构调整
4.顺丰科技 面了两个部门 可能有个部门不招人吧 所以一面就挂掉了 另外有个部门招人 拿到了26以上的
5.虾皮 两面技术面 + 一轮人事 进度很快 收到了offer call
还有太多太多了面试了 基本凉了或者没后续
个人介绍上习惯这么描述
1. 首先讲自己目前所在公司所在部门做的什么 岗位
2. 介绍自己在哪个部门 哪个团队 做什么事情
3. 最后总结这段时间在部门承担的职责 以及使用的技术栈
感觉公司的面经感觉基本大同小异
1. 了解Java常用的数据结构 最经典的是hashmap 为什么用链表 为什么链表太长要用红黑树 为什么要用concurrenthashmap
很多公司都会问 从一个点 跟着数据结构走 会引申出很多问题 引申出对应的数据结构
这方面真的没什么好学习的了,只能疯狂刷八股文
2. jdk1.8和1.7里面 hashmap的区别 以及concurrenthashmap区别
3. concurrenthashmap如何保持保持线程安全的
4.讲解一下你对线程安全的理解
我个人是这么理解的 多线程的情况下 代码能按照单线程的预期顺序执行
5.通过线程安全的概念 会牵扯到锁相关知识
jvm里面的锁就两种 synchronized + lock类库
记得去关注下这两者的使用场景 以及底层区别
6.牵扯到锁之后 说不定会牵扯到无锁 偏向锁 锁升级这些
7.有的面试官会问你工作中用到了多线程吗
1. 当前分布式网络中,我们的应用基本是web服务 web服务本身就是多线程 我们的controller就是一个多线程情况下的线程安全的类
2. 线程池 针对校招来说 可以说自己配置过一个异步线程池或者用线程池执行过任务
Java方面的知识实在是太多太多了
这方面真的没什么好面经了, 大家多去刷八股文 多去看别人的面经
当你收集的点多了 你会发现它们会发散成一个面 一个整体
后端常用中间件问题
因为是做web开发 工作中常用redis + rocketmq + mysql 做 缓存 异步 存储
关于redis作用
面试不会简单的问你知道哪些数据结构
肯定会问你怎么使用
即便校招你没怎么接触 建议你多看业务代码 一定会发现它的很多作用的
个人工作中 最常用 1. 计数器 2. redis 哈希缓存 3. 分布式锁 4. 排行榜功能
至于为什么用到这些 大家最好也去深究下
很多面试官 不仅会问你正常情况怎么用 也会反问你异常情况下怎么办
我个人被问得最多的几个问题
1. 当集群数据被转移了 我们的应用会怎么发生什么
redis客户端针对这种问题 都会在底层做了一层封装 会被server告知数据转移了
重新去获取server的最新拓扑结构 刷新到自己的应用中
2. 分布式锁失效怎么办
有的人可能会为这个锁又是定时刷新 又是续命
个人这么回答 用分布式锁主要是为了解决高并发冲击
相当于在接口入口 或者业务层做了一层拦截
本身是不可靠的 我们底层最好还是唯一索引 有限状态机 在底层数据保证
redis这方面我也不知道如何介绍起,感觉大家还是得去刷
推荐redis技术内幕 这本电子书 至少在大体结构 常用功能 常用作用 讲解的很清楚的
消息队列相关知识
这方面工作太忙了 学习的比较少 个人感觉频次比较高的几个问题
1. 了解kafka/rocketmq拓扑结构 这样你心中会有一个大体的结构 后续学习也方面去了解每个点的作用
2. 消息队列如何防止丢失
3. 消息丢列如何防止重复消费 这个问题十有***是逗你玩的 因为 消息队列不保证消息不重复发送
由消费应用 自身去解决
4. 消息队列如何做到消息有序 这个问题也大概率考验你有没有思考 mq也不保证消息有序 当然 不一定无序
5. 消息队列在代码中用处 很多面试官看你吹了一大堆 最后会来个这样的问题 你吹的再厉害 要是说不出场景 一眼就被识破了
1. 一些异常业务对接响应上报 2. 行为数据上报 3.与一些服务做上下游对接
大家好好思考下吧
我个人在消息队列没怎么去关注 不过感觉面试官基本也不会去深入研究它
不过大家还是多了解一些吧
最后
毕竟每个面试官出题点 着重点不一样,我也无法全部描述出个人经历
关于校招 你会的越多越好,大家多去刷八股文 刷经典书籍
我个人当时做了一个markdown备忘录 现在还在不定时刷新
好记性不如烂笔头
关于社招
该会的都会 别显得太牛逼了
你这么牛逼 面试官还怎么混?记得藏拙 别回复的太快 否则人家看你这么牛逼
把你招进去 他说不定会***掉
关于找工作
这是一份工作而已 很多时候就和谈恋爱一样
你看中它了 它没看重你
它看中你了 你嫌弃它
所以 情绪上可以期待 但不能偏执。
我之前面试360 一眼就看中我了。
二面就和我聊了几句就说100%给我发offer 。
所以 各位同学可以吸取教训做复盘 但别往心里去
也许一切都是有着命中注定的安排
关于薪资
大家大胆要 别怂 很多hr是没有谈薪水的权利得 只要你对自己有信心 就大胆点
和资本家别客气了 别真把自己当他们的hxd了~
不过不能变现的期权股票都是废纸 值得深思
最后一句
有没有外企内推啊。偏向上海Java
我想去躺平了。。。