面试

【沙滩裤】的面经分享

丶灬走出姿态 提交于 2021-01-16 13:25:31
自我介绍 本人二本,工作4年半得样子,专业算半科班,毕业只能进个外包,好在领导还错,项目也不错,交通银行手机app,成长蛮大的,混了接近3年,毅然决定去互联网公司试试,面试了某东6个部门后,终于成功进入,还是订单的核心部门,在这里算是飞速的成长吧,今年年初想着换个工作,原因就是钱少,事多,离家远,根据肥朝经典语录 能力强,肯加班,要钱少,根据CAP定理只能3选2。其实主要原因还是组里都是10年左右的大佬,新人难上位,职级不升,工资不涨,那还怎么混,是时候出去了,因为现在是在大公司,所以下一个也想着至少要进一个比现在公司大的公司,所以选择非常少,某里,某讯,某条,某团,除此之外别无选择。吹到这,面试开始。。。 offer收割 前后一共面了6次某团,年前3次,全部失败,基本都是2面没过,原因很明确,算法不过关,于是过年期间,恶补一波,年后面1次某滴出行(其实面这个是有点因为年前的面试失利,信心受挫,先面个保底),装逼完毕,继续,也面了 3次某团,1次某里,都是在同一天投的简历,一周把这些都面完了,结果就是3个某团和某滴出行都通过了,某里没通过,说实话,比较可惜,当时的面试官就是如果入职后的工作中的领导,对我挺满意的,说让我准备下一轮,然后就收到了没通过的邮件,打电话问了下,最后给我说还是想招P7及以上的人,非常可惜。最后选择了某团外卖 面试准备 1)这个其实真的是因人而议

两道JVM面试题,竟让我回忆起了中学时代!

☆樱花仙子☆ 提交于 2021-01-16 13:24:33
中学授课模式 考虑到可能有部分粉丝对JVM参数不清楚,所以我们参照中学的授课模式,给大家做一些知识上的普及。理论上,JVM参数主要分为三类 1.标配参数 该类型参数在JDK各个版本之间稳定,很少有大的变化。比如查看版本号 java -version 2.X参数 这些用的不多,看看就好。 // 解释执行 -Xint // 第一次使用就编译成本地代码 -Xcomp // 混合模式 -Xmixed 3.XX参数 3.1 布尔类型 -XX:+ 或者 - 某个属性值 ,+ 表示开启,-表示关闭。例如: // 打印GC详细信息 -XX:+PrintGCDetails // 不打印GC详细信息 -XX:-PrintGCDetails 3.2 KV类型 -XX:属性key=属性值value ,例如 // 设置Metaspace的大小 -XX:MetaspaceSize= 1024 m 中学考试试题 好了,现在课讲完了,那么我们来两道经典的JVM面试题。 填空题 在线上生产环境,JVM的 Xms 和 Xmx 一般设置成 _____ 比例。原因是 ____________ 。 选择题 我们常设置的JVM参数 Xms 和 Xmx ,属于下列哪种类型的JVM参数? A.标配参数 B.X参数 C.XX参数 D.以上均不是 解答 大家看这两道题,是不是有中学试卷的味道?上课教的东西,到了考试就全变样了

每个数据分析师,都怕被问这个问题!

