目录
岗位要求
Linux C++开发(vivio)
熟悉掌握多线程/多进程
网络编程
常见RPC框架
设计模式
gdb调试等技术
计算框架mpi、tensorflow的研究与优化,不断提升性能与稳定性,支撑高效地算法模型训练
负责中间件、公共组件库的设计与开发,如日志、配置中心、rabbitmq、mysql、redis、RPC等框架
2、负责tars二次开发与优化,解决java应用与C++交互融合问题
具有较强的后台Server架构设计、开发以及性能调优能力
精通TCP/IP,HTTP/s,WebSocket网络通讯协议、进程间通讯、多线程编程,熟悉Unix/Linux下常用架构设计方法;
5. 熟练掌握Apache,nginx等常用Web Server,以及cgi,fastcg等,具有良好的代码编写习惯;
6. 熟悉Mysql、NoSQL(memcached, redis))存储,
熟悉lua,shell脚本语言,
熟悉常用的数据结构与算法
C++后台开发技术栈
受《C++后台开发学习路线》启发,整合了网上C++后台开发相关的资料
C++后台开发技术学习栈
1.C++基础3个月
《C和指针》、《C专家编程》
《C++Primer》
《深入探索C++对象模型》
《Effective C++》《More Effective C++》
《现代C++教程:高速上手C++11/14/17/20》
https://github.com/changkun/modern-cpp-tutorial
2.C++进阶
STL
《C++标准程序库》
《Effective STL中文版》
《STL源代码分析》
模板
《C++Templates中文版》
3.计算机网络
《图解Http》《图解TCP/IP》《网络是怎样连接的》
《计算机网络》
《Tcp/Ip详解卷:协议》
4.操作系统
《现代操作系统》
《深入理解计算机系统》
5.网络编程
《Unix网络编程》
《Unix环境高级编程》
《TCP/IP 网络编程》
比较有趣
《Linux 多线程服务端编程:使用 muduo C++ 网络库》
《Linux 高性能服务端编程》
云里雾里
5.数据结构
《力扣》
重点刷HOT 100 的那 100 道题,来来回回的刷,一道题最多的时候来回刷了七八遍
面试题:基本属于简单或者中等难度类型;笔试题:困难的难度。Leetcode一般提前三到四个月,刷两遍
《剑指offer》
6.数据库
《高性能MySQL》
《Redis设计与实现》
7.项目
根据陈硕大神写的《Linux高性能服务器编程:使用muduo C++网络库》进行改编
web高性能服务器
根据 TinyHTTP 和 游双老师的《Linux 高性能服务端编程》的课后大作业为基础,做的自己的 HTTP 服务器
8.开源项目(练习基础)
C++后台开发有哪些练基础的开源项目? - 程序员柠檬的回答 - 知乎
https://www.zhihu.com/question/39169728/answer/1653954976
网络库、RPC框架、数据库、配置文件处理、消息队列、序列化等等
9.C++开发方向
服务器后台开发
应用开发工程师(QT\MFC,偏前端)
C++游戏开发工程师(cocosdex等)
C++驱动开发、逆向工程、网络完全
嵌入式软件开发(linux平台,c/c++)
音视频方向(协议优化)
图像处理(医学图像,机器视觉,偏算法)
10. 电子书
https://github.com/forthespada/CS-Books