面试

8月海量社招、校招岗出炉!论招人Amazon是真的狠!

与世无争的帅哥 提交于 2021-02-11 18:54:41
8月 秋招正式打响 , 各个科技公司都放出了新岗位 ,但 论捞人, 没有比 Amazon更狠的 ! 在Dice最新招聘报告中,2020 Q2招人最多的不是 国防、军工 企业 ,就是ICC,而Amazon却杀出血路,稳坐榜首。 上周, 亚麻还接连 在 路易斯维尔 、 北肯塔基等地都 开放了 上 千个 岗位 。 new grad终于不用去挤社招了 今年上半年的校招岗少之又少,甚至一部分发出去的intern offer还被撤回。 一部分new grad只能被迫去挤社招通道。 虽然 亚麻的很 多社招岗位并不拒绝new grad ,但 并不是所有人都知道/ 满足社招条件。8月以来, 大量intern, new grad岗位也随社招一起开放 ,此时是今年最好的上岸机会了。 无论校招还是社招,必须会做这类题 我们一直再说:今年的面试难度普遍拔高了一级。很多备战的同学今年也在提前准备BQ,以及刷难度更高的题。 可是有一种题目类型,往往被忽略,就是 面向对象设计OOD 。尤其今年改VO,OOD成了高频题,一部分同学甚至 2轮都在考OOD 。 所以对于想offer的小伙伴来说,还需要特别注意准备OOD。 本期福利 没有标准答案,学习资料少怎么办 OOD的特点和难点是 题目比较开放 ,比如设计一个停车场或者电梯等, 答案没有绝对的正确或错误。 通常是看你能不能说出这样设计的优点和缺点,以及这样选择的得失

为什么大家都说SELECT * 效率低

别等时光非礼了梦想. 提交于 2021-02-11 18:52:46
来自:CSDN(作者:_陈哈哈) 原文链接(底部链接可直达): https://blog.csdn.net/qq_39390545/article/details/106766965 面试官:“小陈,说一下你常用的SQL优化方式吧。” 陈小哈:“那很多啊,比如不要用SELECT *,查询效率低。巴拉巴拉...” 面试官:“为什么不要用SELECT * ?它在哪些情况下效率低呢?” 陈小哈:“SELECT * 它好像比写指定列名多一次全表查询吧,还多查了一些无用的字段。” 面试官:“嗯...” 陈小哈:“emmm~ 没了” 陈小哈:“....??(几个意思)” 面试官:“嗯...好,那你还有什么要问我的么?” 陈小哈:“我问你个锤子,把老子简历还我!” 无论在工作还是面试中,关于SQL中不要用“SELECT *”,都是大家听烂了的问题,虽说听烂了,但普遍理解还是在很浅的层面,并没有多少人去追根究底,探究其原理。 废话不多说,本文带你深入了解一下"SELECT * "效率低的原因及场景。 本文很干!请自备茶水,没时间看记得先收藏 -- 来自一位被技术经理毒打多年的程序员的忠告 一、效率低的原因 先看一下最新《阿里java开发手册(泰山版)》中 MySQL 部分描述: 4 - 1. 【强制】 在表查询中,一律不要使用 * 作为查询的字段列表,需要哪些字段必须明确写明。 说明:

为什么大家都说 SELECT * 效率低?

