不同的互联网公司面试环节不尽相同,总体而言,一般有技术面(1-3轮)、leader面(组长/总监/CTO/CEO...)、hr面,面试轮数视公司规模和公司实际具体情况而定。下文将就面试的不同环节阐述下这些年来个人作为一个两方面角色的参与者的一些体会,希望能够有所裨益。

一、技术面:

技术面这块考察的内容主要分为两部分:专业能力和综合素质。

1. 专业能力

专业能力又分为基础知识点广度和深度、逻辑思维能力、实战经验(实际中部分公司并不一定三个方面都会问到)。

不同的应聘岗位基础知识点略有不同,Python类岗位大体会包括Python基础相关、数据库相关、Linux相关、网络相关等;另外具体岗位会有具体领域的知识点问题,如爬虫会问反爬相关,测试有测试相关等;

逻辑思维能力大体会通过两种方式考察:算法和场景设计,场景设计指面试官假设一个实际应用场景,考察应聘者面对全新问题的思维和解决问题的思路,逻辑思维这块颇为忌讳面试者直接不会,此部分思路重要性远大于结果

实战经验这块一般指过往项目经验和从业经历。不同的开发岗位此部分在面试中所占用的比重不一样。对于初中级开发岗而言,该模块要求不高(实际占比可能不超过20%)。主要旨在考察候选人在以前的工作中做过什么,是否是在打杂,遇到过什么问题,面试官以此在一定程度上判断应聘者是否能在之后的工作中胜任具体的项目。问法有”讲一下你过往中的一个项目...“, ”你印象最深刻的一个项目/一个问题是什么...“ ”你觉得最能体现你能力的一件事是...“ ”你在XXX项目中做了什么...“等等;

2. 综合素质

该部分一般是从面试中整体感觉来评判,主要考察面试者整体的精神面貌、沟通表达能力、潜在的协作能力、是否符合该公司的价值观文化等。综合素质对面试结果的影响很大,很多时候会有一票否决的作用。谦逊低调(不要质疑面试官)、主动积极向上、流畅沟通、尊重他人是该部分的关键。当有多轮面试时,越往后的面试该部分比重越大。

二、leader面

技术面后,一般会有一个leader(组长/总监/CTO/CEO...)面,该部分具体基础知识通常涉及较少,主要集中在场景设计及综合素质考评这块,大多为开放性问题;如”讲一下你过往中遇到的你印象深刻的问题...“、”你的职业规划是什么...”等等。综合素质是重点

三、hr面

hr面分两种情况。一种是前面技术面或leader面结果不理想,hr负责让面试者回去,此种情况很容易识别。第二种是真正的面试考察,hr旨在考察应聘者的人品是否有问题、是否弄虚作假、是否符合该公司的价值观文化,以及薪资是否超出该岗位的上限。该部分面试者不犯大错即可(如候选人说因为和上家公司leader不和而离职,非议前公司,跳槽原因直说因为薪水、被hr发现造假、要求薪资明显过高等等)。

四、常见面试题

不同的公司、不同的面试官差异较大,即使同一个面试官两次面试问题也经常颇多不同,随兴而问较为常见。下面简单陈列一下各方面的常见面试题(实际面试中没被面到勿怪)。

1. 自我介绍

自我介绍部分一般是用来面试官阅读应聘者简历时的过渡阶段(面试官避免冷场尴尬),该部分候选人需要注意的点:

  • 时间尽量控制在30s-两分钟左右(略大于面试官阅读简历时间即可);
  • 自我介绍时切忌卡顿(非停顿),同时不要给面试官在背书的感觉,可眼睛注视面试官;

2. 专业能力--知识点广度和深度(深度部分针对于广度中的具体知识点回答情况追问)

