百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术资源 > 正文

月薪五W前辈偷偷告诉我,Python后端工程师这样面试绝对稳

off999 2024-10-19 07:14 22 浏览 0 评论

面试其实还是要区分对待的,行内老牛和新人在不同的方向上都有各自的特点,包括老牛们丰富的经验、全面的眼界等等,也包括新人的锐气和新的思维观念。

如果正在Python这条路上愁眉不展的话,可以私信小编我“资料”我收集了不少强力资料,另外面试相关资料都有的,里面包括Python,人工智能,web,数据分析,爬虫从基础到职业进阶的私信我就可以

1. 基础部分

这块没什么太多的区别:线程、进程、协程必问;三者区别和联系,应用场景;python中有何特殊之处;python的协程用过吗,如何实现的,asyncio中是如何实现的,协程间是如何实现调度的?

元类的作用;

如何实现动态加载;

如何实时debug;

可变、不可变是什么,为何会这么设计;

如何理解python的一切皆对象;

lambda函数,怎么看待;

迭代器是什么,next和iter各自是干嘛的;

如何垃圾回收,什么情况会内存泄漏,如何排查;

2. 算法排序部分

这块没啥好说的,LeetCode刷起来。至于如何刷,我觉得知乎上说的不错,第一遍直接看答案,照着答案手打去理解;熟悉常见的数据结构/算法之后再做题,至于先做哪些题,我觉得没必要一道道来,先熟悉数据结构和常见的算法,[知乎如何刷LeetCode](大家都是如何刷 LeetCode 的?) 然后可以先做腾讯50,或者热点面试题这种;

如果数据结构你都了解,那么推荐一个大神:[labuladong的算法小抄](labuladong的算法小抄)。看完之后你会发现,什么狗屁算法题,都是模板,直接往里套就行。。回溯、动态规划、二分、二叉树、双指针、滑动窗口。。。全给你整明白了,值得每天看一遍,真的牛逼

手写LRU(LRU简直不要太频繁,几乎必考,也经常会让手写,,python使用OrderedDict还是很轻松的)

手写堆排;

找中位数,或者类似topK问题(堆排,或者快速排序的思想)

单链表排序;

手写冒泡,如何优化;

大文件/海量数据的处理,这块也很频繁,推荐专门搜下这方面,基本就是分治的思想,哈希表,tire树,或者AC自动机,布隆过滤器。多看两篇文章就懂了,没啥好说的

如何设计URL短链,比如微博分享的这种(抖音问的)

二叉树的右视图;

链表第K位翻转;

三数之和的进阶版:三数之加减乘除,,这题我没想出来,直接跪了。。

等等一些,基本都是常见的LeetCode中等难度及以下的题,简单的题基本都会问这样实现的时间、空间复杂度多少,如何优化

3. 网络基础部分

这块问的不多,可能是我样本比较少吧,当然也得必需准备,万一到时候说不出,那就基本凉了。。

握手挥手、time_wait这些都是必需准备的,没啥好说的

HTTP版本,常见header,HTTPS介绍

Nginx介绍,有几个进程,为何这么快;

uwsgi介绍, 是干嘛的;

socket方面,epoll为何快,底层用了什么?顺带说下红黑树,比如左旋右旋,变色,和AVL区别,为啥大家都会用这个;

4. 数据库部分

这块是重头戏,高不高级就看着快了

分成3部分吧,MySQL,Redis,MQ/KAFKA

首先是MySQL,

ACID说一下;

事务隔离的级别,默认是啥,幻读是啥意思;

如何优化?涉及到分库分表,慢查询如何看,explain哪个字段能看是否用索引;最左前缀优先匹配;建索引的原则;

CPU高应该怎么办;

B+树和B树区别,MySQL为何用B+;主键查询和非主键索引查询有何区别;

哈希索引;

什么是聚簇索引;

B树有何优点,什么场景会用B树?(memcache)

扇区、节点大小的概念,为何树的高度要低;

