C程序员的职业生涯规划
C++程序员的职业生涯规划
一、C++ 服务器程序员(流媒体后台,游戏后台,高性能服务器后台)
精通
C++
,
STL
,
等,熟悉设计模式;
熟练掌握一门脚本语言
(Lua, , Perl
等
)
;
对多线程环境编程有一定的理解,能独立完成服务器端模块的开发、维护和优化;
熟练掌握
的开发维护、性能优化;
精通
C++
编程,
3
年以上服务器开发经验;
有手机游戏或者
PC
网游开发经验,有过完整手游开发经验者优先;
精通
Socket
协议,了解分布式负载和集群类型的服务器框架结构;
精通数据库设计;
熟悉
Python
或
Lua
语言。
1
、一年以上服务器开发经验,熟悉
C++
语言
;
2
、熟悉
TCP/IP
协议,熟悉网络编程
;
3
、熟悉标准
SQL
语言,熟悉
Mysql
更佳
;
4
、熟悉
linux
,熟练掌握
linux
基本操作命令
;
- 2
年以上
C++
游戏服务器开发方面的工作经验;
对
TCP
协议相关的开发有全面的认知;
对多线程的开发相关的问题有全面的认知;
有完整的
C++
手游服务器开发经验的优先考虑;
有
Linux
平台相关开发经验的优先考虑;
3
年以上网络游戏后台开发经验;
精通
Linux
,具备扎实的
Linux
环境编程能力;
精通
C++
编程语言并具备丰富的面向对象编程经验;
精通网络编程并有高并发系统的开发经验;
熟悉
MYSQL
或其他大型数据库,能够快速根据需求完成高性能数据库设计;
1
、本科以上学历,计算机、通信等相关专业;
2
、
3
年以上
Unix/Linux
下
C/C++
开发经验,
熟悉常用的 、 ,熟练使用
STL
等标准库;
3
、熟悉
Unix/Linux
下常用 设计方法,熟悉流媒体网络协议和格式,包括
rtmp
、
rtsp
、
sip
协议,以及
mp4
、
ts
流媒体格式封装;
4
、
熟悉
Unix/Linux
操作系统原理、常用工具,
熟悉
Mysql/
等数据库管理、开发,
SQL
调优;
5
、全面的软件知识结构
(
操作系统、软件工程、设计模式、数据结构、数据库系统、网络安全
)
;
6
、有大容量通信系统和大型互联网后台开发经验者优先。
1
)
计算机相关专业,精通
C++
语言;熟悉常用数据结构和算法;
2
)熟悉
Socket
、精通
TCP/IP
协议及编程;
3
)具备编写
Shell
、
Makefile
能力,熟练使用
Linux
基本命令;
4
)熟悉
Linux
操作系统及其环境下的网络通信编程(进程、线程、内存管理、消息机制等);
5
)熟悉音视频封装及编解码技术,了解主流的多媒体标准,例如
TS
、
MP4
封装、
H.264
、
H.265
、
FLV
、
MPEG2
、
MP3
、
ACC
编码等;
6
)熟悉
HTTP/RTP/RTSP/RTMP/HLS
等流媒体传输协议,音视频解码模块与流媒体协议的对接处理
;
7
)具备广电行业项目管理经验的,有
cdn
开发经验者优先;
1
、本科及以上学学历,熟悉
C/C++
语言,
3
年以上流媒体系统开发经验
2
、熟悉常见多媒体数据解码格式,熟悉
H264
、
RTMP
、视频切片、音频同步等方面技术;
3
、熟悉
TCP/IP
协议,熟悉多媒体相关协议(
HTTP
,
RTSP
,
RTMP
,
RTP/RTCP
,
P2P
,
SIP
等);
4
、深刻理解互联网视频播放原理,对
ffmpeg
等框架有实际的使用经验;
5
、有视频直播、点播、视频会议、监控安防等方面经验优先
6
、熟悉
Nginx/Squid
模块开发优先考虑,有
FMS
等流媒体服务器搭建经验、
P2P
系统研发经验、知名优秀的视频产品服务端设计和研发经验优先考虑
二、应用开发工程师windows /linuxc++ (QT 和MFC,偏前端)
1
、
3
年以上
Visual C++
开发经验
2
、熟练掌握
C
、
C++
、
ATL
、
COM
等编程技术。
3
、熟练掌握
Windows
系统编程,熟悉窗口、网络和多线程技术。
两年以上的 或
windows
平台
QT
应用软件开发经验
.
熟悉
QT
跨平台框架,
QT
图形库和相应的开发工具。至少参加过一个完整的
QT
项目。
具备数据结构、面向对象、多线程和内存管理的基础和经验
掌握
window/wince
开发环境
熟悉通用的代码管理工具,例如
SVN,
等
1
、
2
年以上
C++
开发经验;
2
、在
Windows
开发平台下的客户端开发有丰富的经验,熟知
windows
操作系统原理;
3
、熟悉
windows api
调用,熟悉
MFC
类,
STL
标准库,
boost
库等等;
4
、熟悉
windows
消息体系,熟悉常用的数据结构与算法,独立研究的能力;
5
、熟练使用
MFC
异常类对
windows
结构化进行捕捉,能快速定位发布版本程序的异常,帮助组内成员快速定位崩溃,内存泄露,
GDI
资源泄露,能使用远程调试定位问题;
6
、尤其擅长利用各种调试,日志记录,分析工具对
windows
下客户端开发的代码进行调试,
BUG
查找,问题原因查找,
BUG
修复;
7
、有以下调试工具使用经验的:
spx++
,
bugtrap
,
crashreport
,
log4plus
,
gflags
,
bondcheck
,有逆向工程
ollydbg
等调试的优先。
本科或以上学历,计算机、通讯相关专业优先;
1
年以上
C++ / Qt
开发经验;
有
Linux
、
Windows
下的跨平台
Qt
开发经验;
有
socket
编程经验,能编写
TCP
、
UDP
或串口通信程序;
工作积极主动,具备团队合作精神及良好沟通能力;
有 工具使用经验者优先。
1
、本科或以上学历,计算机、通讯相关专业优先;
2
、
3
年以上
C++
实际项目经验;
3
、熟悉
C++ STL
,对
C++ 11/14
标准有一定了解;
4
、熟练掌握
socket
编程,能编写复杂的
TCP
、
UDP
或串口通信程序;
5
、掌握
Windows
平台下的图形界面程序开发,熟悉
MFC
、
GDI/GDI+;
6
、熟练编写多线程程序;
7
、熟练使用
Git
;
8
、熟练使用
MySQL Connector
;
9
、工作积极主动,具备团队合作精神及良好沟通能力;
10
、有
Qt
实际项目经验者优先;有
DirectX
开发经验者优先;有流媒体相关开发经验者优先。
扎实的计算机专业功底,较好掌握基本的数据结构和算法,具有良好的文档编写能力;
熟练掌握
Windows/Linux/Mac
平台下的
C/C++
语言开发和调试技巧,有跨平台开发经验者优先;
精通
MFC
或
QT
开发,熟悉
GDI/GDI+/OpenGL/DirectX
等技术并有相关项目经验者优先;
三、C++ 游戏开发(游戏方向,熟悉游戏引擎cocos2dx 等)
1
、熟悉
Win32API,
熟悉
WIN32/VS
开发平台,熟悉
C++
开发库
(STL/MFC/Qt
等
)
,熟悉常用数据结构和算法;
2
、精通
C++
编程,精通网络编程,熟悉游戏服务器端架构和客户端代码、熟悉数据库开发;
3
、了解网狐平台并有成功开发经验者优先;
4
、有
COCOS2DX
开发经验者优先;
1
.
2
年以上网络游戏服务器开发经验
,
完整经历过大型休闲网络游戏的开发过程者尤佳
;
2
、
3
年以上实际项目中
C++
开发经验
,
深刻理解面向对象设计和开发思想
;
3
、精通
Linux
操作系统下的
C/C++
软件开发
;
熟悉基础的数据结构和主流数据算法,了解棋牌算法等优先。
4
、精通分布式系统设计原理
,
熟悉
TCP/IP
网络模型
,
熟悉网络异步通讯
;
5
、具有
C/S
结构软件系统的设计及开发经验;
6
、熟悉数据库设计与
SQL
语言
,
精通
MySql
数据库尤佳
;
7
、熟悉
、
MQ
等开源技术尤佳
;
8
、熟悉
protocolbuffer
、
json
等协议;
9
、熟悉主流软件开发流程
,
有
Scrum
等 开发团队管理经验者尤佳
;
有很强的沟通协调能力。
四、C++ 逆向开发工程师(网络安全,黑客攻防,破解等)
1
、学历本科以上;
2
、熟练掌握
C/C++
,有两年以上的相关开发经验;
3
、精通汇编语言,有较强的程序反汇编技术和逆向分析能力;
4
、熟悉
PE
文件格式,熟练掌握
SoftIce
、
IDAPro
、
OllyDebug
、
WinDBG
等调试、逆向工具。
两年以上相关的项目开发经验
,
热爱软件开发
;
熟悉
X86
汇编、
C/C++
语言
;
熟悉
PE
文件格式
;
熟练使用
OD
、
WinDbg
、
IDA Pro
等调试、逆向工具
;
熟悉病毒、木马、恶意软件的工作原理;
了解常用加解密算法;
1
、
3
年以上的嵌入式软件开发经验;
2
、熟练掌握汇编及
C
语言编程;
3
、熟悉
ARM
、
PPC
等
CPU
工作原理;至少熟悉一种系列单片机编程。
4
、熟悉
Linux
、
VxWorks
、
Threadx
等操作系统原理;
5
、具有逆向分析算法或通信协议数据经验者优先考虑。
6
、具有打印机主板开发经验者优先
1
、本科及以上学历,计算机、电子或通信等相关专业,一年以上相关工作经验;
2
、熟悉
windows
或
平台下反汇编,熟悉
X86
和
arm
汇编指令;
3
、熟练掌握软件逆向静态分析、动态调试、代码跟踪等技术;
4
、熟练使用
OllyDBG
,
IDAPro
、
GDB
等逆向工具;
5
、熟悉反跟踪调试技术、脱壳技术;
6
、了解各种通用加解密算法;
7
、有
andriod
、
反汇编经验优先。
五、智能硬件 和可穿戴设备( 智能硬件VR/C++,)
1
、计算机科学、数学、电子工程或相关专业学士文凭;
2
、
5
年以上软件开发经验,
2
年以上 开发项目经验,熟悉
引擎架构设计者优先;
3
、熟悉网络编程和多线程编程;
4
、
熟练掌握
C/C++
,具有
3
年以上的
C/C++
软件开发工作经验;
5
、
有
3D
图形引擎开发相关经验;
6
、对物理引擎有深入研究,并在游戏等实际应用中有过相关实践;
7
、对图形学知识有深入了解,熟练使用
DirectX
、
OpenGL
或
Metal,
并有相关作品。
8
、具有一定的英语水平,能够阅读外国学术文档。
9
、
有
Oculus Rift
,
Samsung Gear
,或
HTC Vive
开发经验者优先。
六、嵌入式软件工程师(C/C++,Linux 平台,软硬兼施)
熟悉交叉编译的原理,熟练构造
/
使用交叉编译工具链
熟悉
Linux
(
x86
,
arm
)的内核裁减,配置,编译和部署
熟悉
Linux
根文件系统的组成,并能够配置,编译,使用
buzybox
等工具按照实际要求裁减,构造根文件系统
熟练运用
C/C++
语言进行
Linux
下应用程序编程
熟悉
Linux
下的多进程
/
多线程编程,理解进程
/
线程间同步
/
通信的概念和方法
了解
Linux
下内核模块的编程的原理和方法,能够修改
/
添加内核中的驱动程序
了解
Uboot / GRUB / LILO
等
bootloader
的配置,编译和部署
了解
Socket
编程
4
附加能力(非必需要求):
Linux
内核实时性评估和 经验
了解汽车电子相关通讯协议
CAN/LIN/UDS/CCP/XCP
等
了解
EtherCAT
协议,有相关开发
/
测试经验
2
、三年以上嵌入式
Linux
驱动开发经验,有独立开发经验和能力;
3
、熟练操作
Linux
系统,熟悉
C/C++
语言,熟悉相关的编译和调试技术更佳;
4
、精通
linux
平台相关驱动开发技术并有相关经验;
5
、精通
bootloader
移植、内核剪裁等技术。
七、音视频解码(协议优化)
1
、熟悉音视频编解码处理算法,有相关领域一年以上工作经验;
2
、熟悉
ffmpeg
体系结构,能够移植和优化该系统到移动客户端;
3
、熟悉
RTMP
、
HLS
等流媒体直播协议(或者相关协议);熟悉
vlc
或者
ffplay
、
mplayer
架构者优先;
4
、熟悉
TCP/IP
和
Socket
网络编程;
5
、熟悉
C/C++
开发语言;
6
、熟悉
WINDOWS PC
客户端软件开发
数学、声音处理、计算机、信号处理、通信工程相关专业硕士两年以上相关领域工作经验。
有较好的数学基础,较强的音频信号处理或算法开发能力
精通
C
语言编程或
matlab
语言,能编程实现音频处理算法。
较强的论文检索、英文专业文献阅读能力
较强的人际沟通及协作能力。
具备以下开发经验之一者优先考虑
理解音频处理技术
,
进行过音频压缩、回声消除、语音增强识别等算法的研究和实现
熟悉通用音频格式文件(
mp3,wma,aac,ogg,ape,flacac3,dolby DTS
等)
进行过上述某类音频处理算法在
DSP
、
x86
、
FPGA
或
ARM
等硬件平台上的开发、移植和优化。
2
、对
VOIP
有深入研究并有相关经验,熟悉
VOIP
服务器开发(有
asterisk
源码开发
/
优化经验),有
android
、
ios
底层开发经验更佳;
3
、具备良好的数学功底,精通
C
语言,熟悉
ARM
的体系结构及相关的汇编;
4
、熟悉音视频编码(如
WebRTC
、
speex
、
Opus
、
H264
、
MPEG
等)有音频
/
语音
codec
算法优化及开发经验,对语言增强算法有深刻认识和独到见解。
a)
扎实的计算机、网络基础知识,有网络模拟、多媒体传输开发经验
b)
丰富的视频处理或者图像处理经验
c)
丰富的 、人脸识别方面经验
1
、计算机
数字信号处理相关专业毕业
2
、有
4
年以上的视频频相关算法开发经验,熟悉视频、图像特效及优化技术;
3
、精通
C/C++
,熟悉基本的数字图像与视频处理算法原理,熟悉
/OpenGL
;
4
、熟悉基于
GPU
的算法设计与优化和并行优化经验者优先;
5
、熟悉
H.264
等视频编解码标准和
FFMPEG
者优先;
6
、熟悉
rtmp
等流媒体传输协议者优先。
通信、自动化、图像处理、模式识别、视频处理、信号与信息处理及相关专业;
较强的数学背景
对智能视频处理有一定了解,熟悉人脸识别、目标检测和跟踪、行为分析等相关技术,有相关项目实战经验者优先考虑;
熟练掌握
matlab
、
C/C++
,有良好的编程习惯;具备视频处理、图像处理、模式识别,
DSP
开发等相关知识,且编程实现能力快。
熟练阅读相关英文论文和专利,并能快速编程实现;
沟通交流能力强,具有良好的团队合作精神,工作积极主动。
有以下经验之一者优先:有手机、相机等设备的画质调节经验;有手机、照相机、平板电视、投影仪等数码显示设备中图像处理模块的研发经验;有图像信号处理器(
ISP
)的研发经验。
1
、信号处理
/
模式识别
/
图像处理专业本科
/
硕士以上学历;
2
、
有不少于
1
年的视频智能分析算法设计开发工作经验;
3
、能熟练应用
c/c++
程序开发;
4
、
能用 、统计学习或其他主流智能分析技术解决特定目标识别或行为分析问题;
5
、
熟练掌握
OpenCV
中图像
/
视频算法;
6
、
能熟练阅读英文算法及其他技术文档;
八、图像处理(机器视觉,医学图像,遥感图像,人像(美颜)等)
图像处理相关算法的设计
(
如图像跟踪定位
)
开发与调试。
信息电子或计算机相关专业,本科以上学历。
具有良好的 理论基础。
具有良好的模式识别
/
机器学习理论基础。
熟悉
c/c
等相关编程语言。
本科或硕士以上学历,计算机、电子工程、自动化等相关专业
具备图像、视觉和模式识别方面良好的理论基础,熟练掌握图像处理的一些基本操作(直方图,积分图像,交点检测,特征点提取,缩放,二值化等);
熟练使用
C/C++
和
OpenCV
、
Matlab
,并有一定的开发测试经验;
熟悉图像处理基本
法
(
边缘检测,区域提取,
低通滤波,特征提取
)
;
熟悉机器学习算法
(
例如
LR, SVM, ANN
等
)
和深度学习算法
CNN
等;
熟悉
opencv
,具有运动
标检测、特征提取、物体识别相关开发经验者优先;
有
OCR
或
字检测等相关研究或项
经验;
熟悉
linux
开发环境,熟悉
C/C++/Python
等任
语
;
有良好的沟通能
,责任
强,善于协助与分享;
可熟练阅读在线英
技术
站、技术标准者优先。
1
、计算机科学,
机器视觉,
机器学习等相关专业或方向硕士及其以上学历;
2
、机器视觉,
图像处理方面两年以上工作经验;
3
、精通
C\C++,
熟悉
linux
下的编程,
熟悉
OpenCV
,
良好的代码习惯;
4
、在机器学习,
贝叶斯滤波,
机器视觉,图像处理领域有深厚的功底;
5
、熟悉
ROS
,
SLAM
,
TLD
等相关系统和技术的优先考虑。
笔者就近几年的互联网发展发展,通过在各大就业招聘网站上检索到C++职位的相关要求,归纳总结出几大发展方向。给正在成长的C++程序员一条指引,当然也只是个人整理,仅供参考
**原文转载自:
转自:http://m.blog.csdn.net/article/details?id=51242829**