Python相关:

  • Python3特性和变化
  • GIL
  • 解释器
  • 循环引用
  • 内存回收
  • 进程、线程、协程
  • LEGB

 DB相关:

  • MySQL存储引擎
  • MySQL索引机制
  • MySQL使用场景
  • 事务特性
  • 事务隔离
  • MVCC
  • Gap Lock 
  • Redis使用场景
  • Redis数据类型
  • Redis存储机制
  • zset存储机制
  • Redis持久化方式
  • MongoDB和MySQL差异
  • MongoDB使用场景

web相关:

  • TCP握手挥手及原理
  • TCP连接状态
  • 一次完成的HTTP请求详细流程
  • Django具体知识点
  • Flask具体知识点(如g对象用法)
  • 同步和异步
  • 阻塞和非阻塞
  • 多路复用
  • Nginx作用及使用场景

Linux相关:

  • shell命令(查看端口、负载、内存等)
  • 正则
  • SYN FLOOD
  • Centos和Ubuntu差异

其他(和具体岗位及应聘者简历内容相关):

  • MQ
  • rabbitmq
  • kafka
  • celery
  • 爬虫
  • Devops

3. 专业能力--逻辑思维能力

算法相关:(此部分变化很多)

  • 洗牌算法
  • 链表相交
  • 链表逆转
  • 树最短路径
  • 开方实现
  • ...

场景设计:(和具体应聘公司的岗位及工作内容有关)

  • 设定一个待爬取的业务需求,如何爬取
  • 设定一个系统业务场景,考察架构设计思路
  • 假定一个开发中遇到的问题,考察解决思维
  • ...

4. 专业能力--实战经验(可能会根据应聘者回答深入知识点细问)

  • 阐述你的一个项目
  • 过往工作中解决的最难的问题
  • 过去中最能体现你水平的事情是什么

5.  综合素质

价值观:

  • 加班意愿(大多不会直接问是否接受加班,间接问比如“我们这边初期会比较辛苦/我们大概x月份上线,...”)
  • 职业规划
  • 过往离职原因(考察应聘者是否浮躁,此处切忌非议之前公司)

公司认同:

  • 你对我们公司了解多少
  • 你有什么要问我们的吗
  • 你的期望薪资是多少(考察和该岗位的匹配度及应聘者自我认知)

个人素质:

沟通表达能力(无问题,面试过程整体体现)

协作能力(无问题,考察应聘者性格是否过于高傲,是否可能存在不合群,切忌面试过程中质疑面试官)

学习能力(无问题,体现在专业能力面试中及面试整体感觉)

主动性和内驱力(无具体问题,体现在面试整体流程中)

