Python后端开发面试(一) 面试流程介绍

文章目录

    • Python后端职位分析
    • 面试流程和环节
    • Python后端面试技术栈
    • 简历与个人介绍
      • 简历内容
      • 自我介绍
    • 行为面试题
      • 什么是行为面试题?
      • STAR模型
      • SATR范例
      • 项目的技术难题
      • 常见问题

Python后端职位分析

  • 招聘看什么?

    • 岗位职责(业务是否感兴趣)
    • 职位要求(自己是否掌握,查漏补缺)
    • 公司技术栈(公司使用到哪些技术)
  • 职位范例

  • 看招聘描述, 挖掘信息的注意事项:

    • 对招聘公司的业务是否感兴趣
    • 职位要求中的知识技能是否掌握, 面试有多大概率成功
    • 自己还有哪些知识技能需要查漏补缺
  • 如何提升面试成功率?

    • 针对公司技术栈和要求编写不同的简历
    • 表现出对职位和公司业务的兴趣
    • 突出自己的技能优势,提高匹配度(技能与公司要求比较符合)

面试流程和环节

  • 校招注重基础, 社招重视项目

    • 一面问基础
    • 二面问项目
    • 三面问设计
  • 学生重基础,如果项目经验少, 基础很重要

    • 学历和成绩
    • 大学所学计算机课程
    • 在校项目/实习经验
  • 社招重视项目和设计

    • 参加过哪些项目? 有没有知名项目
    • 在项目中承担的职责
    • 有没有系统设计经验
  • 非技术性问题

    • 自我介绍
    • 口头表达能力
    • 沟通交流能力
  • HR面试(offer近在咫尺)

    • 薪资待遇(锚定效应, 可以提出比期望薪资稍高的待遇)
    • 职业规划
    • 自我介绍/沟通能力等.

Python后端面试技术栈

  • Web请求的流程
    在这里插入图片描述

  • Python语言基础

    • 语言特点
    • 语法基础
    • 高级特性
  • 算法与数据结构

    • 常用算法和数据结构
    • 分析时间/空间复杂度
    • 实现常见的数据结构和算法
  • 编程范式

    • 面向对象编程
    • 常见设计模式(单例模式)
    • 函数式编程
  • 操作系统

    • 常用Linux命令
    • 进程/线程
    • 内存管理
  • 网络编程

    • 常用协议TCP/UDP/IP/HTTP
    • Socket编程基础
    • Python并发库
  • 数据库

    • MySQL常考,索引优化
    • 关系型数据库和NoSQL的使用场景
    • Redis缓存
  • Python Web框架

    • 常用框架对比,RESTful
    • WSGI原理
    • Web安全问题
  • 系统设计

    • 设计原则, 如何分析
    • 后端常用组件(缓存、数据库、消息队列等)
    • 技术选型和实现(短网址服务、Feed流系统)
  • 软实力(技术之外)

    • 学习能力
    • 业务理解能力、沟通交流能力、团队协作能力
    • 具有产品意识,技术引导产品
    • 技术领导能力和影响力
    • 心态
  • 其他理解

    • 工作内容和业务密切相关
    • 平台决定成长
    • 准备面试需要有的放矢、根职位相匹配

总结: 面试造核弹,工作拧螺丝。

简历与个人介绍

简历内容

  • 表现个人优势,突出关键信息
    • 基本信息(姓名、学习、学历、联系方式等)
    • 职业技能(编程语言、框架、数据库、开发工具等)
    • 关键项目经验(担任职责、用到的技术栈等)
    • 简历自我评价可有可无(如果写保证内容简洁、态度真诚)
  • 简历加分项
    • 知名的项目经验
    • 技术栈比较匹配
    • 开源项目(Github/个人博客/Linux等)
  • 简历注意事项
    • 内容精简,突出重点。不宜超过2页。可以套用模板。
    • 注意格式,推荐pdf(保证跨平台打开格式一致)。
    • 信息真实,不弄虚作假。技能要和岗位相匹配,无太多无关内容。

自我介绍

  • 自我介绍时说什么?

    • 个人信息: 我叫…, 毕业于…,所学专业是…
    • 掌握的技术,参加过的项目:
      • 之前就职于xxx公司,担任后端工程师,负责xxx项目,对xxx技术比较熟悉。
    • 应聘的岗位,表达对该岗位的看法和兴趣
      • 我的工作经验和目前这个岗位较为匹配, 希望能应聘到这个岗位。
  • 不擅长表达的如何完美的自我介绍?

    • 早准备
    • 准备一个开场白演讲稿,面试前多练习
    • 找一个同伴好友模拟面试,消除紧张心理

行为面试题

什么是行为面试题?

  • 根据候选人过去的行为评测其胜任能力
    • 理论依据: 行为的连贯性
    • 人在面对相似的场景时会倾向于重复过去的行为模式
    • 评判人的业务能力、沟通交流能力、语言表达能力、抗压能力等
  • 行为面试的套路
    • 提问方式: 说说你曾经…
    • 说说你做过的这个项目
    • 说说你碰到过的技术难题?你是如何解决的?有哪些收获?

STAR模型

  • 情境(situation): 什么情况下发生的
  • 任务(task): 你是如何明确你的任务的
  • 行动(action): 采取了什么样的行动
  • 结果(result): 结果怎么样? 学到了什么?

SATR范例

  • S: 近年来短视频日渐火爆, 深受大众喜爱, 公司决定启动自己的短视频业务。
  • T: 负责搭建支撑整个公司的视频业务系统,为其他项目提供视频服务。
  • A: 组建视频团队, 调研云服务。采用阿里云服务搭建视频上传和转码系统,提供给其他业务方使用。
  • R: 成功搭建了公司的视频业务系统,支撑了整个公司的视频上传、转码、播放服务。

项目的技术难题

常见问题 项目1
用到了哪些技术? Flask/Redis/MySQL/Celery/gevent等
碰到了哪些技术难题?如何解决的? 并发性能不够,使用gevent并发库解决
项目最大的收获是什么? 异步编程性能优化

常见问题

  • 言简意赅,突出重点,省略细枝末节。适当模拟练习。STAR模型回答更有条理。

  • 面试官一般会问: 你还有什么要问我的吗?

    • 尽量别说没有,会表明你对岗位缺乏了解和兴趣
    • 表现出兴趣: 问问工作内容(业务)、技术栈、团队、项目等
    • 问一些自己感兴趣的技术问题、架构问题等
  • 讲讲你做过最有难度的项目?

  • 你做了哪些工作? 承担的职责是什么?

  • 你遇到的困难是什么? 如何解决的?

你可能感兴趣的:(面试整理)