最后都变了- 提交于 2021-01-16 12:50:09
你是不是经常被老板问的一脸懵逼? 比如—— “上周环比周活明显下降,怎么办?” “互动率下降,如何提升上来?” “要提升新客 ARPU 值,如何优化现有定价策略?” 有的数据分析师遇到这种问题真是满脑子黑人问号—— 数据分析师不就是取数的,会用Excel,会跑一下 SQL 不就行了。什么时候还得分析这种问题了? 1 不懂业务,你就 OUT 了 其实,现在结合业务进行数据分析才是大趋势。我好几个做数据分析的朋友,现在都已经转型业务数据分析了。 看一下现在的招聘需求就能发现,对数据分析师的要求,绝对不止跑数、取数、做报表就完事了,业务分析的比重非常大,而且要直接给出策略。 一遇到这种问题,很多数据分析师就犯难了,如何进行业务分析?如何提供可行的方案? 今天就给大家详细讲讲。 2 举个例子 某天,你负责的资讯类 App 新用户次日留存、7 日留存均低于竞品,达不到 5% 的绝对值,且新用户流失率极高。 如何优化产品,达到提升用户留存 5% 绝对值的目标? 一个合格的数据分析师,一般会从渠道侧、产品侧、用户侧三个方面入手分析。 渠道侧 包括UV、一级渠道的次留、7 留,二级渠道的次留、7 留等。 产品侧 包括功能渗透率,关键漏斗数据等。 用户侧 包括目标用户群体是哪些,用户行为分布情况等。 比如,我们知道人均浏览文章篇数是 3-4 篇,但有多少用户只阅读 1 篇,有多少用户 1 篇都不看

科技爱好者周刊(第 141 期):封闭系统的胜利

瘦欲@ 提交于 2021-01-16 12:49:23
这里记录每周值得分享的科技内容,周五发布。 本杂志开源(GitHub: ruanyf/weekly ),欢迎提交 issue,投稿或推荐科技内容。 周刊讨论区的帖子 《谁在招人?》 ,提供大量程序员就业信息,欢迎访问或发布工作/实习岗位。 封面图 2020年7月21日,SpaceX 公司的 Falcon 9 重型火箭即将发射。NEOWISE 彗星就在它的上方,划过浩瀚宇宙。很多网站评选这张照片为太空探索年度照片。( via ) 本周话题:封闭系统的胜利 去年的一件大事,苹果公司发布 M1 芯片。 它的表现好得惊人,比原先英特尔的芯片更快、更省电、还更便宜。 为什么 M1 芯片的表现这么好? 一个 原因 是,它其实不能算作 CPU,而是一个单片系统 (System on a Chip,简称 SoC),里面集成了中央处理器 CPU、图形处理器 GPU、机器学习芯片 NPU、安全芯片等等。 当代芯片的制造技术已经发展到不可思议的程度,海量的晶体管可以做进一块指甲盖大小的硅片。以前,不同的电路需要由不同的芯片提供,现在可以集成为一块芯片。 正是由于这么多组件做在一起,苹果才有办法,最大限度地优化电路,提高协同能力,节省电力。再加上,操作系统也是自家的,可以配合着修改底层,所以性能才能提高这么多。 我问大家一个问题,如果 M1 大获成功,其他公司会怎么反应? 答案很简单,别的公司不得不跟进

关于编写Java程序让Jvm崩溃