Python程序猿面试杂谈的更多相关文章

  1. HR筒子说:程序猿面试那点事(转)

    小屁孩曾经有过4年的招聘经验,期间见识了各种类型的程序猿:有大牛.有菜牛:有功成名就,有苦苦挣扎不知方向.等后来做了一枚程序猿之后发现,HR眼中的程序猿和程序猿中的HR都是不一样的.有感与此,从HR的 ...

  2. 《Java程序猿面试笔试宝典》之Java与C/C++有什么异同

    Java与C++都是面向对象语言,都使用了面向对象思想(比如封装.继承.多态等),因为面向对象有很多非常好的特性(继承.组合等),使得二者都有非常好的可重用性. 须要注意的是,二者并不是全然一样,以下 ...

  3. HR筒子说:程序猿面试那点事

    小屁孩曾经有过4年的招聘经验,期间见识了各种类型的程序猿:有大牛.有菜牛:有功成名就,有苦苦挣扎不知方向.等后来做了一枚程序猿之后发现,HR眼中的程序猿和程序猿中的HR都是不一样的.有感与此,从HR的 ...

  4. leetcode:程序猿面试技巧

    起因 写在开头,脑袋铁定秀逗了,历时20多天,刷完了leetcode上面151道题目(当然非常多是google的),感觉自己对算法和数据结构算是入门了,但仍然还有非常多不清楚的地方,于是有了对于每道题 ...

  5. 《Java程序猿面试笔试宝典》之组合与继承有什么差别

    组合和继承是面向对象中两种代码复用的方式. 组合是指在新类里面创建原有类的对象,反复利用已有类的功能.继承是面向对象的主要特性之中的一个,它同意设计人员依据其他类的实现来定义一个类的实现. 组合和继承 ...

  6. 《Java程序猿面试笔试宝典》之Java程序初始化的顺序是如何的

    在Java语言中.当实例化对象时.对象所在类的全部成员变量首先要进行初始化,仅仅有当全部类成员完毕初始化后,才会调用对象所在类的构造函数创建对象.    Java程序的初始化一般遵循以下三个原则(以下 ...

  7. 《Java程序猿面试笔试宝典》之 什么是AOP

    AOP(Aspect-Oriented Programming.面向切面编程)是对面向对象开发的一种补充,它同意开发者在不改变原来模型的基础上动态地改动模型从而满足新的需求.比如.在不改变原来业务逻辑 ...

  8. GEEK学习笔记— —程序猿面试宝典笔记(二)

    所谓笔记,就是比較个人的东西,把个人认为有点意思的东西记录下来~~ 程序猿面试宝典笔记(一)基本概念 程序猿面试宝典笔记(二)预处理.const和sizeof 程序猿面试宝典笔记(三)auto_ptr ...

  9. GEEK学习笔记— —程序猿面试宝典笔记(三)

    所谓笔记,就是比較个人的东西,把个人认为有点意思的东西记录下来~~ 程序猿面试宝典笔记(一)基本概念 程序猿面试宝典笔记(二)预处理.const和sizeof 程序猿面试宝典笔记(三)auto_ptr ...

随机推荐

  1. easypoi 版本依赖关系

    <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactI ...

  2. python---win32gui、win32con、win32api:winAPI操作

    python操作winAPI 窗口操作: import sys from PyQt5.QtWidgets import QApplication, QWidget from lianxi import ...

  3. 【51nod 2004】终结之时

    题目大意 "将世界终结前最后的画面,深深刻印进死水般的心海." 祈愿没有得到回应,雷声冲破云霄,正在祈愿的洛天依受到了极大的打击. 洛天依叹了口气,说:"看来这个世界正如 ...

  4. pdf缩略图上传组件

    之前仿造uploadify写了一个HTML5版的文件上传插件,没看过的朋友可以点此先看一下~得到了不少朋友的好评,我自己也用在了项目中,不论是用户头像上传,还是各种媒体文件的上传,以及各种个性的业务需 ...

  5. Subarray Sorting (线段树)

    题意:给你两个长度为 n 的序列 a 和 b , 可以对 a 进行 操作: 选择一段区间[ l, r ] ,使得序列a 在这段区间里 按升序排序. 可以对a 进行任意多次操作,问 a是否有可能变成b序 ...

  6. Jmeter(十二)常用插件

    一.下载及安装 下载地址:https://jmeter-plugins.org/install/Install/ 下载后文件为一个jar包,将其放入jmeter安装目录下的lib/ext目录,然后重启 ...

  7. Centos 安装字体库 以及解决confluence 旧文档数据的乱码

    首先,第一步我们需要执行以下的命令来安装字体管理工具:  yum install -y fontconfig mkfontscale 然后我们到(Windows系统)“c:/windows/fonts ...

  8. 动态生成html文件

    #include"stdio.h" main() { FILE *a; int x1,x2,N1=99,N2=60; char FileName[100]; for(x1=10;x ...

  9. 教程:myeclipse在线安装svn插件

    SVN 版本控制,相信开发过程中都很多有用到,今天在myeclipse 在线安装了SVN插件.下面是具体步骤,记录下,希望对有需要的朋友提供帮助. 要求: Myeclispe,电脑能连接互联网 步骤: ...

  10. IDEA问题java: -source 1.6 中不支持diamond、 lambda 表达式

    文章目录 一.问题:连片的java: -source 1.6 中不支持 diamond 运算符.lambda 表达式 二.解决方法: 1.在微信群里问大佬,大佬在玩游戏,回复的比较慢 2.自己查Goo ...