C++的就业市场有如下的典型特征,尤其是一些有价值的岗位。
C++的就业市场很难通过标准化的培训来实现,往往隔行如隔山。
不同的行业,虽然都用C++,但是他们的业务确是完全不相关。
使用的技术点,惯用法也是各不相同。
这就导致新人很犯难:学习一个具体的方向,就业面太窄;而学习通用技术又突出不了竞争力。
Qt就是一个C++方向的万金油技术。
不管哪个行业,只要C++开发,大部分都需要有Qt的技能要求。
这对于新人是一个很好的台阶,或者说是一个敲门砖。
有了这个敲门砖,你就可以进入大门,看到里面的一切。
我本人也是如此,第二份工作就发现公司的后端技术完全是围绕特定业务的。
出了这个公司,全国都没几家做这个的。
公司前端用的是MFC,大家都有危机感,觉得太老旧,但是尾大不掉,没法换。
出去投简历就比较被动。换工作很难。
当时我去找一个国企的C++开发,对方给我15K。
后来我通过一个朋友才知道,他的朋友也拿到了这个公司的OFFER,而且是18.5K,我简直不敢相信。只是因为他在外包已经干了5年的QT。
好在有一家创业公司,实在不好招人,我接受了,专门学习了Qt。学了一年多。
有了Qt之后,后面找工作机会就很多了。
各行各业的工作机会都出来了。
搞电力的,能耗的,雷达的,云盘的,高速的,数控机床的,音视频的,医疗的,电商的,真的是让你大开眼界。
我当时面试了20多家公司,拿到了7个Offer,有的公司一看就不适合。比如我不喜欢加班,那就聊不下去。
也正是因为这个原因,我认为你想从事C++开发,作为一个新人,Qt应该是你必备的技能。
不说要精通,但是入门是肯定需要的。有百利而无一害。
所以,希望这个入门教程,可以带你入门。可以给你插上自由的翅膀,让你自由的翱翔。
以下是我的个人看法,不代表面试官也这么看。
20% C++ (基本功)
40% Qt 经验(占比最大)
20% 开发环境(开发平台,构建工具)
20% 本行业业务开发经验(不好招人)
1 C++ 基本功
内存管理的一般方法,复制控制,传参方式,扩展性,可维护性,多线程(可选),多路复用IO(可选),C++11
不包括(不需要掌握):线程池,内存池,无锁队列,移动语义,C++23(问这些的公司不要去)
2 Qt 经验
颜色控制,常用控件,布局,国际化,安装包,定时器,线程异步调用,对象生命周期,资源素材管理,访问数据库
3 开发环境
(1)Windows PC单机软件 Qt Creator,CMake,Visual Studio,vcxproj ,Qt vs Tools,
(2)Ubuntu PC专业软件,QtCreator ,CMake
4 业务开发经验
Qt岗位对业务开发经验容忍度高,没经验也行,因为C++开发本来就这样。不同行业大头在行业业务知识。