V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
nexusone
V2EX  ›  程序员

吐槽下 Java 面试

  •  
  •   nexusone · Mar 12, 2018 · 12484 views
    This topic created in 2979 days ago, the information mentioned may be changed or developed.

    先说下自己,五年多的经验,属于啥都干的类型,可以一个人完成从安卓到后台,带过小项目。 最近在面试,面试内容各种 java 高级,io,多线程,分布式,并发控制,分布式锁,Jvm 调优,sql 调优,分表分库。 再加上各种框架,spring,dubbo,springCloud,什么微服务,redis,zk 等等。 这还不算算法部分。 关键是给的钱也就那么多,到了公司去也就是干那么点事。 嗯,对,有的还问研究过 dubbo 源码没,还得懂架构。 一直觉得自己的技术还行,但是现在的面试真叫我怀疑人生,tmd 以前都是在吃屎嘛。 纯属吐槽,各位轻喷啊。

    99 replies    2018-04-12 23:30:28 +08:00
    sagaxu
        1
    sagaxu  
       Mar 12, 2018 via Android   ❤️ 16
    面造入拧
    MaoMiao
        2
    MaoMiao  
       Mar 12, 2018 via iPhone   ❤️ 2
    hahahahhahaha 面试造火箭进去拧螺丝
    jowuIM
        3
    jowuIM  
       Mar 12, 2018
    还是刷题就好、、、、、
    jeffpan
        4
    jeffpan  
       Mar 12, 2018 via iPhone
    既然是五年经验,这些难道不该问么
    siguretto
        5
    siguretto  
       Mar 12, 2018
    总比我面拧入造好吧
    zndbl
        6
    zndbl  
       Mar 12, 2018 via Android
    问这些很正常啊,简单的会用技术已经没法混了,广度和深度都得搞!
    nexusone
        7
    nexusone  
    OP
       Mar 12, 2018
    @jeffpan
    @zndbl
    确实是该问的,只是好多东西都剩下了印象,可能面试比较仓促,准备静下心补一补
    shijingshijing
        8
    shijingshijing  
       Mar 12, 2018
    @MaoMiao
    @sagaxu

    哎,你们有所不知,真正造卫星火箭飞机的,面试的都是很简单的 C 语言基础,不用递归,不用动态分配内存,不用函数指针。所有带有不确定性的,动态性的,统统干掉。
    lastpass
        9
    lastpass  
       Mar 12, 2018 via Android   ❤️ 3
    这应该来说只是要问出你的极限来。
    换个说法。
    就如同高考,出的题目难。
    那大家分数就普遍低。
    出的题目简单,那大家的分数都很高。
    但是高考看的并不是分数。而是排名。
    面试同理。面试人问的你你不一定都需要回答出来。
    但是你只需要比别人回答的更好就行。
    lastpass
        10
    lastpass  
       Mar 12, 2018 via Android
    而且,这些东西不都是基础嘛?
    我现在刚毕业工作半年。
    大概还不懂你说的
    分布式锁,dubbo,springCloud,什么微服务,zk 这五个。
    其他的勉强都会一些。
    你都五年经验了,这些对你来说应该是一碟小菜。
    victor
        11
    victor  
       Mar 12, 2018   ❤️ 22
    @lastpass 你都大学毕业了,学了快 10 年英文,跟老外谈笑风生肯定没问题了。对了,你还学了十几年数学,那这个线性代数,偏微方程什么的解起来也是小菜一碟喽?

    并不是针对你,你可以换位想想。并不是干了多久就一定怎样怎样。
    snakejia
        12
    snakejia  
       Mar 12, 2018   ❤️ 1
    @lastpass 每一个点,都可以很深入。五年之后你且看是不是对你来说小菜一碟。
    p1094358629
        13
    p1094358629  
       Mar 12, 2018   ❤️ 2
    @lastpass
    你都五年经验了,这些对你来说应该是一碟小菜。 这句话说出来我就感觉你要被喷了
    lastpass
        14
    lastpass  
       Mar 12, 2018 via Android
    回复 @p1094358629 抱歉,我回过头来看,我言语表达方式确实有点问题。多谢提醒。我意思大概是说。这些问题,是楼主应该掌握的。
    lastpass
        15
    lastpass  
       Mar 12, 2018 via Android
    回复 @victor 抱歉,我表达的方式出了点问题,变的有那么一点嘲讽的语气。,我这刚刚回来看自己的回复才注意到。不知道 v2 在什么地方可以删除自己发的帖子?
    20has
        16
    20has  
       Mar 12, 2018 via Android
    @lastpass 年轻真好呀😁
    lastpass
        17
    lastpass  
       Mar 12, 2018 via Android
    回复 @snakejia 我刚刚发的确实有那么一些带嘲讽。但相信我,我没有恶意的。无心之失。不过,你问我 5 年后对这些是不是一碟小菜。那我肯定要回答:是。
    这我对自己的信心和骄傲。我现在不会,我去学。我以后不会,我继续去学。有指点,那最好,没有人教,那就自学。
    lastpass
        18
    lastpass  
       Mar 12, 2018 via Android
    回复 @20has 是啊,年轻真好。→_→所以说,v2 在什么地方删帖?
    顺便,我现在看见一些初中,小学就开始玩编程的心里慌慌的。
    HuHui
        19
    HuHui  
       Mar 12, 2018 via Android
    作为面试官我比较看中逻辑能力和表达能力
    HuHui
        20
    HuHui  
       Mar 12, 2018 via Android
    @lastpass 年轻真好
    alamaya
        21
    alamaya  
       Mar 12, 2018
    @lastpass
    分布式这种东西,没点体量的公司或者项目,根本不会搞,不是说有几年工作经验就能接触到的。而且现在分布式的项目招人又大部分都是要做过分布式有经验的,只能说很尴尬就是了。
    msg7086
        22
    msg7086  
       Mar 12, 2018   ❤️ 1
    @lastpass 谁告诉你 v2 能删帖的→_→
    yhzwy
        23
    yhzwy  
       Mar 12, 2018   ❤️ 1
    @lastpass 我挺怀疑这种自学的效果的,如果工作中用不到没有实际的项目,自己靠看文档和写点小项目学能有大多学头。。。
    jsnjfz
        24
    jsnjfz  
       Mar 12, 2018
    关键是问的这些并用不到,没问的基础的才会用到
    toxicant
        25
    toxicant  
       Mar 12, 2018 via iPhone
    我想问一下。 自学的大佬们是直接看技术书和手册久撸项目,还是买一套培训班视频跟着看。 如果买视频的话还不是跟培训班出来的没两样? 如果自学看技术书的话。 书面上的代码示例你们看着不想骂娘吗……
    Acheron
        26
    Acheron  
       Mar 12, 2018   ❤️ 1
    说实话,现在的面试,一个应届毕业生比工作五年的通过概率更高,因为什么 io,多线程,分布式,并发控制,分布式锁,Jvm 调优,背下来就可以了,这是毕业生的强项,而工作多年的知道,在工作中最重要的是解决问题的能力,根本不会浪费时间去背这些固定的概念。另外,这些问题让面试官来答,他也不定说不出个所以然来。。
    snakejia
        27
    snakejia  
       Mar 12, 2018
    @lastpass 我说的话倒是没什么嘲讽语气。搞 java 马上就一年了,比你时间长点。但是不年轻了,后来自学转的 java。
    @zndbl 说的对,问这些很正常啊,简单的会用技术已经没法混了,广度和深度都得搞!
    这些东西,只是自学的话,就会出现没有深度的问题。只搞个皮毛到头来也是没什么用。我就是这么自学过来的。能提高深度的办法也就是搞项目,自己踩坑了,踩的坑越多,水平就会越高。
    看你这么有劲头,我也想感慨下,年轻真好。
    我没你年轻,也没你有劲头,只能羡慕你了。加油干吧。
    snakejia
        28
    snakejia  
       Mar 12, 2018
    @toxicant 自学的菜鸟告诉你,先看视频,再看书。
    MyDaLin
        29
    MyDaLin  
       Mar 12, 2018
    要懂的太多
    vance
        30
    vance  
       Mar 12, 2018
    我也快 5 年了,刚面下阿里的发现确实问得挺多的,很多一时没准备好是答不上来的
    miketeam
        31
    miketeam  
       Mar 12, 2018 via iPhone
    我刚才吃早餐,我只要白粥,然后人家说这里好多美女早上都喜欢和这种茶,然后我为了把妹买了 2 杯。谁说一定要对口销售呢
    deadEgg
        32
    deadEgg  
       Mar 12, 2018
    @Acheron 不认同。个人认为背下来的和实际应用场景还是有区别的,面试官在应用场景中使用过后足以区分于你是背的还是理解过的。
    yjd
        33
    yjd  
       Mar 12, 2018
    @MaoMiao 就服你。哈哈哈。
    yoke123
        34
    yoke123  
       Mar 12, 2018
    嗯 市场环境一直是这样的 双方的信息不对等 高门槛 以及期望 都不对等
    你说 能找到合适的人吗 但是双方都不愿意退一步
    这些问题不是一两句就能解释清楚的 就业难 又不是一天两天的问题
    是个社会问题 难搞
    包装简历 背面试题吧
    diydry
        35
    diydry  
       Mar 12, 2018
    @lastpass 年轻真好。。但是我想告诉你,有些深度知识不是自学就会的。要在项目中实践才会有效果。BAT 的高级工程师也不是靠自学到高级的。而是跟着公司一起成长,从小项目到大项目,踩坑,填坑,有个进步的的过程的。。所以说,5 年后,要是你没那机遇,没有机会去接触相关的项目,看你自学,搞的那点皮毛,并没什么卵用。
    logOo
        36
    logOo  
       Mar 12, 2018
    我工作的比你还久,知道的比你还少,crud old boy,最近才上 v2,原来并不知道世界这么大。如果一直可以保持学习的热情,那些都是小意思了,如果每个都要求详细说出细节,的确挺艹蛋的。当然生活好多事。
    jlkm2010
        37
    jlkm2010  
       Mar 12, 2018
    今年面试要求明显比往年高。。。
    NUT
        38
    NUT  
       Mar 12, 2018   ❤️ 3
    @alamaya #21 公司没机会,自己不能私下搞么?搞 5 年都不知道自己走 业务专家线还是技术专家线还是技术管理线?。 那后面继续 CRUD ?
    PazuLee
        39
    PazuLee  
       Mar 12, 2018
    @nexusone 有个思路是你来主导面试方向,这个可能需要简历做些调整+你在回答的时候,有侧重点什么的
    alamaya
        40
    alamaya  
       Mar 12, 2018   ❤️ 1
    @NUT
    我就不清楚没那个业务量和用户量还有资源自己私下搞分布式高并发的可行性,而且人家更多要求的是你上线项目的经验而不是你会不会,大部分时候没有项目经历,简历直接就被刷掉了。
    ioth
        41
    ioth  
       Mar 12, 2018
    sun 都倒闭了这么多年,java 高手还这么自信。
    比尔退休太早啊。
    NUT
        42
    NUT  
       Mar 12, 2018
    @alamaya #40 如果面试官看到你并没有机会做过分布式,而且还得用线上的问题来刁难,那么请你直接投诉。如果非要求不行,这家肯定不是你的菜。
    alamaya
        43
    alamaya  
       Mar 12, 2018
    @NUT
    我说大环境,你跟我说这个干嘛,现在外包 JD 都要挂个有分布式经验优先,还没到面试呢,兄弟。
    peterontheway
        44
    peterontheway  
       Mar 12, 2018
    求问你面试的是什么公司啊?阿里?
    hardman
        45
    hardman  
       Mar 12, 2018 via Android
    刚上高中的我刚学完 Java 基础和 Python 基础准备开始学 spring 全家桶
    ghostgril
        46
    ghostgril  
       Mar 12, 2018
    @lastpass 没办法,你说的挺对的,但是有的人就是听不进去。。。面试就是要挖出大家的底来嘛
    tomxin7
        47
    tomxin7  
       Mar 12, 2018
    就是看看你是只会 CRUD 还是说对很多原理也感兴趣
    jowuIM
        48
    jowuIM  
       Mar 12, 2018
    @victor 哈哈哈,是这个道理。
    shuangchun
        49
    shuangchun  
       Mar 12, 2018
    面试又不是所有问题都得回答出来。从高到低都问一下,知道处于什么段位。不然咋按照能力给钱?
    0x4b0082
        50
    0x4b0082  
       Mar 12, 2018
    编程高手,编程高手
    lastpass
        51
    lastpass  
       Mar 12, 2018 via Android   ❤️ 1
    @lastpass 说的有道理。不过换个方向来说。如果你掌握这方面的技能。你就能超越很多人。
    9684xtpa
        52
    9684xtpa  
       Mar 12, 2018
    表达一下看法,如果没有在项目里有很深的接触的话,你会发现,很多东西理解的并不深刻,哪怕读过源码
    Sapp
        53
    Sapp  
       Mar 12, 2018
    早就说过了,现在出了大牛,其他人面试老老实实背面试题,比什么都好使
    JerryCha
        54
    JerryCha  
       Mar 12, 2018
    领导看看能压多少薪资吧,大概
    w4mxl
        55
    w4mxl  
       Mar 12, 2018
    1、2L,刚好成语词典了~
    zengyuxi
        56
    zengyuxi  
       Mar 12, 2018
    哈哈,没搞几个手写算法题,都是好的了~
    yinbiwang
        57
    yinbiwang  
       Mar 12, 2018
    最近面下来,发现个别面试官比较喜欢显摆。明明不是很懂还要皮,跟他讲明白了。之后一定要出题面倒你,面不倒不罢休..
    Eds1995
        58
    Eds1995  
       Mar 12, 2018
    我在想五年后我能不能满足上面的面试要求一半,毕竟分布式不是什么公司都能搞得。
    philofly2008
        59
    philofly2008  
       Mar 12, 2018   ❤️ 4
    楼主,面试时你个人平时工作总结的一个输出而已,说明你平时做了很多,但是总结太少。数据流讲究有输入,有输出,你就是输入多,输出少的那个,全堵塞在你自己那里了,所以你觉得面试很难。如果平时注意总结,有输入,多输出,面试只是你做了一场分享而已。
    aljun
        60
    aljun  
       Mar 12, 2018 via iPhone
    @siguretto 哪家公司,我想去诶
    snakejia
        61
    snakejia  
       Mar 12, 2018
    @philofly2008 很有道理。有些茅厕顿开的感觉。
    lastpass
        62
    lastpass  
       Mar 12, 2018 via Android
    回复 @diydry 你说的很对,很多东西自学是学不到的。不过我一直在提;我很多东西自学学不到,那别人自学也是学不到了。既然大家都是在一个接近的起跑线上,那这对你来说难道不是优势?
    v3exhost
        63
    v3exhost  
       Mar 12, 2018
    面试造飞机,上班拧螺丝
    WordTian
        64
    WordTian  
       Mar 12, 2018 via Android
    @logOo 赞同,如果能一直保持学习的热情就好了

    可惜随着年龄增长,精力下降,家庭琐事和其他杂事的影响,保持不断学习的状态太难了
    miketeam
        65
    miketeam  
       Mar 12, 2018 via iPhone
    36 计等孙子办法汉朝初期应该就出来了吧,为撒后面几千年还有打败仗的将军?难道将军不应该会吗
    Paddington
        66
    Paddington  
       Mar 12, 2018
    五年经验问这些很正常,而且也应该比较轻松应对。
    msl12
        67
    msl12  
       Mar 12, 2018
    面试问得太难,说明他们也不太缺人
    iyaozhen
        68
    iyaozhen  
       Mar 12, 2018
    不问这些问什么?你都 5 年了还不懂架构,这不行呀。

    解决问题的能力是很重要,但基础也得有啊,不然想得到看的少,很容易搞出一些奇怪的东西。
    而且招你过来是解决一些“增删改查”工程师解决不了的问题,比如一个很简单的系统但老是 FULL GC 很长,这不得你懂并发、JVM 调优。

    当然也得看公司,大公司基本上都是分布式、RPC 满天飞,不懂 dubbo、springCloud (或者类似的)根本搬不了砖。
    bobuick
        69
    bobuick  
       Mar 12, 2018
    面试造火箭是多数。神烦这种面试。我觉得我招人,或者找工作,这个岗位全部发展,技术都在 cover 内的话,我是不会去的,我全都会,cover 岗位一切技术和可预见的技术发展,除非给我 N 多钱,不然我是不会去的。
    q397064399
        70
    q397064399  
       Mar 12, 2018
    @shijingshijing #8 没有动态内存分配?那飞机火箭输入的数据 都是预先分配好的?
    sagaxu
        71
    sagaxu  
       Mar 12, 2018 via Android
    @iyaozhen dubbo 和 springcloud 这种属于可以现学现用的知识点,用没用过都不会影响工作。
    SuperMild
        72
    SuperMild  
       Mar 12, 2018
    但是,站在公司的立场,在有很多候选人可以选择的情况下,希望差不多的工资招到超出公司目前所需水平的人才,这也很合理吧,毕竟在商言商,如果老板没有不切实际的野心,也不会去做老板。

    资本家基本上都是些盲目榨取利益的人,他们不讲合理性,他们不可理喻,执着于瞎搞。
    vjnjc
        73
    vjnjc  
       Mar 12, 2018
    @w4mxl 一楼没看懂,正好来了个二楼
    q397064399
        74
    q397064399  
       Mar 12, 2018
    @iyaozhen #68

    所以怎么积累相关经验,,我上次连 MySql 死锁 都没有头绪,死锁的问题来自于 JdbcMuteAbleImpl 实现类
    问题域无非就是哲学家就餐问题,,查找两个事务 持有的资源 以及将要获得的资源 是否存在
    环状依赖(相关算法 拓扑排序,可以查找是否存在环),,
    但是实际上我对解决 MySql 死锁完全没有经验,,给了我一个阿里云线上的死锁报告,我还是一头雾水
    p2pCoder
        75
    p2pCoder  
       Mar 12, 2018
    @q397064399 日志一层一层来,从 java 服务到 db 底层
    q397064399
        76
    q397064399  
       Mar 12, 2018
    @p2pCoder #75
    Sql 死锁的报告 都有了,, 但是 报告中 并没有给出 每条 Sql 在当前事务中,
    占用了 哪些行级锁 哪些是 X 锁 哪些是 S 锁,说白了 这个东西还是要实际工程中 结合理论跟工程经验 才能学得会,理解得深刻,
    subdued
        77
    subdued  
       Mar 12, 2018
    - -我真的很担心 某一天 V2 的各位大佬们会聚集在一起出现下一个 space X
    p2pCoder
        78
    p2pCoder  
       Mar 12, 2018
    @q397064399 mysql 的话,高性能 mysql 1、4、5、6 章对于 普通的 web 和后台开发者就够用了
    这些坑 有些公司 还是大概率踩,我上家 P2P 公司,就一堆坑,慢查询,jvm 内存溢出,死锁,并发控制出问题 都有出现,平均一个月 就能出现一个大坑
    Navee
        79
    Navee  
       Mar 12, 2018
    面试造核弹你要习惯
    q397064399
        80
    q397064399  
       Mar 12, 2018
    @p2pCoder #78
    嗯,,这块的东西 我还是要好好整理下,,

    原理上讲 jvm 内存管理 就是 有向图可达性分析,溢出的原因就是 以 classLoader 之类的 GCRoots 对象
    持有 /间接持有了大量应该被回收的对象的引用。

    分布式架构的东西,,目前接触过的 就消息队列。

    说到底,我实际工作中处理过相关问题很少, 因为一直都是被定位 当做业务开发在拧螺丝,,
    这类问题 都是技术负责人在搞,他负责技术架构跟技术难题 还有所有业务代码的数据结构建模指导,
    我只是业余研究相关问题。
    galenzhao
        81
    galenzhao  
       Mar 12, 2018 via iPhone
    加州 nasa jpl 招 java 楼主去试试面试啥难度不
    yuhuigreed
        82
    yuhuigreed  
       Mar 12, 2018
    @philofly2008 很有道理,我自己就是不会总结的人,以后看来得多注意总结
    specita
        83
    specita  
       Mar 12, 2018
    我面下来也感觉我刚毕业的时候回答那些问题应该是最厉害的,感觉很多问题一问,都是脑袋里有点印象,也不能说得很明白,然后就 GG 了(自己也菜)
    Foolking
        84
    Foolking  
       Mar 12, 2018
    你的面试内容,emmm 我一个都不知道!
    wekw
        85
    wekw  
       Mar 12, 2018
    资深以后,主要看人了,技术很容易就满足公司需求。不会就不会,我面试的时候就直接说不了解,还不是面一家中一家,主要是要有自信。
    Raymon111111
        86
    Raymon111111  
       Mar 12, 2018
    问简单的东西

    没法区分人靠谱不靠谱
    shijingshijing
        87
    shijingshijing  
       Mar 12, 2018 via iPhone
    @q397064399 对的,基本上全部都是状态机,所有可能出现的情况都要事先定义清楚,包括出错状态都有专门的定义,然后对应不同的 sub routine,出错了,低空逃逸,高空直接自瀑 GG。
    shijingshijing
        88
    shijingshijing  
       Mar 12, 2018 via iPhone
    @galenzhao 其实 NASA 的码农是真·搬砖工,里面牛逼的是搞系统的 system engineer,更 nb 的是各种天体物理,空气动力学,数学等等 researcher 和 sciencist。码农只是他们实现自己想法的人肉工具,这些人都是只玩 matlab 和 simulink 的大后期,c,java 屁都不会,python 可能懂点。
    shijingshijing
        89
    shijingshijing  
       Mar 12, 2018 via iPhone
    爪机回帖,拼错了好几个词,装逼失败。
    QaZqwefgh
        90
    QaZqwefgh  
       Mar 12, 2018 via Android
    学习 领悟 态度 blalala
    nl101531
        91
    nl101531  
       Mar 12, 2018
    同感,然后现在看书复习中。
    Finest
        92
    Finest  
       Mar 12, 2018
    不问过怎么知道你了解不了解呢
    zzczzc
        93
    zzczzc  
       Mar 12, 2018 via Android
    同感,感觉面向面试用的技术还是不能忘
    igoist
        94
    igoist  
       Mar 12, 2018
    五年多经验的老哥去面试碰到这类情况不是应该这样吗?

    ——“你跟我讲的这些我不懂,我来跟你讲点我知道的行不行?(然后) balabalabalabalabala...”

    面试前回顾下五年多的积累,尤其那些自己一手做起来的项目,就算空口不大会说,带上电脑,慢慢来聊聊自己做过的,让面试官参与进来,随便聊它个几小时岂不应该是轻轻松松

    如果不是去做什么特别尖深的业务岗位,总可以灵活一点吧,要是明明有那么多积累,别的都还没聊清楚,却被什么看没看 dubbo 源码啊、懂不懂架构啊这类可能反而应届生经常在针对性复习的问题 carry 走,那也太可惨
    mingyun
        95
    mingyun  
       Mar 12, 2018
    为什么面试官都喜欢这样呢
    iyaozhen
        96
    iyaozhen  
       Mar 13, 2018
    @sagaxu 都现学,那这样的话为什么不招一个工作 2-3 年的。

    面试怎么说呢,还是有一点套路,特别是一面,基本上都是铺天盖地的问一通,不然怎么知道你会什么?也并不是都要能答出来,至少得有 1-3 个点能深入聊一聊。特别是大公司,既然约了面试就是想找一个“造火箭”的,在一个或者多个领域能独当一面的,而且是还有成长潜力的。
    sagaxu
        97
    sagaxu  
       Mar 13, 2018 via Android
    @iyaozhen 所以很多公司愿意高薪招跨技术栈的开发,比如零 Java 经验的 Java 技术栈架构师,连一两年经验都不要。面试套路里的底层和深度,一两个月就能攒够了,只要学习能力强。短短一两个小时面试,容易被刷题和面试宝典糊弄,不如看一些硬性指标,比如双一流或 985 科班毕业,再差也不会差哪儿去。
    weilongs
        98
    weilongs  
       Mar 13, 2018
    这个很正常,jd 面试测试都是自动化方向,入职功能测试。用你得爪子在那点点点。不用太纠结这个,继续面吧。
    Rico
        99
    Rico  
       Apr 12, 2018
    @9684xtpa 赞同
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3315 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 240ms · UTC 12:58 · PVG 20:58 · LAX 05:58 · JFK 08:58
    ♥ Do have faith in what you're doing.