zoukankan      html  css  js  c++  java
  • 大家都在说去大厂,我说说怎么去小厂面试吧?

    01 前言 & 吐槽

    为什么要起这个标题?
    一般不都是说怎么去大厂吗?
    小厂有啥好说的?
    钱少、事多,技术落后,学不到东西,还加班。
    谁他么不能进?

    一找工作,发现还真有点难。
    因为竞争的人,好像有点多。

    我靠,原来这么多人都只能去小厂???

    而我们在网上看到的面试文章画风都是这样的:

    《大厂程序员面试逻辑题面面观》
    《阿里P7一定难吗?》
    《我是怎样拿到阿里、腾讯、滴滴、京东offer的?》
    《字节跳动三面过后,HR说让我回去等通知》
    《一文告诉你,掌握XXX才能进大厂》

    好吧,因为大厂大家都想进,我也想进。所以这样的文章标题还是很有吸引力的。

    阿里腾讯的高工资谁不想去呢?
    但是一方面是大家也不全都是在北上深杭。
    二三线城市又没什么知名互联网公司。
    而且对于工作三五年以内的同学来说,残酷的真相是,这些文章没有说一个大家心知肚明的前提:
    不是985、211,你连面试的资格都没有!

    难道小厂同学就不是人吗?
    我想大部分程序员也都不是985、211毕业的吧?
    我见过很多程序员,也带过不少团队,其中有985、211的本科生、研究生,也有大专毕业的,还有中途干了几年别的中间转程序员的。
    不可否认985、211的毕业生学习力确实比较强,但是比例差距并没有那么大
    至少在我带过的团队里,大专、双非本科毕业的同学跟他们的差距也就是4:6这样。

    在工作中,其实我们又回到了同一起跑线!
    但是在境遇上,我们必须很现实地看到,在薪资获取、职位提升、职业发展的路程中,差距确实很大,甚至越来越大。

    为什么会这样?
    我想很多人心里都有自己的想法,自己的见解。

    是不是很不甘?
    为什么我们付出一样多的努力,得到的却比别人少呢?
    别人在大厂一年、两年就能达到的成绩、薪资、职位,可能你需要付出四、五年才能达到。

    我不能安慰你。
    我只能说是应该的。这是过去的你偿的债。
    读书时的缺失只能用工作中的时间去弥补。

    而在工作后,你有了重新再来一次的机会。

    怎么去把握呢?

    我们可以以大厂为目标,但是得承认先天性上确实有差距。

    所以可以先去小公司去历练下。

    小公司因为人少,流程也比较少。招人就是来干活的。
    对学历的并非很看重。
    我自己发出的标准就是大专就行了。
    但是小厂招人也特别块,基本没有所谓二面。
    所以第一印象很重要。

    怎么在一次面试中就get到面试官的点?
    怎么将自己的优势发挥出来?
    在面试前应该准备什么?
    在面试时遇到不会的怎么办?

    好吧,看看接下来我怎么装逼,错了,是从面试官的角度,说一些掏心窝子的话,写写这个《程序员的小厂面试宝典》吧。

    02 作为面试官,我会问一些什么问题呢?

    过年后到了一家小公司,开始创业之路。
    这两天开始招人组建技术团队。
    陆陆续续面试了近二十个人。

    小公司来面试的大部分都是双非毕业生。

    看到他们就想起了曾经的自己。十年前的那个我。
    我中学是上的职高,大专上的业余,毕业后还做了一年电脑维修。
    可以说起点是差得不能再差了,低过90%程序员的学历和起步。

    然后自学C,边工作边学了两个月,自学学不下去,进入一家培训班学了java。
    学完后,进入一家小公司实习,第一个月工资是1200。
    好了,苦情背景话都说完了。说说正题吧。

    面试的这些人大部分都是双非背景,工作两三年内的。

    拿上简历一看,熟悉XXX技术,一问XXX:
    不知道,
    没学过,
    只了解一点。

    三连暴击,暴得我肝疼。
    【你逗我呢?不会你也写?卧槽,你自找麻烦吗?】

    但是我后来想了想,这好像也正常,因为你不写这些东西,HR都不会给你面试的机会。

    所以面试一看简历,基本的套路一看就能看出来:
    写了精通,就是工作中常常用到;
    写了熟练,就是用过一点;
    写了解,就是偶尔吹牛的时候听过。

    我在面试的时候,生怕漏了明珠,所以总会问来面试的同学:
    你擅长什么?
    Java、数据库、前端你哪方面掌握的比较好?
    你常用的技术栈是什么?
    说一件让你印象深刻的事,可以展现你解决问题的能力,或者学习的能力。

    好了,以上就是我的面试套路。你掌握了这个套路,是不是就能套路我了?

    所以,你到底有没有某一方面可以打动面试官的点呢?

    在面试时,我会在上面那些套路的问题时,追着去问你所掌握的技术栈能力。

    譬如你说你擅长后端,我就会问些Java、中间件;
    你说擅长数据库,我会临时出个题,让你写个SQL;
    你说擅长前端,我会问下JavaScript、vue。

    对于不通工作经验年限的人,我问的问题层次也不太一样。

    一年工作经验

    后端:
    Java有哪些集合类?ArrayList跟LinkedList有啥区别?
    springboot用过吗? 是怎么使用的?
    redis用过吗?它是用来做什么的?为什么比较块呢?

    数据库:
    一个学生成绩表,有学生、班级、成绩、课程,怎么一条语句分组展示班级的学生总分数?

    前端:
    怎么获取一个id是ss的div,去改变它的内容?
    jQuery的Ajax怎么用的?它封装了原生js的一个什么组件?

    两年工作经验

    后端:
    ArrayList跟LinkedList有啥区别?有什么优缺点呢?它们是线程安全的吗?
    springboot用过吗? 是怎么做到简化配置的?为什么能自动装配呢?听过factories文件吗?
    redis用过吗?听过缓存穿透、缓存雪崩的问题呢?怎么解决呢?
    mybatis是一个什么框架?它跟JDBC有什么区别?它是怎么连接数据库执行SQL的?

    数据库:
    一个学生成绩表,有学生、班级、成绩、课程,怎么一条语句分组展示A、B、C班级的学生总分数?
    基于上题,怎么筛选总分数1万分以上的班级呢?
    基于上题,怎么再筛选60分以上的同学,60分以上的成绩参与统计,以下不统计呢?
    做过查询优化吗?知道执行计划吗?

    前端:
    怎么获取一个id是ss的div,去改变它的内容?
    JavaScript中的function a(){this.s =1};this是属于哪个对象?
    jQuery的ajax是封装了原生js的一个什么组件?
    知道盒模型吗?
    知道闭包吗?
    小程序跟vue用过吗?跟html有什么区别?

    三年及以上工作经验

    后端:
    spring boot用过吗? 是怎么做到简化配置的?为什么能自动装配呢?听过factories文件吗?
    redis用过吗?听过缓存穿透、缓存雪崩的问题呢?怎么解决呢?
    怎么做一个分布式锁呢?
    应用怎么做集群?集群、负载、分布式有什么区别?
    用过多线程吗?怎么创建一个连接池?
    如果前端有个出具报表的请求,需要请求三十张表的数据,我现在在后端用多线程来解决,每个线程查询一张表,怎么将这三十个线程的数据汇总返回给前端呢?用同步还是异步?同步怎么做?异步怎么做呢?

    数据库:
    做过查询优化吗?知道执行计划吗?
    知道怎么挑选索引字段吗?有索引一定快吗?索引失效怎么办?
    用过mysql?mysql怎么做到主从复制的?怎么解决脑裂问题?
    知道分区吗?用过分库分表中间件吗?
    用过Oracle?Oracle是怎么做集群的?

    前端:
    jQuery的ajax是封装了原生js的一个什么组件?
    知道盒模型吗?
    知道闭包吗?
    vue用过吗?是怎么做到双向数据绑定的?
    知道prototype原型链吗?怎么用prototype开发一个jQuery库?

    03 结语 & 祝福

    作为一个面试官,我想招一个什么样的人呢?
    首先,肯定是有“钱”这个前提的。
    就是招聘这个岗位,这个岗位能给多少钱,可能会有一定的浮动,但是都会限制在一定范围内。
    所以在这个范围内,我们肯定是想招到合自己心意的人选。

    那么,我作为一个面试官,我会想招一个什么样的人选呢?我会考察他哪方面的能力呢?
    我是一个面试者,我又怎么表现出自己的能力?表现哪方面的能力呢?

    作为一个面试官,在拿到面试者的简历后,问上一两个问题,有没有实际工作的经验,有什么技术能力,很容易便能分辨出来。

    但是有两种能力,却很难分辨出来。一个是解决问题的能力,一个是工作中学习的能力。
    而这两种能力,却是我在挑选同层级候选者们时最看重的能力。

    所以我喜欢问的问题是:
    你擅长什么?
    Java、数据库、前端你哪方面掌握的比较好?
    你常用的技术栈是什么?
    说一件让你印象深刻的事,可以展现你解决问题的能力,或者学习的能力。
    你喜欢分享吗?有记笔记、写博客的习惯吗?有参与过开源社区的项目吗?
    如果让你对自己的学习能力打个分,你会打多少分?

    在多数候选者的心中,自己的学习能力都是毋庸置疑的,特别是我问"如果让你对自己的学习能力打个分,你会打多少分?"
    一般人的回答都是80分。
    我想如果不是中国人的谦虚本能抑制住了他们的骄傲,一百二十分也是没问题的。

    但是我们往往都会高估了自己的学习能力。

    我低头看看我自己就明白了,买书如山倒,看书如抽丝。

    而我最看重的是这个问题:
    说一件让你印象深刻的事,可以展现你解决问题的能力,或者学习的能力

    我希望在面试官对你说这句话的时候,你可以尽情地把你自己的学习方法、遇到过的项目难题、解决问题的步骤很清晰地展现出来。
    能展示你的【自我评价】上所描述的【热爱编程,有钻研精神,能独立解决难题】等等这些比较”虚“的内容。

    如果面试官没有对你说这句话,我也希望你能在面试官对你提问的时候,尽量去展现你的风采。

    在面试前,想好自己的优缺点;面试时,突出自己的优点。

    你到底擅长什么?
    你是怎么学习新技术的?
    你对什么有比较深的研究呢?
    你是怎么解决问题的?

    错,没有关系,要有自己的思考。 但是请不要胡说八道。

    仅以此篇,献给正在忙忙碌碌找工作的同学们吧。
    找一份工作简单。
    找一份满意的工作却很难。

    谁都羡慕去大厂。
    不过对于普通人的我们,还是先在小厂摸爬滚打一下吧。

    over。

  • 相关阅读:
    Git官方推荐用书
    二叉树-补习
    POJ 2251 Dungeon Master(三维BFS)
    Codeforces 675C Money Transfers (思维题)
    HDU 1195 Open the Lock(BFS)
    HDU 1010 Tempter of the Bone(DFS+剪枝)
    POJ 1426 Find The Multiple(DFS,BFS)
    POJ 3216 Prime Path (BFS)
    POJ 3278 Catch that cow(BFS)
    UVa 572 Oil Deposits(简单DFS)
  • 原文地址:https://www.cnblogs.com/yaomaomao/p/12658379.html
Copyright © 2011-2022 走看看