技术面试书单及常见问题

    xiaoxiao2021-03-25  30

    在知乎听了一场Live,推荐了程序员的面试书单,整理一下,慢慢看起来。

    C/C++

    《c++ primer》《c primer plus》《effective c++》《more effective c++》

    Java

    《Java 核心技术》 卷I、II《深入理解Java虚拟机》

    基础

    操作系统、数据结构与算法、计算机网络、数据库、编译原理 看教材

    网络

    TCP: 《TCP/IP详解 卷一》(网络、通信、分布式系统、服务器)HTTP: 《图解HTTP》(web开发)《Unix 网络编程》

    设计模式

    《Head First 设计模式》

    Linux

    《Linux从入门到精通》《深入理解LINUX内核》《UNIX环境高级编程》

    数学

    《程序员的数学》1+2+3《具体数学》

    如果对底层理解越多,可能就会比别人有一点点不一样,这一点点的不一样,就体现了你的水平。

    面试常见问题

    操作系统常见问题:

    线程、进程、协程线程同步进程间通信方式I/O复用缓存算法(LRU等)死锁问题文件系统

    计算机网络常见问题:

    五层协议的体系结构ping的原理TCP三次握手、四次挥手TCP如何实现可靠传输TCP拥塞控制TCP流量控制socket的使用HTTP、HTTPS、HTTP2

    数据结构与算法:

    链表(各种指针题)各种排序算法与复杂度分析hash算法的原理map的原理(hashmap、treemap)二叉树、满二叉树、完全二叉树平衡二叉树的实现栈的进出顺序最小生成树、单源最短路径

    数据库:

    1NF、2NF、3NFsql语法与命令索引的原理和作用事务:原子性、一致性、隔离性、持久性超键、候选键、主键、外键

    数学:

    概率、期望(常考)、随机数算法组合数学 (常考)统计学、线性代数、微积分 (基础研究岗)

    算法准备:

    书:

    《算法导论》 理论性,扎实,需要时间《编程之美》 《crack the coding interview》 中低难度算法题《Elements of Programming interviews》偏难

    刷:

    leetcode 主要用来应付面试,面试外企(谷歌、微软、hulu、airbnb、indeed、Works Applications)之前至少刷两遍,面试国内企业,如BAT,熟练掌握中等难度即可hihocoder openjudge 主要用来练习上机笔试,长期保持练习,每天至少一道。谷歌、微软、hulu、indeed、网易游戏等 都采用上机算法笔试的形式一些论坛有国外公司的面经或原题,如“一亩三分地”

    后台开发 (java php python nodejs)

    消息队列 负载均衡 分布式缓存(cache,一致性哈希)分布式文件系统 分布式数据库(关系型数据库、nosql)信息安全(HTTPS【热门】,加密技术【对称加密、非对称加密】)

    书:《大型网站技术架构》

    大数据岗

    数据处理平台:Spark、Hadoop、Elasticsearch存储:HDFS资源调度:Yarn Mesos机器学习工具:TensorFlow, torch, MXNet数据仓库(SQL类):Pig Hive Spark SQL Phoenix消息队列:RocketMQ RabbitMQ Kafka流式计算:Storm, Spark Streaming机器学习算法:聚类 时间序列 回归分析 文本挖掘 决策树 支持向量机 贝叶斯分类 神经网络《机器学习》周志华云计算:Openstack Docker

    准备:

    长期准备:算法题每天都做,每天看一些推荐书籍的关键部分

    项目准备:开源项目 CodeTriage上面找项目, Google Summer Code, 阿里天池比赛, 实验室项目

    找实习:1月份瞄准目标公司,开始集中准备,找内推,3月中旬之后就陆续开始笔试面试了

    实习:6~9月 争取实现转正,一般都能拿到好offer

    转正:9月

    校招:9月到12月

    算法刷题:至少在进入校招前,坚持半年,经常复习

    转载请注明原文地址: https://ju.6miu.com/read-150216.html

    最新回复(0)