Python Web后台一些面试经历

https://blog.csdn.net/Liusple/article/details/78862097

Job1

职位描述

  1. 开发和维护平台系统
  2. 负责web数据中心和运营中心功能的开发
  3. 配合团队其他成员进行模块开发及整合

任职要求

  1. Python及其他开发语言
  2. 熟悉Tornado,Twisted,Libevent等异步socket通讯框架
  3. 熟练使用MySQL,熟悉MongoDB,Redis,具有面向对象设计思想,接口清晰,命名规范
  4. 熟悉Linux开发平台

过程

自我介绍
谈一下学习后端的感想
介绍一下上一份工作
GIL是什么,怎么解决GIL带来的问题(面试官想要的答案是多进程)
装饰器是什么,应用场景是什么
闭包是什么
数据库原生语句会写吗
事务了解吗
编译原理了解吗

Job2

工作职责

  1. 参与网站的平台开发,架构设计和维护
  2. 参与需求分析和产品设计
  3. 撰写Python,Django进行后台及API的开发
  4. 撰写测试以及团队成员间进行Code Review
  5. 负责产品的开发,测试以及日后的维护升级

任职要求

  1. 2年以上Python工作职责
  2. 熟悉互联网项目开发,熟悉Python以及Django
  3. 良好的技术相关英文能力
  4. 熟悉Git及Git Flow开发流程
  5. 逻辑抽象能力强,具有良好的沟通能力
  6. 熟悉Linux操作系统

过程

了解我们公司吗
介绍一下自己
redis持久化,如果redis现需要重启,rdb模式下怎么在重启前保存数据
grab分区(因为谈到了双系统,就顺带问题是否了解grab)
mysql怎么处理高并发
说一下myisam和innodb的锁分别是什么
get post区别
git多人开发下的使用
工作流
为什么不继续c++
nginx作用
三个web框架区别(flask,django,tornado)
django和flask orm感觉哪个好用
职业规划
特别注重英文,说了很多词都是英文,很多没听明白

Job3

职位描述

  1. 负责服务端软件的设计,开发,维护
  2. 负责后台数据库,程序模块的设计和开发;维护优化产品,进行性能优化和架构优化
  3. 负责基础架构组件开发和优化,负责开发和维护平台公用组件和模块。负责和前端/app集成的接口及联调

任职要求

  1. 计算机基础知识扎实,包括不限定于操作系统,网络,数据结构和算法
  2. 熟练掌握至少一门语言:Ruby,Python
  3. 有些测试的习惯,熟悉单元测试和集成测试
  4. 熟悉MySql,Redis
  5. 了解RESTful API接口和常用的充值,支付,分享等第三方服务
  6. 了解html5,css3,bootstrap,angular js等前端框架
  7. 良好的编码习惯,良好的团队合作精神和学习能力,做事严谨踏实,责任心强

过程

介绍一下项目,某个项目数据库怎么设计的
mysql高可用
为什么会选择三个框架
什么时候用redis,什么时候用mysql
nginx怎么样
tornado和django区别
符合restful的url是什么样子
为什么来上海 有什么想问的 比较倾向哪个行业

Job4

职位描述

  1. 参与产品,架构设计和相关技术文档的完善
  2. 根据产品需求,完成基于Python的系统或模块的设计和开发
  3. 与各部门团队成员协同配合,完成迭代开发任务,确保产品的顺利上线

岗位要求

  1. 熟练掌握Python语言,有一年以上Python项目经验,有良好的编码风格
  2. 熟悉掌握web后端开发,熟悉后端开发常用技术如:缓存,队列等
  3. 熟悉Linux基本操作
  4. 良好的沟通,理解能力,积极的学习态度,愿意主动学习新的技术知识
  5. 具备XML,RESTful或WebService接口开发经验
  6. 熟悉odoo优先,有英语文档阅读能力

过程

几乎都在问上一份工作的情况(他说很多人来面试不知道之前做的是什么)
一句话介绍一下你们的产品(上一份工作的)
装饰器
谈一下tornado

Job5

职位描述

  1. 根据业务,梳理产品需求并合理设计后端服务开发流程
  2. 后端设计与开发以服务Web端,手机端,公众平台,小程序等
  3. 后端服务的自动化测试,运维及性能优化

职位要求

  1. 本科,专业计算机
  2. 一年以上Python后端开发经验,软件知识结构全面,有成熟作品优先
  3. 熟悉Linux操作系统下开发,部署,维护
  4. 精通Python服务端编程,精通网络编程
  5. 精通Pythonn爬虫系统编程
  6. 熟练掌握一种以上Web开发框架
  7. 熟悉SQL语言
  8. 熟悉缓存机制以及NoSQL数据库,有redis开发经验优先
  9. 能对某个新领域进行搜索,总结并快速学习,有能力维护个人技术博客优先 加分项:
  10. 有良好的编程习惯与规范
  11. 有支付系统开发经验的优先
  12. 熟练使用Git
  13. 熟练运用阿里云或UCloud等云部署

过程

先笔试
介绍一下自己
一般是怎么开发的,什么驱动开发的
熟悉工程化吗
智力题
git熟悉吗
http方法有哪些
谈谈restful
正则熟悉吗,匹配一个邮箱
redis熟悉吗,怎么使用的
python3要用python2的包怎么办
不用web框架,python里面有什么包可以开启一个web服务
存储过程了解吗
学习过程中最有成就感的事情
跨域了解吗
堆栈了解吗
1000万个数据里面删掉1000条,如何优化
nginx是什么,负载均衡什么意思
多台设备登录,怎么实现告知先登录设备账号异地登录(后来谈到tornado里面的websocket,websocket是什么,websocket断线重连)
排序算法了解吗
前后端分离
GIL
orm了解吗
工资达不到你的要求是否接受

其他

面试官问的很多问题出了公司就忘了,上面是能想起来的一些。
后端面试主要是三个方面:python语言,web框架,数据库。

大部分的面试题在下面这个链接里都有提到:
https://github.com/taizilongxu/interview_python
不过,
面试官问装饰器了解吗?回答一下装饰器的概念:装饰器是一个函数,参数是一个函数,内部定义了一个函数,然后返回这个函数。面试官一般对这个答案不满意。他希望的是能对装饰器说出自己的看法。
再比如闭包。
一般会问闭包是什么,闭包在什么情况下会使用,网上一般都是很长的文章来介绍闭包,所以面试前需要浓缩一下,准备一个稍简短的答案,最好有自己的看法。

我是半路出家学的web后端,没什么经验,涉及到实际应用情形的问题大多答的不好,稍深度的问题也答的不好,尤其是在数据库这方面。

下面有一个我整理的python后端面试题,有兴趣可以戳一下看看:
https://note.youdao.com/share/?id=64f202f11b315f1af7b5f6306f374b38&type=note#/

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Liusple/article/details/78862097

你可能感兴趣的:(笔试,面试)