innodb和myisam的区别,存储方面呢;

你如何看待外键,优劣;

redis

(这块问的超多,也有可能是因为我说我看过单机Redis的源码)

常见使用场景有哪些?

为啥快?单线程到底是因还是果;

发布订阅功能,和MQ,比如rabbitMQ有何区别?

排行榜、关注的人用什么实现;如果我想范围取值,你推荐用什么方式;

dict底层实现,rehash讲一下;触发条件;

zset底层实现,跳跃表讲一下;

sds的特点,为何这么设计;

淘汰机制,近似LRU,为何这么设计;


两种持久化应用场景,RDB有何缺点,默认会用什么;

aof文件太大怎么办;

集群:你知道几种方式,cluster特点,主从之间是如何同步的,哈希槽概念讲一下,是如何动态扩容的;

异常情况考虑过吗,比如master断网后,选举出新master,原master又恢复了。。

分布式锁如何设计

redis双写,是先写数据库还是先缓存?各有什么问题,怎么解决?

强一致性要求,是否要用缓存?

MQ/KAFKA

(这块应该会根据你的项目经历来问,用的多问的多)

何时会用队列;

rabbitMQ和卡夫卡的优劣;

如何保证消息不会丢失/重复消费(基本必考)

卡夫卡的partition概念是什么;


Linux部分

常用命令说下,多个文件下查找目标string,比如cat find,awk

这个也算是问的比较少

5. 项目部分

这块就每个人都不一样了。

我的话就是RBAC权限模型问的比较多,白板上设计一个公司的权限系统,数据库如何设计;

django/flask区别;

tornado为何快;

flask里的请求上下文和应用上下文说一下。

celery任务丢失遇到过吗,如何保证高可用;

待补充。。。

6. docker+k8s

这块,说实话我没啥经验,但是呢,这个基本算得上是必考内容了,常问的就是如何编排docker等等,,推荐好好搜几篇文章认真准备下,这里我就不献丑了

面试过程篇

一般上来就是自我介绍,可以适当发挥一些简历上没有的东西,影响不大。

然后面对面试官的提问,如果是没头绪或者不知道怎么回答,不要直接就说不会,而是可以说下你自己的理解,或者说下你知道的其他技术,是如何解决这个问题的,猜测一下。但千万不要不懂装懂,如果面试官觉得你这个人不实诚,那就真的凉了。。

还有就是尽量把面试官往你擅长的方向去,多去问你十拿九稳的,比如面试官问:MySQL如何优化,不要一句话上缓存/加索引就结束了。可以举个具体例子来讲,巴拉巴拉一顿输出,时间不可能少于3分钟,然后再相互聊几个问题深入一下,10分钟就过去了。

最后的反问环节,这块也提前准备几个问题,具体可以知乎看下,问的目的,是为了让面试官知道,你真的很期待加入这个团队,让他觉得,只要给你offer你就会加入。

HR面,不要把HR想象的太坏,也不要跪舔,就把她当做以后的同事就OK了,不卑不亢,此处不留爷自有留爷处

相关推荐

大文件传不动?WinRAR/7-Zip 入门到高手,这 5 个技巧让你效率翻倍

“这200张照片怎么传给女儿?微信发不了,邮箱附件又超限……”62岁的张阿姨对着电脑犯愁时,儿子只用了3分钟就把照片压缩成一个文件,还教她:“以后用压缩软件,比打包行李还方便!”职场人更懂这...

电脑解压缩软件推荐——7-Zip:免费、高效、简洁的文件管理神器

在日常工作中,我们经常需要处理压缩文件。无论是下载软件包、接收文件,还是存储大量数据,压缩和解压缩文件都成为了我们日常操作的一部分。而说到压缩解压软件,7-Zip绝对是一个不可忽视的名字。今天,我就来...

设置了加密密码zip文件要如何打开?这几个方法可以试试~

