Python程序猿面试杂谈


不同的互联网公司面试环节不尽相同,总体而言,一般有技术面(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月份上线,...”)
  • 职业规划
  • 过往离职原因(考察应聘者是否浮躁,此处切忌非议之前公司)

公司认同:

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

个人素质:

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

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

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

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

优质内容筛选与推荐>>
1、真三 那些开挂的事
2、php 面向对象
3、Moss开发中遇到的问题汇总
4、用户模板和用户场景
5、vue-clickoutside d


长按二维码向我转账

受苹果公司新规定影响,微信 iOS 版的赞赏功能被关闭,可通过二维码转账支持公众号。

    阅读
    好看
    已推荐到看一看
    你的朋友可以在“发现”-“看一看”看到你认为好看的文章。
    已取消,“好看”想法已同步删除
    已推荐到看一看 和朋友分享想法
    最多200字,当前共 发送

    已发送

    朋友将在看一看看到

    确定
    分享你的想法...
    取消

    分享想法到看一看

    确定
    最多200字,当前共

    发送中

    网络异常,请稍后重试

    微信扫一扫
    关注该公众号