python面试 自己的心得

最近确实 面了好几家公司 大的小的,做电商的 做o2o的(e开头的) 做vr的 做云服务的啥样的都有 但是个人 比较倾向于还是做 web开发 所以 用python做 爬虫抓取的啊 数据挖掘的啊 odoo erp二次开发的啊 运维的啊 本文不做参考 当然我说的这些 天赋型程序员 也别看 我怕丢人
按需下菜 才有疗效 知道用人单位 要什么 才能有offer 所以 不吹不黑 看看 他们要什么 我也不从拉勾啥的抓取数据 再分析做了 可以以后做个这样的demo 就拿个人例子当然抽样调查 简单看看 他们要什么吧
基本必谈的两点 语言 和数据库
1)语言你用的怎么样 熟练程度balabala
2)数据库 就是 mysql redis mongedb postgresql balabala 也是用的熟练程度 独立设计数据库结构等等。。。
然后最主要的一点就是说 干活方面的啦:
3)掌握后台开发相关技术 web后台开发经验 其实也就是 处理后台业务逻辑方面
以上这三点 是根本是必须 也是最重要的 但是根据不同公司 人家 对以上三点要求的程度 不一而同
比如语言上 有要求的就会说 熟悉python 多进程 多线程开发 socket编程 熟悉 oop原理 了解python优缺点 熟悉装饰器 生成器 yield原理 balabala
比如数据库层面 就是 做过数据库层面的优化 了解数据库原理 做过数据库性能方面测试和调优balabala
web开发层就是:熟悉django flask tornado 几种web框架 阅读其源码等 了解其优缺点 你在工作中如何使用等等
4)然后就是 大多数会讲 linux系统 熟不熟 用的怎么样 简单指令 熟悉不 操作系统一些原理性的 熟悉不
5)剩下的也比较重要 nginx/apache 外层应用服务器 会不会配置 了解不了解 版本控制 你用的 git还是svn啊等~
6)一些大公司 会对基础有要求 所以会附上一句 对算法 tcpip 数据结构 有一定的研究和理解
7)然后 大多数公司 都会有一个备注 叫 加分项:这个东西 真的更是 不一而同了
主要看 他们招聘的程序员的 关注的点 比较说的多的就是 github有自己引以为豪的开源项目 加分 还有就是 熟悉 gevent tornado异步io 框架的加分 有哪方面的经验的加分 用过kafka的加分 docker容器 用的6的加分 啥样的都有 这个就看你自己的知识面 自己修行了

以上就是人家的要求.当人家看完你的简历 觉得你还不错。打算以后有时间 把怎么写简历 也做下总结(题外话)人家就会给你打电话 约你面试了
当进了人家公司的大门 不要方 也别对拿到offer 报什么期待 期待越大 或许失望越大 所以 抱着积累面试经验 去是最好的
话不多说 就说说 技术面试 都会问什么 有的年岁比较大的 一看第一战线就已经脱离多年的CTO 都喜欢问基础的东西 很基础很基础的东西 举例子: 1)参数传递 2)utf8 unicode gbk都是什么 有什么区别 3)你知道什么是协程么 4)你说说生成器到底是干什么的 5)python的classmethod self 的作用 6)python里面 多线程 多进程 6)python的解释器和 第三方模块或者包 底层是怎么互相通信的等等等 一系列 基础问题 后来我记着 有一家公司 cto和我讲 我们比较注重基础 基础好的 进步快 可想而知 赶紧回去恶补 python基础吧 在这里推荐 廖雪峰python教程 多撸几遍 还有一本 《python学习手册》 没事就看 虽然是字典 但是要常翻 常看 另一本提升基础内力的就是 《python核心编程》了 准备面试 真三个 真得没事就看 工作了 也得没事 就看 指不定啥时候 你就会有一种 豁然开朗 顿悟的感jiao~
你基础好 肯定会给人家一个好影响 然后 就说说 数据库吧 我想你面十家 得有八家 问你 数据库索引 你知道是什么么 他的原理 你知道么 你怎么用的索引 其实 到现在 我还没怎么搞清楚索引 因为一直没咋用过 哈哈 看一次理论忘一次 看一次b+树 b树 是怎么回事 然后就忘一次 但是 真的必须要知道 这个就是 高三时候 划重点 必考题 哈哈哈 没有为什么 这个必须拿分儿~ 然后就是 会问你 表之间的关联啊 数据库层面的优化啊
http://tech.meituan.com/mysql-index.html
这个是美团技术团队 即讲了 索引的原理 又拿出了 一些慢查询的例子 告诉你怎么优化 所以 是一篇 很值得借鉴的 技术文 不仅是面试 而且对工作 也是有帮助的 虽然 他们也说了 数据库层面的优化 真的抵不过 代码层面 系统层面的优化...
数据库除了 关系型 然后 就是 各种nosql了 我也不知道 nosql啥意思 但我只知道 缓存数据库 redis mongodb 这种
http://www.jianshu.com/p/01b37cdb3f33
上面的简友 告诉你 redis是什么 他还很牛逼 什么的
http://redis.io/
redis官网
因为工作中 只用过redis 所以mongodb memcache 我不清楚 想了解的自行google吧
你不仅知道什么是redis 还得知道怎么用 业务场景 你怎么用的 这个也是 面试官 问的比较多的 你是怎么使用的redis的 具体的业务场景 你能叙述 一下么 如果你真的没用过redis 那么:
http://os.51cto.com/art/201107/278292.htm

太晚了 今天先写到这吧 接下吧 我打算再把 人家问的 web开发的东西 比如 你使用过的框架啊 你使用的什么工具的 你用的哪些python的第三方库啊 再絮叨絮叨 然后。。。。。就没有然后了
----------------------------
---------------------- 2016-08-13

你可能感兴趣的:(python面试 自己的心得)