Zip是一种常见的压缩格式文件,文件还可以设置密码保护。那设置了密码的Zip文件要如何打开呢?不清楚的小伙伴一起来看看吧。当我们知道密码想要打开带密码的Zip文件,我们需要用到适用于Zip格式的解压缩...

大文件想要传输成功,怎么把ZIP文件分卷压缩

不知道各位小伙伴有没有这样的烦恼,发送很大很大的压缩包会受到限制,为此,想要在压缩过程中将文件拆分为几个压缩包并且同时为所有压缩包设置加密应该如何设置?方法一:使用7-Zip免费且强大的文件管理工具7...

高效处理 RAR 分卷压缩包:合并解压操作全攻略

在文件传输和存储过程中,当遇到大文件时,我们常常会使用分卷压缩的方式将其拆分成多个较小的压缩包,方便存储和传输。RAR作为一种常见的压缩格式,分卷压缩包的使用频率也很高。但很多人在拿到RAR分卷...

2个方法教你如何删除ZIP压缩包密码

zip压缩包设置了加密密码,每次解压文件都需要输入密码才能够顺利解压出文件,当压缩包文件不再需要加密的时候,大家肯定想删除压缩包密码,或是忘记了压缩包密码,想要通过删除操作将压缩包密码删除,就能够顺利...

速转!漏洞预警丨压缩软件Winrar目录穿越漏洞

WinRAR是一款功能强大的压缩包管理器,它是档案工具RAR在Windows环境下的图形界面。该软件可用于备份数据,缩减电子邮件附件的大小,解压缩从Internet上下载的RAR、ZIP及其它类...

文件解压方法和工具分享_文件解压工具下载

压缩文件减少文件大小,降低文件失效的概率,总得来说好处很多。所以很多文件我们下载下来都是压缩软件,很多小伙伴不知道怎么解压,或者不知道什么工具更好,所以今天做了文件解压方法和工具的分享给大家。一、解压...

[python]《Python编程快速上手:让繁琐工作自动化》学习笔记3

1.组织文件笔记(第9章)(代码下载)1.1文件与文件路径通过importshutil调用shutil模块操作目录,shutil模块能够在Python程序中实现文件复制、移动、改名和删除;同时...

Python内置tarfile模块:读写 tar 归档文件详解

一、学习目标1.1学习目标掌握Python内置模块tarfile的核心功能,包括:理解tar归档文件的原理与常见压缩格式(gzip/bz2/lzma)掌握tar文件的读写操作(创建、解压、查看、过滤...

使用python展开tar包_python拓展

类Unix的系统,打包文件经常使用的就是tar包,结合zip工具,可以方便的打包并解压。在python的标准库里面有tarfile库,可以方便实现生成了展开tar包。使用这个库最大的好处,可能就在于不...

银狐钓鱼再升级:白文件脚本化实现GO语言后门持久驻留

近期,火绒威胁情报中心监测到一批相对更为活跃的“银狐”系列变种木马。火绒安全工程师第一时间获取样本并进行分析。分析发现,该样本通过阿里云存储桶下发恶意文件,采用AppDomainManager进行白利...

ZIP文件怎么打开?2个简单方法教你轻松搞定!

在日常工作和生活中,我们经常会遇到各种压缩文件,其中最常见的格式之一就是ZIP。ZIP文件通过压缩数据来减少文件大小,方便我们进行存储和传输。然而,对于初学者来说,如何打开ZIP文件可能会成为一个小小...

Ubuntu—解压多个zip压缩文件.zip .z01 .z02

方法将所有zip文件放在同一目录中:zip_file.z01,zip_file.z02,zip_file.z03,...,zip_file.zip。在Zip3.0版本及以上,使用下列命令:将所有zi...

如何使用7-Zip对文件进行加密压缩

7-Zip是一款开源的文件归档工具,支持多种压缩格式,并提供了对压缩文件进行加密的功能。使用7-Zip可以轻松创建和解压.7z、.zip等格式的压缩文件,并且可以通过设置密码来保护压缩包中的...

取消回复欢迎 发表评论: