1. HTTP和HTTPS相关问题。

    2. Linux常用命令和服务。

    3. 进程和线程之间的关系。什么时候用多线程?什么时候用多进程?。

    4. 关系型数据库相关问题(ACID、事务隔离级别、锁、SQL优化)。

    5. 非关系型数据库相关问题(CAP/BASE、应用场景)。

    Python基础

    1. 装饰器的作用、原理和实现。

    2. 使用过哪些魔法方法。

    3. 列表、集合、字典的底层实现。

    4. 并发编程的相关问题。

    5. 协程和异步I/O相关知识。

    1. MVC架构(MTV)解决了什么问题。

    2. 中间件的执行流程以及如何自定义中间件。

    3. REST数据接口如何设计(URL、域名、版本、过滤、状态码、安全性)。

    4. 使用ORM框架实现CRUD操作的相关问题。

      • 如何实现多条件组合查询 / 如何执行原生的SQL / 如何避免N+1查询问题
    5. 如何实现页面缓存和查询缓存?缓存如何预热?

    爬虫相关

    1. Scrapy框架的组件和数据处理流程。
    2. 爬取的目的(项目中哪些地方需要用到爬虫的数据)。
    3. 使用的工具(抓包、下载、清理、存储、分析、可视化)。
    4. 数据的来源(能够轻松的列举出10个网站)。
    5. 反反爬措施(限速、请求头、Cookie池、代理池、Selenium WebDriver、RoboBrowser、TOR、OCR)。
    6. 数据的体量(最后抓取了多少数据,多少W条数据或多少个G的数据)。
    7. 后期数据处理(持久化、数据补全、归一化、格式化、转存、分类)。
    1. 科学运算函数库(SciPy和NumPy常用运算)。
    2. 数据分析库(Pandas中封装的常用算法)。
    3. 常用的模型及对应的场景(分类、回归、聚类)。
    4. 提取了哪些具体的指标。
    5. 如何评价模型的优劣。
    6. 每种模型实际操作的步骤,对结果如何评价。

    项目相关

    1. 项目团队构成以及自己在团队中扮演的角色(在项目中的职责)。
    2. 项目的业务架构(哪些模块及子模块)和技术架构(移动端、PC端、后端技术栈)。
    3. 软件控制管理相关工具(版本控制、问题管理、持续集成)。
    4. 核心业务实体及其属性,实体与实体之间的关系。
    5. 用到哪些依赖库,依赖库主要解决哪方面的问题。
    6. 项目如何部署上线以及项目的物理架构(Nginx、Gunicorn/uWSGI、Redis、MongoDB、MySQL、Supervisor等)。
    7. 项目中遇到的困难有哪些,如何解决的。