美文网首页JAVA后端架构Java程序员
金三银四面试回来,我想跟程序员们谈谈

金三银四面试回来,我想跟程序员们谈谈

作者: AI乔治 | 来源:发表于2019-04-29 15:24 被阅读22次

    说来惭愧,也不怕你们笑话。做开发8年多,到目前还是一名不折不扣的扫地僧。年前的辞职,到现在还在家静养中。其实也没什么,就是回家总结一下自己这些年来在外工作与面试等做一个简单的总结与反思。做一下自己后面一个人生规划。不过在家每天也是在撸码,还有就是复习与学习现在的架构知识点,学习使人进步嘛!不是么?毕竟技术还是不能落下。

    前些天在我群里认识了以为挺有意思的老哥,他也是工作8年多(技术和面试都不差),最近也是在找工作,是从京城来魔都的,也和他捞了不少。听他说是面试了很多厂,但还是找不到合适的,毕竟像这个工龄段的找工作,去小厂的话,“自己”也看不上,到看上了的薪资又不是很满意。这也是非常尴尬的一点。所以当时我也是给了他一个很好的建议。要不,去面试大厂试试吧,虽然说年龄不小了,但就当是进去镀层金吧。

    目前那老哥已经在准备面试了,也是投了上海的阿里蚂蚁金服等大厂,在这里也希望他能顺利通过吧!

    不啰嗦那么多了, 现在直接进入正题,相信在今年的金三银四跳槽面试中,相信大家肯定也是遇到了很多很多面试官的各种刁难等难题。也相信也都有很多小伙伴们没有找到心仪的公司,或者是还在找公司当中,也有的是随便找了些公司先将就着先的都有~~

    不过,今天这篇文章,我相信你看了后,对往后的面试,相信你也是有把握拿下offer。今天,我会在文中写有最近几月的各大厂的面试题,和自己个人的心得总结等,相信可以帮到大家。

    注意:前方高能,文章内容有点小长,希望你能耐心阅读,面试题答案在文末,需要自取。

    文章内容简要

    • 面试题
    • 如何选择一家公司
    • 如何提高面试成功率
    • 怎样跳槽最有利于自身发展
    • 认知这五步,你可以轻松应对面试,轻松拿到offer
    • ..........

    面试题

    alibaba中间件团队

    一面:

    • 自我介绍
    • 擅长哪方面的技术?
    • Java有哪些锁种类?(乐观锁&悲观锁、可重入锁&Synchronize等)?
    • 比较重要的数据结构,如链表,队列,栈的基本理解及大致实现?
    • J.U.C下的常见类的使用。ThreadPool的深入考察;BlockingQueue的使用?
    • Java内存分代模型,GC算法,JVM常见的启动参数;CMS算法的过程。?
    • volatile关键字有什么用(包括底层原理)?
    • 线程池的调优策略?
    • spring cloud的服务注册与发现是怎么设计的?
    • 分布式系统的全局id如何实现?
    • 分布式锁的方案,redis和zookeeper哪个个好,如果是集群部署,高并发情况下哪个性能更好。

    二面:

    • 参与的项目,选一个,技术难度在哪里?
    • Collections.sort底层排序方式?
    • 负载均衡的原理?
    • 设计模式与重构,谈谈你对重构的理解?
    • 谈谈Redis相关的集群有哪些成熟方案?
    • 再谈谈一致hash算法(redis)?
    • 数据库索引,B+树的特性和建树过程。
    • mysql相关的行锁,表锁;乐观锁,悲观锁?
    • 谈谈多线程和并发工具的使用?
    • 讲讲Redis的架构和组件?
    • Redis的数据一致性问题(分布式多节点环境 & 单机环境)?
    • docker容器?

    三面:

    • 高并发情况下,系统是如何支撑大量的请求的?
    • 接着上面的问题,延伸到了中间件,kafka、redis、rocketmq、mycat等?
    • 设计思路和适用场景等?
    • 最近上过上哪些技术站点;最近在看哪些书。
    • 工作和生活中遇见最大的挑战,怎么去克服?
    • 未来有怎样的打算?
    • HashMap和Hashtable的区别?
    • 实现一个保证迭代顺序的HashMap?
    • 说一说排序算法,稳定性,复杂度?
    • 说一说GC?
    • JVM如何加载一个类的过程,双亲委派模型中有哪些方法?
    • TCP如何保证可靠传输?三次握手过程?

    四面:(HR)

    • 主要交流为什么选择来阿里,未来的打算等,交流挺愉快。

    蚂蚁金服

    一面:

    • JVM数据存储模型,新生代、年老代的构造?
    • java GC算法,什么时候会触发minor gc,什么时候会触发full gc?
    • GC 可达性分析中哪些算是GC ROOT?
    • 你熟悉的JVM调优参数,使用过哪些调优工具?
    • Java 有什么锁类型?
    • 描述下线程池的处理流程?
    • 类加载机制,一个类加载到虚拟机中一共有几个步骤,这些步骤的顺序哪些是固定的,哪些是不固定的,为什么不固定
    • hashmap是线程不安全的,concurrenthashmap是线程安全的,怎么实现的线程安全?
    • volatile关键字解决了什么问题,实现原理是什么
    • 并发容器有哪些,并发容器和同步容器的区别
    • 说说HaspMap底层原理?再说说它跟HaspTable和ConcurrentHashMap他们之间的相同点和不同点?
    • 讲讲jdk1.7和1.8的区别?
    • 几种内置的线程池
    • MySQL事务隔离级别以及MVCC机制
    • Redis缓存雪崩、缓存穿透以及如何解决?
    • 分布式架构简单介绍
    • CMS收集器和G1收集器最大的区别在哪里?
    • 有实际的JVM性能优化经验?重点应该监控哪些指标,以及如何来调整参数?
    • Java线程锁有使用过哪些?比如乐观锁、悲观锁类似这样使用区别?

    二面:

    • 在工作中,SQL语句的优化和注意的事项
    • 哪些库或者框架用到NIO
    • Spring 都有哪几种注入方式,什么情况下用哪种,ioc实现原理
    • 如何定位一个慢查询,一个服务有多条SQL你怎么快速定位
    • 聚集索引和非聚集索引知道吗?什么情况用聚集索引什么情况用非聚集索引
    • Nosql引擎用的什么存储结构,关系型数据库和NoSQL各自的优劣点是什么,如何技术选型?
    • 微服务架构下,如果有一个订单系统,一个库存系统,怎么保证事务?
    • 分布式一致性协议raft,paxos 了解吗
    • Zookeeper中的ZAB协议,选主算法
    • 熟悉哪些NIO框架,以及谈谈你对NIO、BIO、AIO的认识?
    • 谈谈Java线程池的运行机制?
    • 常用的中间件有哪些?Dubbo、RocketMQ、Redis..
    • 然后继续随着中间件开始深入,RocketMQ的核心组件,以及如何解决消息去重?
    • MySQL和Redis的缓存如何解决数据一致性?
    • Redis是单进程单线程的?为什么Redis高并发快?

    三面:

    • 自我介绍
    • 参与的并发项目,从设计到部署,按照流程讲一遍。
    • 项目相关你用过redis,用在什么场景,怎么使用的?
    • mysql同步机制原理,有哪几种同步方法
    • 数据库主从同步如何实现,事务如何实现
    • 谈谈你对SOA和微服务的理解,以及分布式架构从应用层面涉及到的调整和挑战。
    • 阿里系中间件metaQ及原理与现有的kafka有什么异同
    • 有了解过什么中间件吗?实现原理?与其他开源消息队列有什么特点?
    • 介绍最有挑战的项目?技术难度在哪里?
    • 画一个典型的分布式架构图,从前端负载均衡到中间件,以及后端数据库,整个流程?
    • SOA和微服务有什么关联?以及你对微服务的理解
    • 随着这个话题谈到了Dubbo的架构设计?
    • 秒杀的设计思路?
    • 个人平时怎么提升技术?
    • 为什么选择换公司?
    • 三年到五年的职业规划?
    • 你有想问我的?

    四面:(HR)

    • 基本就是走流程,聊人生、谈未来、以及薪资要求了。

    京东

    一面(基础面:约1个小时)

    • 自我介绍,主要讲讲做了什么和擅长什么
    • springmvc和spring-boot区别
    • @Autowired的实现原理
    • Bean的默认作用范围是什么?其他的作用范围?
    • 索引是什么概念有什么作用?MySQL里主要有哪些索引结构?哈希索引和B+树索引比较?
    • Java线程池的原理?线程池有哪些?线程池工厂有哪些线程池类型,及其线程池参数是什么?
    • hashmap原理,处理哈希冲突用的哪种方法?
    • 还知道什么处理哈希冲突的方法?
    • Java GC机制?GC Roots有哪些?
    • Java怎么进行垃圾回收的?什么对象会进老年代?垃圾回收算法有哪些?为什么新生代使用复制算法?
    • HashMap的时间复杂度?HashMap中Hash冲突是怎么解决的?链表的上一级结构是什么?Java8中的HashMap有什么变化?红黑树需要比较大小才能进行插入,是依据什么进行比较的?其他Hash冲突解决方式?
    • hash和B+树的区别?分别应用于什么场景?哪个比较好?
    • 项目里有个数据安全的,aes和md5的区别?详细点

    二面(问数据库较多:约五1个小时)

    • 自我介绍
    • 为什么MyISAM查询性能好?
    • 事务特性(acid)
    • 隔离级别
    • SQL慢查询的常见优化步骤?
    • 说下乐观锁,悲观锁(select for update),并写出sql实现
    • TCP协议的三次握手和四次挥手过程?
    • 用到过哪些rpc框架
    • 数据库连接池怎么实现
    • Java web过滤器的生命周期

    三面(综合面,约五十分钟)

    • 自我介绍。
    • ConcurrentHashMap 在Java7和Java8中的区别?为什么Java8并发效率更好?什么情况下用HashMap,什么情况用ConcurrentHashMap?
    • 加锁有什么机制?
    • ThreadLocal?应用场景?
    • 数据库水平切分,垂直切分的设计思路和切分顺序
    • Redis如何解决key冲突
    • soa和微服务的区别?
    • 单机系统演变为分布式系统,会涉及到哪些技术的调整?请从前面负载到后端详细描述。
    • 设计一个秒杀系统?

    四面:(HR面)

    • 你自己最大优势和劣势是什么
    • 平时遇见过什么样的挑战,怎么去克服的
    • 工作中遇见了技术解决不了的问题,你的应对思路?
    • 你的兴趣爱好?
    • 未来的职业规划是什么?

    百度

    百度高级Java一面

    • 自我介绍
    • 对象相等的判断,equals方法实现。Hashcode的作用,与 equal 有什么区别?
    • Java中CAS算法?
    • G1回收器讲一下?
    • HashMap,ConcurrentHashMap与LinkedHashMap的区别
    • 如何在多线程环境下使用Map,ConcurrentHashMap原理,ConcurrentHashMap如何加锁。
    • 多线程并发的同步实现,有两个方法,每个方法里有a部分代码和b部分代码,我要让两个线程分别执行两个方法,并且让他们运行完a部分代码再一起向下执行,如何实现。
    • TCP连接中的三次握手和四次挥手,四次挥手的最后一个ack的作用是什么,为什么要time wait,为什么是2msl。
    • aio,nio,bio的了解
    • ReetrantLock和synchronized的区别。
    • Java有哪些悲观锁的实现?
    • Java有哪些类实现了乐观锁?

    百度高级Java二面

    • Spring两大特性?AOP和IOC
    • Spring的初始化过程?Spring bean的生命周期?
    • 多个RPC请求进来,服务器怎么处理并发呢?
    • MySQL的索引实现原理?聚合索引和非聚合索引的区别?
    • MySQL有哪几种join方式,底层原理是什么?
    • MySQL的引擎讲一下,有什么区别,使用场景呢?
    • 数据库的事务,四个性质说一下,分别有什么用?
    • 常见的分布式事务解决方案有哪些?

    百度高级Java三面

    • 介绍项目,以及画相关的分布式架构图
    • 数据库的备份和恢复怎么实现的,主从复制怎么做的,什么时候会出现数据不一致,如何解决?
    • Netty的实现原理?
    • 分布式下Redis如何保证线程安全
    • Redis怎么做持久化?两种持久化的区别?
    • MongoDB、Hbase、Memcached、Redis各自的应用场景和区别
    • Docker平时怎么使用的?
    • 并发mysql的场景,查询优化怎么做?
    • 设计一个高并发高可用的架构方案,关键核心设计?

    美团

    一面

    • 线程池用过哪些,线程池有哪些参数,然后问我几个常用线程池的用法和实际场景问题。
    • 集合框架的知识,hashmap,ArrayList,LinkedList源码相关知识,基本整个介绍了一遍,与hastable,concurrenthashmap相互的关联和区别
    • 说几个垃圾回收器,cms回收器有哪几个过程,停顿几次,会不会产生内存碎片。老年代产生内存碎片会有什么问题。
    • 讲讲快速排序,分析一下时间复杂度?
    • 双亲委派模型介绍一下
    • java中同步、volatile关键字
    • jvm内存分区,为什么要有新生代和老年代
    • 有做个JVM内存优化吗?
    • 数据库索引 主键和唯一索引有什么区别
    • 聚集索引和非聚集索引的区别?
    • MySQL存储引擎innoDB和MyISAM的区别?
    • innoDB的B+树索引叶子节点的Data域存储的是什么?MyISAM的B+树索引叶子节点的Data域存储的是主键还是物理地址?

    二面

    • MySQL innodb的b+树索引,主键索引,聚簇索引有什么区别。
    • 数据库四大特性
    • 事务的四大隔离级别
    • jvm场景问题, 标记清除多次后老年代产生内存碎片,引起full gc,接下来可能发生什么问题。
    • MySQL里有哪些锁,行锁表锁,乐观锁呢
    • MySQL的死锁怎么产生的,举了两个例子。
    • dubbo里的zookeeper是做什么的
    • aio,nio,bio的了解,NIO的核心概念有哪些?
    • 常用的NIO框架有哪些?优劣势

    三面(总监面)

    • 分布式下redis如何保证线程安全
    • redis持久化的方式以及区别
    • zookeeper如何实现分布式锁、其他分布式锁怎么实现
    • kafka的架构,如何用kafka保证消息的有序性
    • 数据库的优化包含哪些?MySQL的优化,谈两个你优化的例子。
    • 最有技术难度的项目,介绍下相关核心设计流程。
    • 工作中,遇见了技术瓶颈无法解决,你的解决思路?
    • 未来你的职业规划是怎么样?

    如何选择一家公司

    不管是刚毕业的大学生还是工作几年的职场朋友,每个人都会面临选择公司和行业的困扰,我也相信每个人都还记忆犹新你的第一份工作以及让你无比难忘的一家公司。有时候我们也盲目的所求,其实,偶尔停下来思考下你真想去的地方,再出发,也许结果将迥然不同。今天,给大家聊聊,如何选择一家公司。

    BAT

    应届毕业生和工作3-5年阶段技术人员,优先推荐期间进入BAT较好。BAT里大家的共识是分为三类:技术优先进百度,运营进阿里,产品进腾讯,这个共识对很多人其实是没有意义的,因为你甚至一家都进不了,何谈选择。

    下面我谈下个人经验,也许能给你带来点思路。我是在工作第四年加入阿里淘宝,截止到现在,淘宝这个阶段我还是认为这个阶段为自己打下了坚实的基础和视野,成长最快的还是在这个阶段,这是我个人的一个体会。

    在早期阶段,你需要为自己打下坚实的基础,这个基础包含:技能、态度、沟通,还有一点至关重要,那就是“视野”,这一点的重要度,很多时候被职场的名利所忽视。视野听起来很宽泛,但如果你仔细辨认,其实一目了然,当你身边都是一流的人才的时候,你自然会学到很多,这其中的某些学到的品质,会影响你很久。

    简要概括几点重点:

    • 有机会快速认识很多牛人。
    • 视野开阔很多,不仅仅在技术。
    • 每次项目,你会接触潜在很多关于产品、运营、设计的知识,类似这些知识算是长期积累的过程,是经得起验证的知识体系。
    • 早期进入,你的压力一定会很大,但成长也会很快,在里面锻炼几年你会比外面工作十年的厉害很多。
    • 不管你是继续在BAT还是你准备以后离开,都是一个很好的信用背书,前提是你在里面做的还不错。
    • 任何职场都有潜规则,但这个阶段你需要做到专注,专注提升自己的实力,潜规则放在一边,这个阶段需要专注提升。
    • 如果你实在受不了太多的限制于约束,或者你完全可以独挡一片,当然你可以不进BAT,我只是告知你发展阶段的一种途径而已。

    成长型公司

    这里我不区分是一线互联网企业还是创业型企业,统称为成长型公司。怎么区分成长型公司?一般过了A轮,初步你可以理解为成长较快。在职场早期如果你很难进入BAT,你可以考虑进入成长型锻炼。人生就是这样,很有可能,你会失之东隅收之桑榆,锻炼出来比在BAT还厉害的多,而且心智更全面,特别适合以后创业。有一种思维叫风险与收益成正比,你的风险相对于公司的风险,你的风险还是偏小。所其思考有什么风险呢,还不如安心专注提升自己。

    我简要概括几件重点:

    • 做好功课-选择行业你首先需要做好功课,选择行业。不管你是互联网+(互联网改造)、互联网企业、+互联网(偏传统),他们都对应一个行业属性。行业属性在以后比例会逐渐上升,很有可能你干着技术的活,很多人需要来请教你行业的知识。

    • 建议选择公司-心中有顺序优先选择互联网企业,其次互联网+(互联网链接),再次+互联网,再次传统企业和国企。逻辑很简单,如果你是做技术的,你可以看见哪家公司,技术是核心部门。没有哪家公司不对自己的核心部门长期投入的事。技术的利用在互联网企业里,用户基数更大,这个时候技术才能发挥作用。

    • 认清优势-不断积累因为除了做技术,你很有可能还需要兼职产品,甚至运营的工作。如果你某一天要走上创业这条道路,那将帮助你不少。如果你只是通过该公司成功踏上类似BAT这条船,也不错。希望今天的内容能对你带来点思考。

    总之,毕业选择加入一家公司,首先的有自己的一个基本判断,进入什么样的行业以及对应的职位,首先需要过滤清楚,然后再行动。没有说哪一条是最好的,但至少结合你的当下的情况,你可以选择当下最优。

    如何提高面试成功率

    很多人说到面试,头一下就大了,各种不自信,是实力不够还是信心不够?面试除了你平时不断积累实力,另一方面也需要讲究面试方法和技巧。我特别喜欢一句话:不打没有准备的战。

    第一步:快速聚焦岗位职责

    凡事讲究方法,多用心、多动脑、多动手。

    1.至少职责先匹配上吧

    重点关注面试职位的岗位职责,结合该岗位需要的知识体系,开始准备,这样聚焦。知识体系的匹配。很简单,自己上网搜,各种题库、各种解药。

    2.凡事都要有针对性

    尽量多了解相关公司所属行业地位和实际情况。根据成熟型公司或者创业型公司,进行适当调配重点。

    第二步:准备你的亮点

    岗位能匹配了,至少证明你能干活了,关键的来了。

    你需要准备你的成功案例
    不管你是做技术的、产品、运营,你有一件是你自己特别自豪,特别牛的案例?拿出来,给我们分享下。关于亮点,很多人不以为然,讲故事是一种很强的本事。如果你能很有逻辑的把一件事在10分钟内说得很清楚,这难道不是一种很强的沟通能力?

    反复讲述你的案例
    关于亮点的讲述,方法很简答,反复复盘。最好的方法就是不断练习,练习从头到尾的逻辑性,以及记录下你讲述的案例重点。再次练习。

    第三步:展示你强大的自信

    很多我面试过的人,有部分能力差一点的,最后让他们通过。很重要的一项:你的自信心。

    从自我介绍开始,全程保持微笑
    微笑的力量非常巨大,谁能拒绝一个爱笑的人呢?微笑,它可以快速缩短你与面试官之间的心理距离,为后续深入沟通,创造了一个和谐的氛围。

    眼神不要飘忽,讲述平缓一点

    还是聚焦,先聚焦面试官的眼睛珠:),这是一种最基本的尊重,也是展示你自信的一种方式。

    最后,记得与面试官互动

    如果你到了这里,请记得为面试官点个赞。如果他认可了你,一定会给你分享他的故事。

    总之,想提高面试成功率,需要硬实力和软实力的同时提高。

    如何选择offer

    之前很多应届生咨询我如何选择offer,某某公司的面试我是否应该参加,某某公司的Offer我是否应该拒绝?

    大家困惑的地方有几点:

    • 第一是薪资问题。
    • 第二如何选择公司。

    薪资问题

    刚毕业几年不要看薪资,除非薪资的差距是在数量级间的差距,如果只是几千块的差距这个不算差距,现在的工资并不代表你未来的工资,学会投资自己看未来,成长性好的员工未来的收益差距是在数量级,比如几年后,同学A的薪水比另外一个同学B的薪水高上百万都是非常正常的。

    其次要学会比较薪水。收到Offer时,首先要知道薪酬福利的组成,比如月薪,年终奖,期权,商业保险,补贴等。不要单纯的比较月薪,而是综合比较年薪和福利。A同学月薪比B低几千,但是A同学年薪和福利加在一起可能比B同学高好几倍。除了期权外,福利上主要关注以下几点:

    公积金,等你买房或退休的时候可以取出来,这个我认为可以算在薪水里。国家规定公司和个人都要缴纳12%,但是有些企业缴纳的公积金只有8%,因为他们只缴纳基本工资的12%,比如我曾就职的一家企业的工资=基本工资+岗位工资+绩效工资,基本工资只有65%,然后按照65%的工资缴纳%12的公积金,这样无形中比同样月薪的人低了4%的收入。

    补贴。不同的公司补贴不一样,大致有住房补贴,异地补贴,汽油补贴,餐补等。如果你从A城市去B城市上班有迁移成本,可以咨询下公司是否有住房补贴。另外补贴有个期限,是一年还是几年,这个也要问清楚。

    商业保险,过节费等。

    如何选择公司

    我自己也经历过几个不同类型的公司,小型私企,大型私企,互联网企业。从我的经历来看,如果你想学技术可以选择互联网公司,外企和创业公司,如果你想做管理,可以选择创业公司和中大型私企。

    怎样跳槽最有利于自身的发展?

    跳槽不只是纯粹的“跳”,跳前的思考,跳前的准备,跳前的判断从何而来

    主动求发展

    我把这一类放在第一项,主动出击求发展,这类属于已经有很明确的职业发展目标。

    清楚得失,知道自己应该去哪,可以暂时忍受薪资降低。

    补充一个例子,我认识一个朋友在深圳,为了叙事方便,暂时称为A先生。A先生是一个家创业公司的技术经理月薪在3万左右,之前做了一个决定,离开技术这个行业,加入一家创业的金融公司做销售。从技术直接转岗到另一个行业的销售,这个跨度很大。据后面A先生描述,前3个月一个单子都没有出,薪资只有底薪,从每月3万到每月1000元,甚至这1000元都快没了。A先生早期面临了很大的压力,为了活下来,A先生给自己定了一个小目标,再干3个月,为自己的最后的自损线,再不行就回去。据A先生描述,刚好他的第4个月出业绩了,后来信心来了,不断改进,越做越好,第5个月做到了他们公司第一。

    最近听他分享了部分心得:很满意这次转型,从眼见到成熟度,再到个人性格塑造,再到薪资,都有了很大的进展。

    当然,不是每一个人都能有这么好的结局,但是,如果你能承受这件事坏的方面,这样的尝试何乐而不为呢。毕竟,为你人生开启了一扇窗,一条更精彩的路。

    发展遇到瓶颈

    技术岗位的发展瓶颈比较多,如果你遇见了瓶颈,请认真思考诸如此类问题,跳槽后能否解决。

    • 准备转管理,思维没跟上。
      之前纯做技术岗位,如今准备往管理发展。从最早做好自己,到现在需要帮助别人成就自己,这是第一次思维方式的大转变。

    • 沟通能力比较差,经常被同事嘲笑情商低。
      任何人经常与机器打交道,疏于人打交道,交流沟通肯定会弱化,这个是不争的事实。接受现状,偶尔自嘲自己,然后再改进,是最好的办法。

    • 技术在公司没有得到尊重,毫无话语权。
      每周例会,技术部经常被同级部门挤兑,自己毫无办法,甚至老板也这样觉得。其实并不是你不行,而是你让他们觉得你不行。学会发声,你真做好了,谁敢挤兑你,很多技术人觉得发声很难,还是老话,多练习。

    • 安于现状,一件事情能重复做5年
      一个业务模块做了5年,你说还有个哪个产品经理比你更懂。稍微有点产品意识的,早转产品了,那你还抱怨说你没机会。

    遇见不靠谱老板

    • 承若的事情,不兑现

    老板年初的时候,信誓旦旦的说,我们今年完成什么目标,我给你们奖励…,当你完成目标后,最后他拒绝履行若言。

    • 拒绝承担责任
      按照老板的思路上线了一款产品,上线后效果达不到预期,把责任推卸到产品、技术部门。

    • 过河拆桥
      早期与公司一起创业走来,不想,老板很快请来空降兵。架空你的权利,各种让你在公司不爽,逼你走。美其名曰:你跟不上公司的发展。

    • 吝啬
      职位名称越来越好,薪资和待遇不见涨,美其名曰:我给了你机会,你就应该这样回报我。

    • 喜欢权术
      擅长厚黑学,把员工看成个人资产,毫无尊重而言,每天需要员工揣摩圣意。

    • 任人唯亲
      不以结果为导向,只凭个人喜好用人。只要你听话,我就用你。不管你做出了多大的成绩,如果你想晋级,抱歉,只要我在,你就不可能。

    • 自私
      从不从员工角度思考问题,只考虑自己。
      这些都是不靠谱的老板,你所要做的就是远离。

    最后
    你只有吃透你的跳槽诉求,再排除部分不靠谱的干扰,我想一定会比上次选择的更好。

    学会这五步可轻松应对面试

    一 :什么是好的简历

    简历是突出自我亮点的工作或学习经历和自我介绍。所以写简历要把握两个重点,工作经历要突出重点,自我介绍要写全。

    二: 如何写简历

    1:简历的内容

    简历至少应该包含以下几部分:

    基本信息:必填项有姓名,年龄,是否已婚,手机号,常用邮箱,目前所在地,工作经验。目前所在地关系到是进行电话,视频面试还是现场面试。选填项有博客,个人完整,github,英语读写听能力。

    应聘信息:应聘职位,求职地,职位和求职地都可以写多个。

    自我介绍:用事实介绍自己的亮点和擅长技能。

    教育背景:毕业院校,毕业时间。

    工作经验(由近至远):在哪些公司任职过,任职时间。好的公司会让面试官有好感。大学生的实习经验也算工作经验。

    项目经验(由近至远):写亮点项目,或最能体现自己技术能力的项目,不要把所有项目经验都写上,项目经验是可以引导面试官问问题的方向。

    获奖信息和证书:写最能提现自己能力的获奖信息,写多了也没用。证书比如CCNA,CCIE等。

    2:自我介绍

    自我介绍是简历中最重要的。自我介绍要用事实描述,不要用观点描述,比如我有10年Java开发经验,这个是事实,我崇尚团队合作,学习能力强,这个是观点。事实可以证明,而观点很难,所以事实描述比观点描述更有说服力。自我介绍主要是对自己经历的一个亮点总结,比如张三有十年的Java开发经验,其中有两年的Linux操作经验,两年的项目管理经验。张三有自己的个人技术博客XXX.com,经常翻译国内网文章并在XX网站发表,主导或参与XX开源项目。曾经在XX比赛中拿过三等奖。当然类似于学习能力很强的观点描述也可以写,但是要举例子,比如曾经在2周内学习完IOS,并开发了XX应用。

    3: 简历的大小

    简历至少要写两页。举个有趣的事例,我之前公司的同事在面试前筛选简历的办法是,10K以下的简历直接不看,10K的简历一般是一页左右,原因是他认为应聘这么重要的事情,连简历都不愿意好好写的人,估计能力也不行。

    4:简历的格式

    简历一定要美观和简洁,不要让面试官一眼看过去全是密密麻麻的字。
    提供PDF或WORD版本的简历,不要提供txt,HTML,ppt格式的简历。
    简历的标题。如果你是社招生,写姓名简历XX经验应聘XX岗位。如果你是应届生,写姓名+XX大学+应聘XX岗位。

    我曾经见过最让我震撼的简历是用PPT写的,然后导出成PDF,看得出这个应聘者很用心在写简历。

    三:建议

    期望薪水不要写。因为薪水的计算很复杂,期望薪水是税前还是税后呢,是否包含年终奖呢,是否包含其他个人所得奖金呢。我的建议是根据面试状况最后再谈期望薪水。写上期望薪水万一薪水比面试官还高,面试官可能拿自己的能力来要求你。
    不要频繁跳槽。每年换一次工作的求职者简历会不好看,面试官会认为他的职业规划想不清楚,招进来后可能很快又会跳槽。

    四:如何选择求职渠道?

    进入BAT有两种途径,校招和社招。下面我会分别介绍下校招和社招的流程和基本要求,最后分享几个面试小窍门。
    校招的流程:一般提前一年就开始了,需要应届生留意下BAT的招聘官网和官方微博。校招是由集团统一管理的,所以各个事业部不能随时招聘应届生和实习生。选择内推。最好找靠谱的师兄和内部同事进行内部推荐,内推的好处是可以选择应聘部门,面试节奏也快点。

    校招的要求:BAT倾向于招聘TOP院校的TOP学生,并且专业对口,当然如果能力非常优秀也肯定能进来的。能力上的要求有三点,优秀的基础,很好的学习能力和有自己的作品。一般情况下,这三点满足两点就能通过面试。面试流程是简历筛选+电话初面+电话终面。

    社招的流程:你几乎每时每刻都可以参加BAT的社招,只是有些部门可能有head count的限制,在那个时间点可能不能应聘该部门。一般P6的社招面试流程是电话面试(异地两次)+现场初面+现场复面+HR面试,如果级别越高面试流程会越多,基本规律是每高一级多两个人面试。

    社招的要求也比较高,倾向于招年轻的最优秀的人才。最基本的要求是能够独挡一面,来了就干活,不需要太多培训成本。为什么要年轻?年轻意味着有激情,不安于现状,会尝试影响周围的人。为什么招聘最优秀的人?乔布斯说在软件行业优秀的人和普通的人能力上差距可能是两百倍,传统企业没有那么大差距。所以BAT的招聘原则是越优秀越好,可要可不要的不要。有激情的优秀人才会创造无限大的价值。

    社招选择年底应聘。年底跳槽的人少,各部门的head count必须用完,所以要求可能会相对低些。所以年底相对于年初和年中比较容易进入BAT。

    做好面试准备。面试前准备一个自己做的最能体现技术能力的事或项目。了解BAT价值观和应聘部门的业务。

    利用初面官通过复面。在初面快结束时,面试官出于礼貌会问你有什么想问我的吗?这个时候很多人都不问或者问不关键的问题。我建议询问面试官自己的不足,针对这些不足如何提高,以及自己最得意的项目有哪些不足,如何改进,拿着这些建议和准备去参加复面会更容易通过。

    准备好了再投简历。不要乱投简历,我看有的人都有30次投递。因为面试不过你的面试记录会记录下来。如果有很差的评价,以后简历很容易评估不过,都不能进入电话面试。
    选择内部推荐。自己投简历可能进入公海,可能不会被人发现。

    五:如何准备面试

    如果你收到某公司的面试邀请,那就应该开始准备面试,打一场有把握的仗。
    需要准备几件事,自我介绍,亮点技术或产品,职业规划,这几件事情并不是临时抱佛脚就能完成的,而是要靠平时在工作中的积累,面试进更好的公司只是一个水到渠成的过程,能力到了自然就能进。

    准备多久?当时带着强烈想进入BAT的动力,电面准备了几周,复面准备了一个多月。

    第一关,自我介绍

    大部分面试官一般都会让应聘者首先做个自我介绍,自我介绍回合是应聘者最主动的一个回合,因为在这个回合主要是应聘者说,面试官听,所以我认为这个回合非常重要,如果介绍的非常好,不仅可以为后面面试官提问做伏笔,还可以让面试官对你有好感。所以建议准备一个十分钟时长的介绍,我听过很多应聘者的自我介绍一分钟都不到。

    自我介绍首先描述自己的基本情况,其次是描述自己的技术亮点,做过的亮点项目或产品。如果没有做过有技术亮点的事,每天都在做增删改查功能或重复性的工作,需要好好反思下,这样下去技术上没有多少增长。如果工作中就是做这个怎么办?可以考虑利用业余时间参与开源项目或自己做一些工具或框架。

    第二关,介绍做过的产品

    介绍产品时面试官会考察应聘者的沟通能力和思考能力,我们大部分情况都是做产品的一个功能或一个模块,但是即使是这样,自己有没有把整个系统架构或产品搞清楚,并能介绍清楚,为什么做这个系统?这个系统的价值是什么?这个系统有哪些功能?优缺点有哪些?如果让你重新设计这个系统你会如何设计?

    第三关,技术面试

    技术面试主要考察一个人的技术能力,沟通能力和学习能力。不同的面试官的问题不一样,没有规律可循,所以首先在网上搜下该公司主要的面试题,必考的肯定是基础,好的面试官会考察你擅长的技术,看看你是否有很强的学习能力和技术能力。有的面试官会问自己擅长的技术,这样对面试者的要求就更高,所以你要准备的更加充分,在技术的宽度上学习下。深度优先,广度次之。

    最后一关,HR面试

    HR面试主要考察一个人的价值观,潜力和职业规划。所以进入这一关之前请想清楚几个问题。
    为什么想加入这家公司?你需要了解下这家公司的文化和氛围。

    为什么离开上一家公司?钱少,不能实现梦想,还是有哪些不爽的地方。如果是换工作为了实现梦想,那么你的梦想是什么。不爽的地方如果在新公司再遇到怎么处理。
    你的职业规划是什么?

    当你遇到瓶颈的时候你怎么办?

    这些年你每年的成长是什么?怎么能体现你的进步?

    总结

    以上内容大部分都是帮助进入BAT等一线互联网公司的方法。成长还有很多别的方法和渠道。在创业公司你一样可以锻炼的很出色。但是按照几率来讲,早期进入一线互联网企业,更有利于未来的发展,特别是做技术开始的。

    最后,除了以上部分,谈谈我个人的建议

    任何是事情要学会先思而行,不仅仅适用于工作选择,更适用于发展。没想好,没想透不要紧,但一定要有这样的思维方式。

    长按以上图片,扫码关注作者微信公众号 “ java烂猪皮 ”,后台回复“面试资料”即可免费领取文中【面试题答案】以及【全套java后端学习资料】。

    往期精彩内容

    两个月拿到N个offer,看看我是如何做到的

    面试总结:2019年最全面试题资料学习大全—(含答案)

    淘宝面试回来,想对程序员们谈谈

    看过太多大厂面试题,其实考的无非是这 3 点能力

    一篇简单易懂的原理文章,让你把JVM玩弄与手掌之中

    相关文章

      网友评论

        本文标题:金三银四面试回来,我想跟程序员们谈谈

        本文链接:https://www.haomeiwen.com/subject/nqmynqtx.html