个人面试必备

1.基础知识:(基础非常重要)数据结构与算法、编程语言(java、C)、操作系统、基本DB知识

2.项目经验:不在于多而在于、主要回答应该是遇到的挑战和解决的问题、对于简历上的每个项目都要弄清楚、要求技术扎实深入

招聘贴吧:水木清华、饮水思源、飘渺水云间、西电好网、北邮人

软件技术相关书籍:

专业基础:《深入理解计算机系统》《操作系统》《数据结构》

算法:《算法导论》被别人pass了,枯燥《编程之美》《编程珠玑》《编程珠玑2》,算法提高多做题

Java:《Java编程思想》被别人pass了,枯燥 《Java虚拟机》《Java与模式》

看一些能够吸收的书吧~

《编程之美》一本实战书,很多笔试、面试题来于此书,但是有点难,暂不看。

《编程珠玑》主要介绍软件设计思想,书中例子已成为百考不厌的经典题目,如数组循环移位、随机采样算法等。

《算法导论》对各种常见算法深入的讲解和详尽的证明,并对每个算法的奇缘、动机和求解过程有较多设计。

《深入理解计算机系统》本书从程序员的视角详细阐述计算机系统的本质概念, 并展示这些概念如何实实在在地影响应用程序的正确性, 性能和实用性。全书共12章, 主要内容包括信息的表示和处理、程序的机器级表示、处理器体系结构、优化程序性能、存储器层次结构、链接、异常控制流、虚拟存储器、系统级I/O、网络编程、并发编程等

“基础知识最反映一个人的基本能力和基础素质,是以后工作中最核心的能力要求,我一般考查1.数据结构和算法;2.编程能力;3.部分数学知识,如概率;4.问题分析和推理能力---百度技术经理”

“我比较重视四块基础知识:1.编程基本功(特别喜欢字符串处理这一类问题);2.并发控制;3.算法、复杂度;4.语言的基本概念。---百度高级软件工程师”

“我会考查编程基础、计算机系统基础知识、算法以及设计能力。这些是一个软件工程师的最基本的东西,这些方面出色的人,我们一般认识是有发展潜力的。---盛大高级研究员”

“1.对OS的理解程度。这些知识对于工作中常遇到的内存管理、文件操作、程序性能、多线程、程序安全等有重要帮助。对于OS理解较深的人对于偏低层的工作上手一般比较快。2.对于一门编程语言的掌握程度。一个热爱编程的人应该会对某种语言有比较深入的了解,通常这样的人对于新的编程语言上手也比较快,而且比较深入。3.常用的算法和数据结构。不了解这些的程序员只能写写“Hello World”---微软SDE”

原文地址:https://www.cnblogs.com/wangqi327/p/4434496.html