我的C++后台/基础架构岗位学习路线(offer大多是ssp

后台开发包括的知识点很多,包括语言基础,算法,linux编程基础,linux内核,网络,数据库,分布式等等。面面俱到很难,一个领域钻研的很深也很难。我认识的大神里有把C++语言吃的非常透的,也有实验室就是搞分布式的,拿offer都非常轻松。


秋招拿到:
字节跳动后台开发
网易游戏游戏研发
阿里云基础平台开发
华为
腾讯后台开发

我准备应聘的时间从研一的寒假开始,当然自己探索的路上走了不少弯路。

列举一下自己的学习内容中我自己认为对找工作或者对提升自己非常有帮助的一些书或资料,仅供参考~


语言基础,C++语言相关的:

《C++ Primer》,应该算是工具书,但我花了3个月一个字一个字啃完了,现在能记住的没几个了,但是好在全看完就不用看Effective C++了,基本都包含在内了。

《STL源码剖析》,很老的书了,很多内容都过时来了,比如空间配置器,但是面试官还是会问……可以跟面试官讲讲ptmalloc的实现。整本书都是重点。

《深度探索C++对象模型》,虽然基本只会问虚函数的实现,看一篇博客也能应付面试,但是还是建议多看几遍。

《Effective C++:改善程序与设计的55个具体做法》还有more effective C++,建议快速看一下。

STL和对象模型我都看了3遍以上,因为太容易忘了,Effective C++只是快速浏览了一遍,发现基本都包含在Primer里了。



网络,除了本科学过的(《计算机网络 自顶向下方法》),我看了《TCP/IP详解卷1》12-16章,重点是TCP、IP、UDP,其它部分看书太麻烦了,直接从博客里看了。



linux环境编程apue和unp两本是必须的,因为太厚了,看起来还是有点痛苦的,但是不需要全看,而且内容重叠很多。unp卷1前面8章是重点,卷2前面4部分都挺重要的,apue全部,先是要有个概念,自己写代码的时候就知道哪块重要了。


此外,《后台开发:核心技术与应用实践》是腾讯的员工写的,虽然这本书评价比较差,几乎都是抄的博客,但是内容上总结的很好(我觉得就是给校招的同学写的),都是后台开发需要的基础知识的总结,这本书中内容所代表的知识,基本都是腾讯的C++后台开发工程师所必备的基础,可以作为一个复习提纲。



下面的书应该算是提高篇了:


linux内核相关,我买了《深入理解linux内核》发现啃不动,后来看了《linux内核设计与实现》,非常推荐,外加一大堆博客,《深入理解计算机系统》讲的东西比较简单,这个可以作为一个补充,面试官问的很多操作系统相关的问题书中都有涉及。


《Linux多线程服务器端编程》,陈硕的书,讲muduo网络库的,我看了3.4遍,源码也读了3.4遍,收获非常多。前面部分是后台开发的一些经验之谈,对面试也很有用。

《Redis设计与实现》看完感觉也特别好,很值得学习,可以很快就看完。有很多重要的数据结构可以在面试的时候讲出来,比如跳表、redis的 hash表啦~

《深入理解Nginx》我也看了一部分,nginx太经典了,很多面试官也都提到过。

短小精悍的源码还非常推荐leveldb,对照博客把leveldb源码看完不需要多长时间(我花了两个周吧),但是收获非常多。在此基础上还可以了解一下rocksdb。

除此之外,还看过一些其它的书,感觉不值得推荐就不写了。



书是比较系统性的东西,博客通常是总结性的东西,也是对书中内容的一个补充吧。好多东西面试会问到,但是书中很难找到解答,对照着网上的面经搜博客吧。我看了下自己收藏夹里的光是收藏的博客就已经上百篇了,当然还是不能完全覆盖面试官会问到的问题。(这一步是重点啊)

分享一下我自己看过的博客,从手机书签里导出来的,整理了一下:

http://www.linya.pub/



算法

我只刷了Leetcode上的500多题,但是第一遍不会的题都标记了,后面又刷了很多遍。《剑指offer》这种书不太建议看,很啰嗦,解答也不如LeetCode上的高票解答。直接干刷其实还有点无聊的,每周日上午做一下leetcode的周赛也是个不错的选择,可以当做模拟笔试/面试。另外 Top 100 Liked Questions 可以重点关注一下。



项目

https://github.com/linyacool/WebServer

写了一个静态Web服务器,主要是找实习的时候用的,参考了muduo网络库。

仅供参考!仅供参考!仅供参考!(不要直接拿去面试,你如果自己想做一点东西,有非常多非常多可做的事情,千万不要把github里的描述直接写进简历,结果一问三不知)

阿里云校招内推,可以发送简历至 linya.ly@alibaba-inc.com,也可以微信和我联系,微信linyacool


#腾讯##网易##华为##面经##秋招##阿里巴巴#
全部评论
天呢,大佬,我的项目也是webserver,跟你的学习路线一样,不过我的是进程池的,找工作面试也是很多时候在问这个项目。不过跟大佬还是有差距,只拿了两个sp。 https://github.com/GeneralSandman/TinyWeb 已经Mark大佬了,多向大佬学习。
4 回复
分享
发布于 2018-12-12 21:12
GitHub已star,这段时间把你的WebServer代码基本框架看完了,感觉不错,点赞!同时也发现有可以优化效率的地方。Ps:我最近也仿照muduo等写了个服务器框架,https://github.com/chenshuaihao/NetServer,这过程中陈硕和楼主的项目对我帮助很大,也欢迎楼主star!另外方便加个微信么,可以共同交流学习,哈哈。
3 回复
分享
发布于 2019-02-22 14:36
小红书
校招火热招聘中
官网直投
传说中的巨佬
2 回复
分享
发布于 2018-12-11 22:15
给巨佬献上膝盖
2 回复
分享
发布于 2018-12-11 22:21
看完这些书以及做这个项目花了多久的时间? 我也是打算走C++服务器路线的,apue C++ primer看完了,unp看到第五章,leetcode才刷了70道题目,目前没项目,没实习经历(本科非计算机的),打算unp和 muduo看完做个简单的web server服务器,不知道时间够不够,已经研二了,感觉时间不够,主要感觉自己学习效率不高
2 回复
分享
发布于 2018-12-12 20:39
这也是研究生比本科生吃香的地方,本科就根本没时间
点赞 回复
分享
发布于 2019-03-13 11:39
快出来看神仙
1 回复
分享
发布于 2018-12-11 22:22
给巨佬来一杯卡布奇诺
点赞 回复
分享
发布于 2018-12-11 22:42
这些书看完就已经很无解了😥
点赞 回复
分享
发布于 2018-12-11 22:45
神仙!
1 回复
分享
发布于 2018-12-11 22:57
陈硕这本书感觉一开始读起来好费劲啊
1 回复
分享
发布于 2018-12-11 23:13
大佬,最后为啥选择了阿里云
1 回复
分享
发布于 2018-12-12 00:35
本科还是研究生?
1 回复
分享
发布于 2018-12-12 00:36
巨佬😱
1 回复
分享
发布于 2018-12-12 02:12
我也想要微信。。。
点赞 回复
分享
发布于 2019-01-07 15:35
求巨佬微信,本人计算机视觉小硕一枚,也在学C++找相关的开发或算法工作
点赞 回复
分享
发布于 2019-02-22 14:37
膜拜学长🙄
点赞 回复
分享
发布于 2019-06-21 09:18
半科班研二转开发,照着楼主的学习路径现在秋招也拿到了大厂offer,除了《后台开发:核心技术与应用实践》和《深入理解Nginx》没看,提到的书也都看了几遍。和楼主的差距虽然还是很大😂。回个贴来还愿同时感谢下。
点赞 回复
分享
发布于 2019-09-23 21:24
大佬可以私信一下微信吗,最近刚开始学习
1 回复
分享
发布于 2019-12-03 21:31
大佬太强了,求个微信😎
1 回复
分享
发布于 2020-01-05 09:34

相关推荐

536 4559 评论
分享
牛客网
牛客企业服务