就业方向解析
# 目录
[toc]
# 前言
2023.9.27 初稿
本文主要针对**本科直接就业,和目前准备读研(以就业为目标导向)**的同学,我咨询了些多年开发经验的业内人士,结合我自身的想法见解,希望对于大家的就业求职的道路有所帮助
注:本文主要是分析国内就业及行业形势,国外形势与国内相差很多,请勿带入国外环境
本篇文章近万字,耗时十余天,如果本文对您有所帮助的话,还请点赞收藏关注加转发,谢谢
+++
2023.10.11 修改
第一次审稿,发现问题文章太过于主观,应该客观描述目前的环境现实,不应该过多带入自己的情绪想法
故修改如下,每个章节都会分为客观描述和主观看法,客观描述为主体部分,主观描述为可选部分,其中客观描述主要就是阐述目前的基本现状,理性上可以完全接收
主观部分为咨询的业内人士想法并且糅合我自身的见解,不管是业内人士还是我自己的看法都可能有失偏驳,不够全面,如果文件中出现任何问题或是纰漏,欢迎大家拍砖,但是我还是需要提前声明,本篇文章仅供参考
注:由于公众号无法跳转外链,这里我贴出个人网站对应文章地址,但是可能网络比较差,需要科学上网,移动端显示可能有问题,所以还是推荐公众号内阅读
且目前由于网站构建缓慢,我在考虑迁移网站架构,后面文章地址可能失效
文章地址:https://www.returntmp.top/pages/3725a8/
# 建议
# 语言方向
# Java
覆盖面极广,生态构建,中间件建设可以说是非常完善,非常适合业务复杂的场景,可以说是目前的万金油语言,同时上限也是比较高(这个问题我在 Golang 篇会讲到)
# Golang
其实 Golang 确实单就从性能方面确实,包括独特的协程机制,支持更高并发等方面确实很不错,但是这类语言对于国内而言体系生态不够完善,对于比较完善的业务系统绝大多数公司绝对是首选 Java,毕竟中间件之类的生态都很完善,可以快速开发,但是我们知道比如 Docker、k8s 这类云原生工具都是使用 Go 编写的,所以如果是做云原生二次开发的话 Go 是非常合适的(比如字节的普罗米修斯),或者是云原生运维
首先大家需要知道国内基本都是大厂在玩 Go,所以如果是对于春招来说目标 Go 开发岗就是对标大厂,但是其实大家有兴趣的话可以看看腾讯云开发官网的这篇文章 (opens new window)
注:以下为主观部分
我们知道字节是全面转 Go 的,但是这是因为字节对于音视频开发等领域需求强烈,然后 Go 又适合高并发 Web 服务和分布式系统开发,所以转换语言理所当然,但是其他企业业务没有如此的高性能需求的话,好像并没有必要转
还有就是前两天大家也看到 JDK 21 出来了,新推出了虚拟线程(Virtual Threads)功能,对标的就是 Go 最引以为傲的协程功能,可以极大提升高并发性能。只不过大部分公司不愿意升级 Java 版本就是了
在说这个语言的上限问题之前,我想插个题,之前在逛掘金的时候,看到位老哥的评论,我觉得很受益,下面和大家分享下
无论前端后端,如果最后的都转化为领域积累或业务思维,这个就是值得的,毕竟每个人都有干不动的那天,最好的结局就是脑子里充实的那些成事方法论。如此看来,其实花大时间去看框架源码去搞开源,去做监控等等性价比是最低的,这是真正的螺丝。相反,多去靠业务,如果有需要就往后端(为了熟悉业务) 走,积累领域知识和业务思维,将来即便是被裁,也能熟悉事务整个链条,独当一面。
其实老哥的意思就是说技术永远都是服务于业务,之前我记得乔布斯也是在发布会中表达过类似的观点。Golang 这个语言虽然性能优秀,但是受制于生态的原因,虽然在某些领域非常合适适用,但是在更广泛的业务当中并不是很适用,也就是所谓的业务受制于技术了,导致我们在向上走向架构师的时候会由于业务面过窄,领域知识不够而没有晋升机会
而 Java 就没有这种顾虑,但是其实绝大部分人很难做到架构层次,所以这层考虑其实可以忽略,所以 Go 仍旧还是比较不错的选择
# Python
胶水语言、非专业开发者首选
爬虫(黑灰产)、数据分析(同样还有 R 语言)、自动化测试
注:以下为主观部分
不多说,因为不可能将这门语言作为主力开发语言,基本只能辅助
# C / C++
对于 C 来说主要就是做嵌入式,或是做底层开发,驱动开发,包括目前的新能源汽车行业应用层开发
然后对于 C++ 来说的话主要就是写图形化引擎,游戏引擎之类的,或者是做音视频开发,这类对于性能效率比较高的场景,还有就是我们都很熟悉的客户端开发 Qt,PC 客户端的半壁江山基本都是使用 C++ 开发的
总之 C++ 领域跨度非常广,可适用业务也非常多
注:以下为主观部分
之前几年嵌入式其实并不是很热门,但是最近嵌入式势头很猛,各大培训机构也在抓紧做嵌入式的培训,甚至有人说嵌入式会卷成下一个 java,反正大家可以作为参考,也不要满目跟风
其实我个人来说是比较看好嵌入式,嵌入式这个行业,不会像互联网那样,井喷式发展,产能过剩,进而出现泡沫。嵌入式技术所面对的更多是电子产品,投入成本大,技术要求高,需要具有长远的规划,其中赚多少钱,发多少工资,招多少人,都需要根据产品的创新以及市场的需求来决定,所以市场一直处于平稳发展,没有出现互联网其他领域的各种泡沫
# C#
相信做过 .NET 开发或是做游戏脚本开发(Cocos2d,Unity 3D)的朋友对于 C# 肯定非常熟悉,首先要承认 C# 这门语言确实设计的非常不错,但是微软早期是不开源的(目前已开源),导致市场份额占有率在国内并不是很理想
注:纠正错误,我查看最新的编程语言排行报表,C# 已经快要逼近 Java 了
游戏脚本开发这里不详细说,后面对于方向分析会提到,这里主要讲的是其他方向
首先我们知道对于国内的顶尖互联网公司由于各种原因,大多都是不太喜欢使用微软技术栈,学习微软技术栈基本就意味着要到二三线城市的中小厂谋求职位
对于 C# 而言非游戏方向主要为桌面应用和后端应用,桌面应用不推荐,但是对于后端应用(aspnetcore (opens new window))还是可以的
注:以下为主观部分
这里值得说的就是大家对于微软 MVP 的理解(中国 MVP 最高峰时人数大概 200+) ,大家可能认为微软 MVP 都是技术比较牛的,其实这不太准确。虽然 MVP 不乏大牛,但是 MVP 评选主要是看社区贡献,例如发表博客、写书、讲课等,主要是免费的行为而不是商业行为。所以这也导致某些商业公司的大佬因为没有足够的时间贡献而无法评选。而且由于微软官方的监管不到位,导致有很多假冒微软 MVP 的人
除此之外,C# 还可以做的方向还有很多,可以是Web开发,可以是服务器软件开发,可以是手机APP开发,可以是 CRM,可以是搜索引擎,可以是操作系统,可以是数据库系统,可以是编译器,编辑器,差不多每种要求不同的工作岗位就是一个大致的发展方向,当然最核心的还是要熟悉 CLR
这里插个嘴,我总感觉 C# 顶尖使用者和其他语言使用者数量没有优势,但是似乎 C# 大佬的码龄都是非常长的,技术非常成熟,不知道是我的错觉还是真实情况
注:微软 MVP 是 JetBrains 特级授权用户,可以免费使用 JetBrains 产品
此处略过前端语言,后面方向解析会讲到,其他小众语言也不赘述,小众语言自己玩玩就好
# 方向解析
注:本章节适合对于目前方向比较迷茫,同时又没有特别喜欢的方向的同学阅读。对于目前已经明确确立方向,并且自己非常热爱该方向的同学,可以直接跳过本章节
# 安全
本章节全部是主观部分,仅供参考
总的来说,如果现在你现在准备实习招聘,而又没有网络安全经验,那么别入局
本身其实网络安全前景是不错,薪资其实也就还可以接受,但是由于网安是越老越吃香的行业,而且一般来说普通公司网安岗位非常少(专门做网安公司除外),比较找到合适岗位
# 前端
本章节全部是主观部分
前端可以说是所有方向里面最容易入行的方向,但是相对的也就意味着卷的人更多了
所以对于前端来说比较合适卷的方向,向源码卷,向架构卷
或者说前端入行之后可以转产品也是比较不错的方向,大家对于前端都比较熟悉,这里不详细讲
# 客户端
# Android
首先介绍几位安卓客户端领域开发的大佬,因为博主本人经常在掘金更文,所以比较了解掘金平台比较活跃的安卓开发 GDE(Google Developer Experts,截至 2023 年 7 月,中国安卓领域 GDE 仅有 9 位)
注:谷歌对于客户端开发认证相关标签主要有 Android,Kotlin,Flutter,Dart。申请 GDE 可以选取一到两个标签获得,按理来说 Flutter 和 Dart 这样针对于跨端开发的不应该归在安卓开发,也就是上面说的 9 位里面不包括这类 GDE,但是本文为了方便将会划分一类,请自行理解
掘金 GDE 主页链接:
张拭心(Android GDE) (opens new window)
恋猫de小郭(Flutter & Dart GDE) (opens new window)
扔物线(Android & Kotlin GDE) (opens new window)
这里要着重说下扔物线大佬,他是国内首位 Android & Kotlin GDE,可以说是 GDE 的中国步道师,但是他似乎很少在掘金更文,大家可以在大佬个人网站 (opens new window)查看文章或视频
我们知道安卓开发属于是前端开发体系,除此之外就是 Android 是基于 Linux 开发的操作系统,对于深研安卓开发来说了解操作系统底层开发、网络通信、数据存储、多媒体、UI控件,还有热修复、插件化、组件化等也是家常便饭
注:以下为主观部分
对于中小公司来说,目的就是就是如何快速开发,怎么快速搞钱,在这种环境下原生开发优势荡然无存,所以他们基本是不用 Java & Kotlin 这种原生开发的,都是使用 Flutter & uniapp 这种跨端框架开发
其实对于大厂来说也是基本就是做跨端开发,然后利用原生经验去进行细节调优,因为哪怕是大厂也没钱做原生客户端,还要花两份钱招一个 iOS 一个 Android,谁会做那个冤大头,而且目前整体岗位也是趋于饱和,比如说做专精子系统开发的少则 5 年经验多则 10 年经验,人家做 AOSP(Android Open-Source Project) patch 都提交一大堆,新人怎么竞争。目前也不是说这个岗位完全不能做,只是要求水平高,新人入局难,并且客户端开发很大程度上被前端包揽,前端一把梭是常见现象
但是对于安卓开发目前来说还算不错的方向就是新能源车机,目前这是新蓝海,相较来说其他方向还是比较不错
注:有业内人士说做音视频开发也是可以尝试 Android or iOS 客户端,目前我持观望状态
如果是已经入局的 Android 开发,因为对于操作系统比较熟悉,下沉方向可以是 framework 、HAL 层、驱动层,做 rom 开发,比较稳定,但是毕竟是做内核开发,比较枯燥,看个人意愿
注:其实这里我想要说下,之前经常会说“前端已死”、“”后端已死“之类的话,其实是这样的,之前鱼皮大佬也说过,里面有很多含义,一种是确实目前这个方向太卷,没有前景,还有就是可能他们仅仅只是在调侃玩梗,或者是一些不良用心的人在渲染焦虑,大家要自己甄别
# iOS
不多赘述,处境基本同 Android 开发,整体处境更加艰难,还有就是我们知道前段时间国家发布政策,政府公职人员及国有企业工作人员被禁止在工作中使用 iPhone 手机,从这个角度分析,ios 甚至处境比 android 更艰难
# 补充
注:以下为主观部分,仅供参考
除此之外,我们知道华为鸿蒙开发最近势头也是很猛,但是对于校招来说,短时间内估计岗位有限,作为长期方向可以,作为短期春招目标不是很行
对于客户端开发未来的趋势,部分人青睐于折叠屏,之前的话持观望态度,但是自从 Apple Vision Pro 问世,作为一款 MR(混合现实)头显,它融合了 AR 与 VR 技术,直接对智能机平台实现降维打击
大家对于 visionOS 存疑主要是它的便携性和应用生态,其实对于应用生态而言,从前几年苹果就开始花大精力做主机游戏的移植工具,努力为 visionOS 搭建生态环境,然后之前的的发布会又对 Apple Watch 增加显卡算力,增强深度学习能力,助力 visionOS 空间计算,以及让用户熟悉手势指令,生态方面无需多虑,便携性方面需要时间,总之就是,只要大体方向是对的,即使是有小瑕疵也无伤大雅,苹果历来都是如此做的
注:之前的 HoloLens、Quest 2 之类的 VR 眼镜都没有到达革命性的效果,此处略过
# 后端
因为大家对后端也是比较熟悉,同时之前讲语言基本大致已经聊过,所以此部分略过
# 大数据
主要方向大数据挖掘,大数据开发,其次大数据分析,大数据运维,
大数据技术栈
- 数据采集:从数据源进行数据同步,大致分为主动查询DB数据批量(离线)同步、基于DB log数据变更(实时)同步两大类。
- 数据清洗:标准的ETL数据清洗,大致分为:离线计算(批处理)、实时计算(流处理)2大类。
- 数据应用:OLAP在线数据分析、报表、数据大屏、大数据查询服务API。
岗位基本集中在一二线城市中大厂,而且做量化金融公司也是比较青睐大数据,薪资也是比较可观
# 运维
推荐看下阮大大的这篇文章:运维的未来是平台工程 - 阮一峰的网络日志 (ruanyifeng.com) (opens new window)
总之就是,目前来说原有的运维工程师慢慢就会消失,逐渐演变为以下出路
(1)如果喜欢开发业务软件,可以选择成为 DevOps 工程师。
(2)如果喜欢开发平台软件,可以选择做平台工程,专注于基础设施的整合。
(3)如果更喜欢硬件和底层,可以选择加入**"基础设施即服务"(IaaS)**的云公司,深入研究基础设施。
或者是说大数据运维,云原生运维
# 测试
推荐 UP 主或博主,不是培训机构的,比较客观
- 胖达说测试的个人空间-胖达说测试个人主页-哔哩哔哩视频 (bilibili.com) (opens new window)
- 测试王大拿的个人空间-测试王大拿个人主页-哔哩哔哩视频 (bilibili.com) (opens new window)
众所周知,测试基本是除了前端外入行门槛最低的,当然初始薪资基本是最低的。但是注意,如果是顶级测试人员,薪资水平只能比同等开发人员高
可能前几年测试还是不是很受人待见,但是现在测试的地位也在逐渐上升,相对来说测试学习的东西是要比开发要更杂的,技术栈更加复杂,有兴趣的可以尝试
注意,测试岗相对来说岗位需求比较少,这是现实,也需要考虑在内
# 游戏
首先列举下目前国内的游戏工作室(截至 2022 年)
T0:成都天美(L1)、深圳光子(S、量子)
T0.5:米哈游
T1:网易互娱广州(梦幻、海神、第十)、莉莉丝、深圳天美(j1、j3)、成都育碧
T2:Garena(Free Fire)、Funplus北京、吉比特、网易大话、腾讯北极光、网易雷火杭州(祝融、雷火)
T3:腾讯魔方、完美(第七、天智游)、叠纸、阿里、紫龙上海(blackjack)、鹰角、散爆、沐瞳
T4:字节、心动、西山居、祖龙、友塔、库洛、IGG、中手游、悠星、友谊时光、蛮啾、诗悦
T5:巨人、游族、盛趣、恺英、畅游、4399、三七、多益、B站
首先从语言方面不必多说,做游戏必然就是 C 族的语言,诸如 C/C++ 、C# 、OC 等,当然也有非主流的语言,诸如 Java、JS、Lua 等
开发岗位分为两大种,一种是大家通俗理解的游戏客户端开发(U3D,UE),一种游戏服务端开发,除此之外还有游戏运维、游戏运维等,可以作为前两种的过渡职位,这里不详细讲解
客户端开发,比较注重图形学基础,需要熟练使用 Shader 等,然后熟悉游戏性能优化
服务端开发,比如开源游戏服务端并发框架 —— Skynet,其次就是需要数据库学习,很稳定
初期使用 lua、C# 、TS 游戏服务端框架比较推荐(优先 lua)
注:其实我个人觉得,游戏开发真的是很需要自身非常热爱的,不仅仅只是自己喜欢玩游戏,不然很容易放弃
注:后面为主观部分
然后之前 Unity 收取安装费的消息大家应该已经听说了,这件事情对于中小型游戏开发公司打击很大,遭到半个月的声讨之后,Unity 官方顶不住压力做出让步,允许对于个人开发者和中小型公司减免或是消除费用
相信很多人都看过阮神当时的发文,确实当时 Unity 收受安装费也是无奈之举,游戏行业赚的盆满钵满,但是作为游戏引擎公司却是在连年亏损,实在是很讽刺
10.11 修改
目前的话 Unity CEO 已经辞职,之前我说的可能有失偏驳,虽然 Unity 确实有困难,但是收费这件事就是错的,即使现在发表声明,但是大多数开发者仍旧不认可,目前国内用户主要是转向开源游戏引擎 UE,Godot,Cocos
整体上来说其实游戏发展前景不错,虽然低级中级游戏开发很卷,但是高级游戏开发还是非常稀缺的
注:这里游戏 AI 岗不详细谈,因为属于算法岗
对于游戏方向可以看下面的 UP 主,不是卖课的,分析的比较客观
- 兔八哥说游戏求职的个人空间-兔八哥说游戏求职个人主页-哔哩哔哩视频 (bilibili.com) (opens new window)
- 求知鱼游戏学院的个人空间-求知鱼游戏学院个人主页-哔哩哔哩视频 (bilibili.com) (opens new window)
# 区块链
这里仅列出我比较关注的专攻 web3 的博主或文章,大家可以作为参考
课程
阮大大区块链入门教程:http://www.ruanyifeng.com/blog/2017/12/blockchain-tutorial.html
区块链开发入门,搭建以太坊智能合约 DApp(掘金):https://s.juejin.cn/ds/idkqEJTb/
web3/web3.js: Ethereum JavaScript API (github.com) (opens new window)
注:掘金的课量比某些培训机构和个人的质量要高不少,所以收费也可能略贵,介意请忽略
个人
注意:部分公司涉及黑灰产,谨慎入局
因为仅就去中心化而言不仅需要公司需要极大的财力,基本不是初级创业公司所能触及的,而且最重要的是需要得到 ZF 支持,这是最困难的
# 算法
注:博主本身不是很擅长搞算法,也没有找到很多业内人士,所以本章节主要是主观部分,仅供参考
# 汇总
算法岗本次主要分析以下职位
计算机视觉(CV)、自动驾驶(ADS)、推荐系统(RS),自然语言处理(NLP)
薪资方面同等级别的算法岗相较于普通开发岗确实是高不少(同等级别指的是公司评级相同,比如都是 SP1)
比较不错的 AI 算法工程师的薪资基本快要逼近架构师
还有就是即使是算法岗,也是有研究和应用的区别,如果是研究型的这种基本就是和学校实验室差不多,就是读论文,搞基础模型。然后应用型人员直接使用基础模型,然后进行具体的开发,分工很明确
所以我上面说的薪资对比是针对 AI 算法工程师,而不是 AI API 调用工程师,AI 算法工程师基本上只存在于头部国企的和顶尖大厂,对于学历要求极高
其中 NLP 大家可能理所当然的认为受到 ChatGPT 的影响,这个岗位会受到比较大的冲击,感觉有了 ChatGPT,这个方向没什么研究价值了,但其实正是因为有了 ChatGPT,各大公司虽然没办法再垂直领域和 OpenAI 卷
但是目前各大公司主要是在横向领域卷应用方向,所以现在这个岗位招聘热度依旧在线,但是未来这股热潮过去会怎么样就说不准了
其中大语言模型(LLM)泛化的讲可以属于自然语言处理,但是 LLM 会融合很多其它领域的知识,这里不详细讲
# 计算机视觉
计算机视觉这方面最近确实很卷,如果真的有意向建议直接读博,首先就是目前大厂的 CV 岗基本已经处于饱和,很少有空缺岗位,其实为什么在学校你会发现很多老师都在做 CV,让你看起来 CV 方向似乎比较不错,那是因为 CV 方向确实太容易出论文了(博主目前也是靠 CV 做论文),对于 CV 这个领域的 SOTA 模型都是很成熟的,短时间内很难做出超越或是单方面指标超越 SOTA 模型的结果,但是 CV 重在应用场景很多,适合发论文,所以学校的老师比较喜欢
计算机视觉方向基本都是神仙打架,虽然公司明面上招的不限制论文要求,不强制限制学历,但是基本可以进面的都是人手顶会的,一篇顶会只是及格线,非常夸张
而且更加为难的是计算机视觉是比较难转换方向,我们如果是熟悉 CV 开发的很了解,做 CV 如果你不是做底层代码的,那基本就是 TF 或 PyTorch 模块搭建,然后调优,没有任何工程能力,非常难转其他算法岗,更别说转开发。但是其实也不绝对,比如说 3d 视觉这各方向,就既可以投计算机视觉,也可以投自动驾驶
# 推荐系统 & 自动驾驶
很遗憾,我没有找到对应的业内人士,也不好班门弄斧,所以本部分略过
注:最后列举下国内比较有名的 AI 独角兽:大疆,商汤,旷视。其中旷视是最近势头最猛的 AI 公司,同时也是做计算机视觉(人脸识别)出身的。
# 面试
本章节主要会推荐关于笔试和面试的网站或视频(主要针对 Java 面试),大家可以自取使用
面经:
- | Java 全栈知识体系 (pdai.tech) (opens new window)
- Java 面试指南 | JavaGuide(Java面试 + 学习指南) (opens new window)
- 小林coding (xiaolincoding.com) (opens new window)
- 主页 | 二哥的Java进阶之路 (javabetter.cn) (opens new window)
笔试:
- 代码随想录 (programmercarl.com) (opens new window)
- 灵茶山艾府 (bilibili.com) (opens new window)
- Hello 算法 (hello-algo.com) (opens new window)
极其推荐第三个,这个应该是目前 GitHub top 算法仓库,目前处于 GitHub Trending 榜单中
这里说下如果是准备明年三月份春招的同学,如果是寒假开始准备面试已经是比较晚的了,这还是说的对于简历比较完善的同学,因为简历上需要些两三个项目,你可以直接写上去,也不需要过多的包装,然后大概寒假一个多月的时间,每天固定时间刷刷题,然后背背面经,时间虽然紧,但是也足够。
总之就是越早越好吧,10,11 月开始准备都行,看个人情况
简历包装的话项目最好题材最好还是新颖点,面试官对于外卖、商城的都看腻了,当然要是你可以上能对架构掌握的非常清晰,对于单点登录,数据权限,隔离处理,限流熔断等分析的很透彻,下能做诸如 JVM 源码级开发,那么其实题材就无所谓了。你的水平如此高,上面的话就当我没说
# 补充
注:最后提示几点可能对同学门有帮助的建议,都是小伙伴们经常遇到的问题,如果我说的不全的话,小伙伴们也可以在评论区补充,欢迎拍砖
牛客,BOSS直聘等平台经常有自称是 HR 的人联系你,他会说你很适合这个岗位,然后会索要你的简历和个人信息,这种情况一般对方确实是公司的 HR,但是他的主要目的就是将你的简历锁在他的部门,如果你有更好的应聘机会会导致无法应聘,而你要求撤销简历时他就会处处刁难你,然后就会导致简历被锁在该部门几个月甚至半年,最后就是你春招的时候就可以放弃这家公司了。当然也有其他方式的骗术,总之最好不要轻易私发简历,直接官网投递
我之前碰到过个小伙伴,投递阿里后端开发,面试挂了五次,被捞了五次(现在好像是八次了)。这个情况确实很特殊,因为我之前最多也就是被捞了两三次,可以想象到虽然可能这个小伙伴面试技巧可能差点意思,但是简历这块确实很亮眼,这里也提醒大家一定要学会包装简历,因为确实可以提高被捞概率
在面试进程当中经常出现由于部门重组之类的原因,导致该职位可能就没有 HC 了,然后导致面试终止
面试进程中如果一面挂,在确认自己表现没有大问题后可以不用太放在心上,可能只是单纯的就是像上面说的用人部门没 HC,不要因为这些事情打击到信心
如果泡池子时间太长,可以找相应内推的人或是对应 HC 询问进度,但是一般也没法加快进度,只是为了让自己安心
# 鸣谢
感谢蔡同学多次审查修改稿件,其他多位业内人士不方便透露,也一并在此致谢!!!