←←←←←←←←←←←← 快!点关注
课程预习
课程内容分为三个模块
基础模块:
- 技术岗位与面试
- 计算机基础
- JVM原理
- 多线程
- 设计模式
- 数据结构与算法
应用模块:
- 常用工具集
- 常用框架
- 缓存
- 队列
- 数据库
综合模块:
- 系统架构设计
- 微服务架构
- 容器化
换工作面临问题
能力不错,却总被忽略
- 不知道简历怎么准备
- 工作年限
- 美观度
- 多分简历
- 不知道面试官考什么
- 社交门户侧重于大规模并发场景的应用和架构能力
- OTO行业侧重于综合能力考察
- 金融更喜欢逻辑缜密,对高可用安全领域有经验的候选人
- 校招更多对基础知识和逻辑思维方面的考察,以培养潜力考察为主
- 初中级工程师则需要多关注知识的广度,基础知识的应用
- 高级资深工程师需要深入理解基本原理,以综合能力考察为主
- 没有get到面试官的考察意图。如:问到是否使用某框架,实际是是问该框架的使用场景,有什么特点,和同类可框架对比一系列的问题。
- 不知道如何提升晋级?
- 学习首先有个框架
课程特色
- 全盘汇总:Java知识体现精细梳理
- 特近实战:面试官亲自教你拿Offer
- 潜规则:揭秘技术面试加分&潜规则
- 权威性:拉勾40W技术岗位大数据支持
课时1:技术人职业发展路径
1.1 工程师发展路径
技术序列:技术攻坚、架构知识、专业知识
- 工程师
- 高级工程师
- 资深工程师
- 技术专家
- 高级技术专家
1~3年内从工程师到高级工程师发展,夯实基础,重点提高工作基础能力,培养技术的深度和广度,对不同方向的新技术保持强烈的好奇心和学习心
3年以上资深工程师需要重点配音技术攻坚能力,疑难问题的排查,大型项目的工程拆分,技术品牌的塑造。具体工作包括,原理实现,注重框架能力的培养,大规模高并发场景,高可用可扩展措施和方案,业务的抽象和架构能力
管理序列:团队管理、项目管理、沟通协作
- 工程师
- 高级工程师
- 技术经理
- 技术总监
- 高级技术总监
偏向于团队把控,需要让团队形成技术战斗力,利用一切资源让团队完成作战目标,做好团队内和跨团队沟通工作,在实际工作中这两种并没有明显的边界,例如做管理不表示远离架构设计,技术专家也不是单兵作战。这两个方向的区分点在于工作方向的侧重点不同。
面试诀窍示例:同过往的经验来看,我对项目的整体规划、管理、推进比较感兴趣,在任务协调沟通方面也有过比较突出的表现,所以我的职业规划是成为一名职业的技术经理,以管理方向为发展目标。
1.2 常见技术岗位划分
1.3 面试岗位选择
公司&团队
- 大公司核心业务(首选)
- 小公司核心业务(1~3年)
- 大公司边缘业务(镀金)
- 小公司边缘业务(尽量不选)
岗位匹配度
匹配度与发展方向相吻合
1.4 常见面试流程
- 前置面试
- 电话面试
- 笔试
- 上机编程
- 技术一面
- 纯技术面(首选算法,例如排序、)
- 偏重于基础与实战能力
- 面试官是未来的同组同事
- 技术二面
- 纯技术面(项目能力、架构能力)
- 偏重算法、技术深度
- 面试官是未来直属leader
- 技术三面
- 半技术面(架构能力、技术敏感度、职业规划)
- 架构能力与发展潜力
- 面试官是部门技术leader
- HR面
- 非技术面
- 个人发展规划
- 价值观与薪资
- 各级领导
- 一般非技术面
- 没有原则性问题能都通过
1.5 面试前的准备工作
能力、心态、沟通
- 了解应试公司及岗位信息
- 系统复习基础知识
- 对原公司负责的项目进行梳理总结
- 学习典型架构案例
- 阅读常考考点源码
- 针对性准备加分项
提前准备一份自我介绍,自己的技术特长和职业优势
避免冷场,对于回答不上来的问题,提供解题思路,或者询问面试官是否可以换一个问题
注意细节,坐姿、表情、观察面试官反应
1.6 面试考察点
硬技能
- 基础知识
- 项目经验
- 架构能力
- 应用能力
软实力
- 逻辑思维
- 沟通协作
- 管理推进
- 学习思考
- 培养潜力
1.7 四类硬技能
基础知识
- 计算机基础
- 网络
- 操作系统
- 数据结构
- 算法
- Java
- JVM
- 语言特性
- 多线程
项目经验
- 项目描述
- 项目难点
- 项目问题
- 项目改进
应用知识
- 常用工具
- 排查类
- 协作类
- 保障类
- 系统类
- 常用框架
- Spring
- Netty
- Dubbo
- Motan
- Mybatis
- 队列
- 数据库
- 缓存
架构能力
微服务架构
- Docker
- ZK
- SC
- KBs
课时2:计算机与网络基础
2.1 知识点汇总
2.1.1操作系统(加粗为重点)
进程与线程
- 区别联系:进程是资源分配的最小单位,线程是程序执行的最小单位;进程使用独立的数据空间,线程共享进程的数据空间
- 线程调度:时间片轮转调度、先来先服务调度、优先级调度、多级反馈队列调度、高响应比优先调度
- 线程切换步骤:线程的上下文切换、线程切换的代价
- Linux下的IPC(进程间通讯)
- Pipe
- MessageQueue
- 共享内存
- UnixSocket
- Signal
- Semaphore
- 协程
Linux常用命令
- awk
- top
- netstat
- grep
- less
- tail
死锁
内存分页管理于Swap
任务队列于CPU Load
扩展知识点
- 内存屏障
- 指令乱序
- 分支预测
- CPU亲和性(affinity)
- Netfilter于iptables
2.1.2 网络知识(加粗为重点)
4/7层网络模型
TCP协议
- 建立链接三次握手