Python程序猿面试杂谈

 

    不一样的互联网公司面试环节不尽相同,整体而言,通常有技术面(1-3轮)、leader面(组长/总监/CTO/CEO...)、hr面,面试轮数视公司规模和公司实际具体状况而定。下文将就面试的不一样环节阐述下这些年来我的做为一个两方面角色的参与者的一些体会,但愿可以有所裨益。web

 

1、技术面:面试

 

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

    1. 专业能力shell

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

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

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

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

 

    2. 综合素质学习

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

 

2、leader

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

 

3、hr

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

 

4、常见面试题

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

    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月份上线,...”)
  •      职业规划
  •      过往离职缘由(考察应聘者是否浮躁,此处切忌非议以前公司)

   公司认同:

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

 

   我的素质:

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

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

      学习能力(无问题,体如今专业能力面试中及面试总体感受)

      主动性和内驱力(无具体问题,体如今面试总体流程中)

相关文章
相关标签/搜索