强颜欢笑 提交于 2021-02-11 18:39:00
原文链接:https://blog.csdn.net/qq_39390545/article/details/106766965 面试官:“小陈,说一下你常用的SQL优化方式吧。” 陈小哈:“那很多啊,比如不要用SELECT *,查询效率低。巴拉巴拉...” 面试官:“为什么不要用 SELECT * ?它在哪些情况下效率低呢?” 陈小哈:“SELECT * 它好像比写指定列名多一次全表查询吧,还多查了一些无用的字段。” 面试官:“嗯...” 陈小哈:“emmm~ 没了” 陈小哈:“....??(几个意思)” 面试官:“嗯...好,那你还有什么要问我的么?” 陈小哈:“我问你个锤子,把老子简历还我!” 无论在工作还是面试中,关于SQL中不要用“SELECT *”,都是大家听烂了的问题,虽说听烂了,但普遍理解还是在很浅的层面,并没有多少人去追根究底,探究其原理。 废话不多说,本文带你深入了解一下"SELECT * "效率低的原因及场景。 本文很干!请自备茶水,没时间看记得先收藏 -- 来自一位被技术经理毒打多年的程序员的忠告 一、效率低的原因 先看一下最新《 阿里java开发手册(泰山版) 》中 MySQL 部分描述: 4 - 1. 【强制】在表查询中,一律不要使用 * 作为查询的字段列表,需要哪些字段必须明确写明。 说明: 增加查询分析器解析成本。 增减字段容易与 resultMap

JAVA面试题

放肆的年华 提交于 2021-02-11 18:06:14
1.HashMap和Hashtable的区别 2.StringBuilder内部实现机制 3.SpringMVC和Struts2的区别 4.Spring事务的管理 5.Hibernate与MyBatis的比较 6.GC算法有哪些 7.垃圾回收器有哪些 8.如何调优JVM 9.Java 中堆和栈有什么区别? 10.缓存命中率的计算 11.Memcache与Redis的区别 12.如何实现Redis的分片 13.zookeeper的用途 14.dubbo的用途以及优点 15.HashMap和HashTable存储原理 16.说说堆的年轻代和老年代 17.HTTP协议,GET和POST 的区别 18.栈溢出的原因有哪些 17.String、StringBuffer与StringBuilder之间区别 20.堆内存和栈内存的区别 21.讲讲分布式唯一ID 22.对象克隆和实现方式 23.集群环境中,session如何实现共享 24.short s1 = 1; s1 = s1 + 1;有错吗?short s1 = 1; s1 += 1;有错吗? 25.如何实现对象克隆? 26.唤醒一个阻塞的线程 27.说说NIO和IO的区别 28.Java中的NIO,BIO,AIO分别是什么? 29.什么是幂等性 30.终止线程有几种方式?终止线程标记变量为什么是 valotile 类型? 31

连腾讯都进化了,你呢?

巧了我就是萌 提交于 2021-02-11 17:25:51
就在今天,腾讯正式对外宣布启动新一轮整体战略升级的消息。这是时隔6年之后,腾讯内部发生的最大的组织变革。6年前为了应对移动互联网浪潮所做的架构调整,使得腾讯顺利实现移动化,并成功拿到移动互联网时代的船票,最终成长为中国互联网的两极之一。如果说6年前的架构变更是为了应对移动化,那么今天的战略升级又意味着什么呢? 我们知道,腾讯一直以来都是中国最挣钱的互联网公司之一。无论是流量还是现金流,在国内都是数一数二的。但是长久以来,腾讯的收入大部分都来自2C领域,最典型的莫过于游戏收入了。以王者荣耀为例,一季度的流水就达到几十亿,这样的成绩足矣秒杀绝大多数A股上市公司了。可以说,以前的腾讯真的是躺着就能挣钱的。过去几年腾讯股价的飙升,与游戏业务的抢眼表现脱不了关系。正是由于钱来得太容易了,导致腾讯在前沿领域的投入落后于同量级的公司,云计算领域比不上阿里巴巴,人工智能方向不敌百度,而这些才是腾讯这种巨无霸的护城河,而不是微视快手之流。不过这也合乎人性。打个比方,当你发现一座金矿时,你还会到别处去寻找钻石吗?大多数人都会选择先开采眼前的金矿的。腾讯也是如此。 但是金矿总有被开采完的一天。特别是在如今的大环境下,腾讯如果还像以前那样躺着挣钱,最终会死得很难看。资本寒冬、互联网泡沫、游戏管制、股价暴跌、营收增速放缓、头条系崛起……今年对腾讯而言,毫无疑问是最艰难的一年。因此