僤鯓⒐⒋嵵緔 提交于 2021-01-15 16:35:33
今天在书上看到一个作者提出一个问题“怎样通过编写Java代码让Jvm崩溃”,我看了之后也不懂。带着问题查了一下,百度知道里面有这样一个答案: package jvm ; public class Crash { public static void main ( String [ ] args ) { //Object[] o = {“abc”};初始值赋值,不会有影响。 Object [ ] o = null ; while ( true ) { o = new Object [ ] { o } ; //输出的话,jvm就不会崩溃。 //System.out.println(o); } } } 程序运行十几秒之后,控制台会出现这样的错误: Exception in thread "main" java.lang.OutOfMemoryError: Java heap space at jvm.Crash.main(Crash.java:10) 很明显,超出内存空间错误。 我将原程序随意改了一下,如赋初始值等,对程序无影响。 可是我将死循环中的o输出在控制台的时候,jvm居然一直都不崩,为什么输出的话,就不会超出内存空间呢? 我看来,原程序能够使Jvm崩溃,是因为死循环中,通过旧对象,不断创建出新的对象,即创造的对象是互相引用的,所以GC是不会回收它们的,造成堆栈溢出。

tomcat性能调优和性能监控(visualvm)

和自甴很熟 提交于 2021-01-15 16:35:13
tomcat服务器优化 1、JDK内存优化 根据服务器物理内容情况配置相关参数优化tomcat性能。当应用程序需要的内存超出堆的最大值时虚拟机就会提示内存溢出,并且导致应用服务崩溃。因此一般建议堆的最大值设置为可用内存的最大值的80%。 Tomcat默认可以使用的内存为128MB,在较大型的应用项目中,这点内存是不够的,需要调大. Tomcat默认可以使用的内存为128MB,Windows下,在文件/bin/catalina.bat,Unix下,在文件 /bin/catalina.sh 的前面,增加如下设置: JAVA_OPTS='-Xms【初始化内存大小】 -Xmx【可以使用的最大内存】 -XX:PermSize=64M -XX:MaxPermSize=128m' 需要把几个参数值调大。例如: JAVA_OPTS='-Xms256m -Xmx512m' 表示初始化内存为256MB,可以使用的最大内存为512MB。 参数详解 -server 启用jdk 的 server 版; -Xms java虚拟机初始化时的最小内存; -Xmx java虚拟机可使用的最大内存; -XX:PermSize 内存永久保留区域 -XX:MaxPermSize 内存最大永久保留区域 -Xmn jvm最小内存 32G 内存配置示例: JAVA_OPTS="$JAVA_OPTS -Xms10g

. NET5实战千万高并发项目,性能吊打JAVA,C#排名万年老五,有望逆袭!

烂漫一生 提交于 2021-01-15 16:16:29
“秒杀活动”“抢红包”“微博热搜”“12306抢票”“共享单车拉新”等都是高并发的典型业务场景,那么如何解决这些业务场景背后的难点问题呢? 秒杀系统中,QPS达到10万/s时,如何定位并解决业务瓶颈? 明星婚恋话题不断引爆微博热搜,如何确保系统不宕机? 共享单车充值活动,如何保证不超卖? …… 同一时间、海量用户的高频访问对任何平台都是难题,但可喜的是,虽然业务场景不同,设计和优化的思想却是万变不离其宗。 如果你掌握了高并发系统设计的核心技术点(缓存、池化、异步化、负载均衡、队列、降级熔断等),深化成自己的知识体系,解决这些业务问题将不在话下,应对自如。 不少技术老司机依旧会被“高并发”所困,这与知识储备不足,无法系统化地掌握核心技术有很大关系。技术人要不断汲取新的营养,更要能将技术知识应用到实际业务中,这样才能提升竞争力,突破职场瓶颈。 .NET5高并发、高可用实战训练营 1月12日~13日晚八点至九点半 ,资深架构师Tony老师将开启《.NET5高并发、高可用实战训练营》,Tony老师将基于业务场景还原大型互联网技术架构的演进过程,带你攻克不同业务阶段所需的各项核心技术,解决你的痛点问题。除此之外,他还将结合自身经验,从课程内容延伸出高频面试题,还原面试现场,为你的面试助力! 本课程会先带你建立对高并发系统设计的直观理解,再以最简单架构逐步演进到支撑百万

Java 中的不可变数据结构

拟墨画扇 提交于 2021-01-15 13:36:57
最近,在我主导的几场代码面试中,经常出现不可变数据结构(Immutable Data Structure)相关内容。关于这个主题我个人并不过分教条,不变性通常体现在数据结构中," 除非必要 "否则不会要求代码一定具备不变性。然而,我发现大家对不变性(Immutability)这个概念似乎有一些误解。开发者通常认为加上 `final`,或者在 Kotlin、Scala 中加上 `val` 就足以实现不可变对象。这篇文章会深入讨论不可变引用和不可变数据结构。 1. 不可变数据结构的优点 不可变数据结构有下列显著优点: 没有无效状态(Invalid State) 线程安全 代码易于理解 易于测试 可用作值类型 译注:在计算机编程中包含两种类型,值类型 value type 与引用类型 reference type。值类型表示实际值,引用类型表示对其他值或对象的引用。 2. 没有无效状态 不可变对象只能通过构造函数初始化,并且通过参数限制了输入的有效性,从而确保对象不会包含无效值。例如下面这段代码示例: ```java Address address = new Address(); address.setCity( "Sydney" ); // 由于没有设置 country,address 现在处于无效状态. Address address = new Address( "Sydney"

Android万字干货!从简历准备到大厂真题,“金三银四”跳槽大厂必备宝典!

烂漫一生 提交于 2021-01-15 13:15:08
拜个早年 今年的春节假期过完,按照法定放假的话,开工已经是2021年2月18日了,有一些比较有人情味的公司,一般也会放到正月初十,也就是在2月22日才会开工。所以基本上跨过农历新年,就马上进入到了企业招聘旺季“金三银四”。按照正常离职都需要提前一个月向公司提交申请的要求,所以呀,想要在年后“跳槽Double”可以赶紧准备起来了! 值此新春佳节将近,也没啥好送给大伙儿的,你要说送点吃的,喝的?想必各位朋友也不缺这些! 发个红包?就更显得寒碜人,在座的各位今后可都是年薪百万的主)! 思来想去,锦上添花不如雪中送炭,授人以鱼不如授人以渔,在这里赠与大伙儿一份“年薪百万之法”——一些Android开发的面经与学习笔记分享。助力朋友们年后跳槽大厂、薪资Double、早日实现年薪百万,人生巅峰! (什么,什么?得好好谢谢我?那看完后觉得有帮助的话记得 点赞+评论 ,支持一下哦!) 简历的准备: **简历重点是突出自我介绍、擅长技能、项目经验。**自我介绍要做到一句话就能表述清楚自己的优势,比如:学习能力(短时间熟练掌握技能)、个人履历(BAT背景优势)、积极努力(个人推动什么项目等)。 **擅长技能:**专业技能的描述词无非就那么几种:精通、熟练、熟悉、了解。精通感觉一般还是不要写,除非你在某个技术点上真的有足够的把握,真正能做到精通一门语言、一个分布式框架这才是精通。熟悉、熟练居多

使用设计模式出任CEO迎娶白富美(3)--一番对单例模式的讲解让老板熨帖

ⅰ亾dé卋堺 提交于 2021-01-15 11:03:15
面试阵容 第二天,陈二毛如约来到公司参加面试,但见公司名称:沃特搜古德。啥意思,二毛一脸懵。 前台妹子还是比较漂亮的,白白净净,让二毛顿生好感。 恋恋不舍的坐在前台妹子安排的面试房间,二毛打量了下公司,但见:窗明几净,灯光明亮,嗯不错。 过了一会进来几个人,一个是老猫,坐一边,一个干练的女性,坐一边,另一个颇为威严的中年,坐中间。毫无悬念,老猫是软件部老大需要过来,中间的肯定是老板,旁边的应该是人力资源。 单刀直入 开始是老猫不痛不痒的问了几个基础的计算机常识,例如C语言形参实参啊、Http请求方式啊、做过的项目啊,由于昨天晚上准备了,二毛答的还可以。 然后突然老板就开始问了一句:熟不熟悉设计模式。 果然来了!二毛直接硬气回答:那还是比较熟悉的。 老板又问,单例模式的应用场景说说,二毛那个激动啊,昨天晚上看书有点蒙圈,但是第一个看到的单例模式印象还是很深刻的。 单例模式应用场景 二毛开始回答,以咱们公司来说吧: 单例模式能保证公司只有一个财务部可以出钱。 单例模式能保证公司只有仓储可以存储待发货设备。 单例模式可以保证公司只有一个电源总开关,控制整个公司的设备。 营业执照也是单例,相当于公司在国家的企业信息库注册了一个单例。 法律合规的老婆也是单例,也就是说婚姻法的一个重要目的就是实现配偶的单例,以便实现配偶资源的合理配置。 哈哈…,最后一个案例是二毛的神来之笔