赞
踩
*---------------------------------------人生处处有惊喜,背后却是无尽的辛酸苦辣.
Python找工作并不容易,老表面试了很多企业,总结了些宝贵经验!
一周转眼即逝,面试了7家需要Python程序员的企业,收到了5份Offer,整体来说还不错,感触良多。现在就把这一周的面试经验和大家分享一下,希望为学习Python找工作的小伙伴们提供些许帮助。
面试最主要的两点:
1.项目经验
2.项目经验和招聘职位相符
说到底还是看你项目做得是否够多,其余的都只不过是锦上添花。
1.介绍自己
这是道送分题,万年不变的第一个问题。不过有些小伙伴可能没有太在意,其实这个问题已经在面试官心中决定了你的去留意向。
自我介绍的主要结构个人基本信息+基本技术构成+项目经验(具体项目以及在项目中的负责部分) +自我评价,其中的原制就是紧紧围绕招聘岗位的需求做介绍,在此之前爱做好准备工作,看看招聘方具体窝要什么方向的研发工程师。
目前针对Python,人才最为紧缺的当然是人工智能,至于其它的热度较高的当属web开发与爬虫工程师。
2.二段式询问
在面式的过程当中,在面试官提出问题的时候,往往会就问题本身引申出较深层次的问题。比:你使用过with语句吗?
我的回答是: with语句经常适用于对资源进行访问的场合,确保在访问的过程中不管是否发生异常都会指执行必要的清理操作,比如文件的自动关闭以及线程中领的自动获取与释放。
面试官紧接着问,那你知道为什么with语句能够使文件正确关闭,一下子把我问闷了,只能依榆记得with语句会开辟出一块独立环境来执行文件的访问,类似沙盒机制,面试育对这个答案不查可百,算是强通过了,所以知其然更要知其所以然在平时的学习中,多问一个力什么,面试的时候就不会太被动,
3.不要给自己挖坑
对于自己了解的部分一定要表现出了然于胸,至于不懂的那些知识,只字不提。对于那些自己并不是很熟悉的领域先万不要装逼作死。
我在回答web安全问题时,顺嘴说了SQL注入,面试官说既然提到了SQL注入,那么你讲讲它的原理及解决方法吧!
丢脸的是我竟然把XSS跨站注入攻击和SQL注入搞混了,场面也是有点尴尬。所以斟酌你说的每一句话,聪明点的同学还可以引导面试官,让他问出自己想要被问的问题。
必问到Redis,高并发解决办法
面试了好多家公司,必然问到Redis了解多少,高并发的解决办法。
4.这一年你学习了什么新技能
这是面试自在考察你是否对于新鲜技术把有极大热忱。而过我的面试官无例外部问到了这个问题。他们都希望能找个不断学了,开括创新的年轻人,多浏览最新的技术资讯,选择一方面自己感兴趣的领域。
你会选择创业公司还是像BAT那样的大公司,为什么?
当然是看招聘方属于爆个公司啦,不过问这种问题的般都是创业公司。答案无非是扔战大,享受挑战;创业公司具有无限成功的可能性,想随公司起成长
5.为什么你要从上一家公司离职?
这也是一个必问问题,我一个比较正当的理由,不变说什么公司零食太多胖了20斤,公司周别附近的外卖都吃就了,真的别这样说.主要原则就是不要对前公司抱有怨言,BOSS朝令夕改PM不靠谱什么的,多与找自身源因:公司发展比较稳定,但我还年轻,希望有更大的排战和更多的学习机会,像这样就可以。
6.描述一下你的上一家公司
这个问题问到的几率不太大,不过也还是有三家公司问到过,招聘方主要想从上一家公司的具体经营规模以及生营业务采定位你的水平,知道招聘方的目的就可以从容应答。
7.Python技术性问题
非技术性的问题就是以上这么多。作为参考稍加准备,面试的时候就能对签如流。下面进一下在面试中的技术性问题。个人感觉技术性的问题面试官问的没有特别多,一般考察2-3个,由浅到深。
简述函数式编程
在函数式编程中,函数是基本单位,变量只是一个名称,而不是一个存储单元。除了匿名函数外,Python还使用fliter(),map(),reduce(),apply()函数来支持函数式编程。
什么是匿名函数,匿名函数有什么局限性
匿名函数,也就是lambda函数,通常用在函数体比较简单的函数上。匿名函数顾名思义就是函数没有名字,因此不用担心函数名冲突。不过Python对匿名函数的支持有限,只有一些简单的情况下可以使用匿名函数。
如何捕获异常,常用的异常机制有哪些?
如果我们没有对异常进行任何预防,那么在程序执行的过程中发生异常,就会中断程序,调用python默认的异常处理器,并在终端输出异常信息。
copy()与deepcopy()的区别
copy是浅拷贝,只拷贝可变对象的父级元素。 deepcopy是深拷贝,递归拷贝可变对象的所有元素。
函数装饰器有什么作用(常考)
装饰器本质上是一个Python函数,它可以让其他函数在不需要做任何代码变动的前提下增加额外功能,装饰器的返回值也是一个函数对象。它经常用于有切面需求的场景,比如:插入日志、性能测试、事务处理、缓存、权限校验等场景。有了装饰器,就可以抽离出大量与函数功能本身无关的雷同代码并继续重用。
Python垃圾回收机制(常考)
Python GC主要使用引用计数(reference counting)来跟踪和回收垃圾。在引用计数的基础上,通过“标记-清除(mark and sweep) 解决容器对象可能产生的循环引用问题,通过"分代回收(generation colection) 以空间换时间的方法提高垃圾回收效率。
PyObject是每个对象必有的内容, 其中ob refcnt就是做为引用计数。 当一个对象有新的引用时,它的ob refcnt就会增加,当引用它的对象被删除,它的b refcnt就会减少引用计数为0时,该对象生命就结束了,
优点:
简单实时性缺点
维护引用计数消耗资源 循环引用
2、标记清险机制
基本思路是先按需分配,等到没有空闲内存的时候从寄存器和程序栈上的引用出发,遍历以对象为节点,以引用为边性成的图,它所有可以访问到的9对象打上标记,然后清扫遍内存空间,把所有没标记的对象样放。
3、分代技术
分代同收的轻体思想题将系统中的所有内存块根据其存活时间划分为不同的集合,每个集合就成为一个代垃圾收集质本迎术代的存活时间的地大而减小,存活时间通常利用经过几次垃圾回收来魔量。
Python默认定义了三代对象集合,索引数越大,对象存活时间越长。
8.总结
以上就是我面试过程中所被问到的问题,算法题还是比较少的,也只有2家公司要求写算法,数据结构似乎被问到的不是特别多,就问到了一个B+ 树的结构。数据库问到的是索引相关的优化。稍微有些基础的都能回答上来,但是最好可以深层次的探讨下。
本文只做抛砖引玉之用,有些见解还不是特别成熟,希望可以为学习Python找工作的伙伴们提供一些帮助,面试过程当中最重要的一点是放平心态,求职过程是双方的,不需要太过紧张,把自己掌握的知识充分表达出来就好。只要你是匹千里马,迟早会被伯乐牵出来遛一遛的。
---------------------
作者:一起学Python呀
来源:CSDN
原文:https://blog.csdn.net/qq_42156420/article/details/88852829
版权声明:本文为博主原创文章,转载请附上博文链接!
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。