面试官问你MySQL的优化,看这篇文章就够了

血红的双手。 提交于 2021-02-11 14:43:54
一、EXPLAIN 做MySQL优化,我们要善用 EXPLAIN 查看SQL执行计划。 下面来个简单的示例,标注(1,2,3,4,5)我们要重点关注的数据 type列,连接类型。一个好的sql语句至少要达到range级别。杜绝出现all级别 key列,使用到的索引名。如果没有选择索引,值是NULL。可以采取强制索引方式 key_len列,索引长度 rows列,扫描行数。该值是个预估值 extra列,详细说明。注意常见的不太友好的值有:Using filesort, Using temporary 二、SQL语句中IN包含的值不应过多 MySQL对于IN做了相应的优化,即将IN中的常量全部存储在一个数组里面,而且这个数组是排好序的。但是如果数值较多,产生的消耗也是比较大的。再例如: select id from table_name where num in(1,2,3) 对于连续的数值,能用 between 就不要用 in 了;再或者使用连接来替换。 三、SELECT语句务必指明字段名称 SELECT *增加很多不必要的消耗(cpu、io、内存、网络带宽);增加了使用覆盖索引的可能性;当表结构发生改变时,前断也需要更新。所以要求直接在select后面接上字段名。 四、当只需要一条数据的时候,使用limit 1 这是为了使EXPLAIN中type列达到const类型 五

Java工程师必备书单

会有一股神秘感。 提交于 2021-02-11 13:54:45
本文出自我的公众号:程序员江湖。 江湖路险,你我同行。 Java开发工程师一般负责后端开发,当然也有专门做Java Web的工程师,但是随着前后端的分离,越来越多的Java工程师需要往大后端方向发展。 今天我们就来介绍一下Java后端开发者的书单。 首先要感谢一下江南白衣大大的后端书架,让我在初学阶段读到了很多好书,直到现在都印象深刻。 我在两年的学习历程中看了很多的书,其中不乏XXX入门到精通,XXX王者归来,XXX指南什么的。 虽然这类书确实毛病很多,但是作为非科班的我来说,当时还是看的津津有味。直到后来我看到一些优秀的书籍,以及白衣哥的书架,我才逐渐认识到看一些精品书籍的好处。 所以我们今天就从这些精品书籍中挑选一些优秀书籍来推荐给大家,当然其中有一些书我自己也没有时间看完。 接下来我们按照后端技术栈各个部分的内容来推荐书籍。 网络 1 TCP/IP卷一 这本其实我刚开始没看太懂,可能是当时太水的原因,但是一般是大牛力荐的书。 2 计算机网络:自顶向下 这本从应用层讲到物理层,感觉这种方式学起来更轻松,我比较推荐小白看这本。 3 图解HTTP和图解TCP/IP 相较于前两本大厚书,这两本书更加亲民,小白可以买来看看,还是很适合入门的。 4 计算机网络 没错,就是这本教材,作为非科班选手自己看这本书,那叫一个欲仙欲死啊,看完就忘记了。 操作系统 1 深入理解计算机系统

35岁了,终于成为架构师了!

佐手、 提交于 2021-02-11 13:53:49
业界关于架构师有一些误解,一方面觉得架构师是高大上的工作,画画架构图,对程序员的工作指指点点就可以了;另一方面又觉得架构师没什么用,可有可无。而在具体实践中,一方面对架构设计工作不重视,拿到需求,几乎没有任何设计,一上来就撸代码。另一方面随着需求不断迭代,项目逐渐失控陷入混乱,又开始埋怨当初没有好好做设计。 架构设计是开发中的一个重要组成部分,架构师是开发团队中的重要角色,架构不是高高在上的,而是实实在在的,架构有自己的科学方法和最佳实践。架构师不是在开发中指手画脚的那个人,而是技术团队的领路人,他用架构设计引导技术团队完成开发任务,在遇到困难的时候又能解决具体问题的人。 既然架构师这么重要,那企业在面试软件架构师的时候,都会问哪些方面的问题呢?这些问题背后又都会考察哪些能力呢? 推荐给你一场极客时间免费公开课 《 面试软件架构师,面试官会问哪些问题?》 ,为你剖析面试问题的同时,为你总结架构师面试背后具体考察哪些能力? 这场公开课,你将收获: 大厂架构师能力模型 架构师面试经验分享 大厂架构师招聘 JD 分析 热点问题答疑 公开课内容:10 个精选面试问题 什么是 CAP 原理? 一致性 Hash 算法解决什么问题?请描述下算法原理。 用户密码在写入数据库的时候应该用什么加密算法加密?为什么?登录时如何进行密码验证? 淘宝这样的大规模分布式互联网应用系统技术挑战主要是什么

面试MySQL,看这篇文章就够了!

爱⌒轻易说出口 提交于 2021-02-11 13:38:11
当游戏前端开发能力不断提升后,有的小伙伴已经开始不满足了,将魔爪伸向后端开发,立志做一个全栈游戏开发程序员!分享一篇MySQL的好文,加油吧!程序员! 作者:zhangqh segmentfault.com/a/1190000012155267 一、EXPLAIN 做MySQL优化,我们要善用 EXPLAIN 查看SQL执行计划。 下面来个简单的示例,标注(1,2,3,4,5)我们要重点关注的数据 type列,连接类型。一个好的sql语句至少要达到range级别。杜绝出现all级别 key列,使用到的索引名。如果没有选择索引,值是NULL。可以采取强制索引方式 key_len列,索引长度 rows列,扫描行数。该值是个预估值 extra列,详细说明。注意常见的不太友好的值有:Using filesort, Using temporary 二、SQL语句中IN包含的值不应过多 MySQL对于IN做了相应的优化,即将IN中的常量全部存储在一个数组里面,而且这个数组是排好序的。但是如果数值较多,产生的消耗也是比较大的。再例如: select id from table_name where num in(1,2,3) 对于连续的数值,能用 between 就不要用 in 了;再或者使用连接来替换。 三、SELECT语句务必指明字段名称 SELECT *增加很多不必要的消耗(cpu、io

学WEB前端,学历到底重不重要

我的未来我决定 提交于 2021-02-11 12:51:25
学历的作用 首先,我们先了解一下一般情况下学历的作用是什么,对于我们大多数人来讲,在进行面试的时候,学历最重要的一个作用就是“敲门砖”,现在任何公司招聘,都会写上大专学历以上或者是本科学历以上,但是对于真正有能力的人,学历并不能约束到你,往往都是既没有学历又没有能力的这种人,那就没有办法了。 web 前端的工作性质是什么? 了解完了学历的作用,我们就在了解一下web前端的工作主要是做什么,我们简单来说,就是做网站开发的,我们每天上网见过的大大小小的网站,就是做这个工作,用代码编写程序的技术性工作。要注意我们这行是个技术性工作,根据现在公司(主要中小型公司)的开发者来看,他们大部分学历都是本科或者大专。其实这些公司根本不怎么在意学历的问题,这些公司主要看的就是你能不能完成公司布置的任务,如果你可以把每天给你安排的任务完成,那一切就OK了。技术公司不养闲人,如果你任务完成不了,那么你即使是博士生也没什么卵用。 一般情况下来说,学历也往往说明了一个问题,就是如果这个人学历低,那么我们在刚开始的时候就会给这个人贴上一个标签,这个人学习能力差,不喜欢学习,懒惰等等的标签。而往往大部分学历低的人也确实都是这样,所以拒绝学习低的人,并不是拒绝学历低本身,往往是拒绝学历低背后隐藏的一些东西,就是上述说的学习能力差,不喜欢学习,懒惰等等。但如果你并不是这样的人,你就可以向别人展示你的能力