秋招之前实习面经汇总

目录

  • 01-SAP-云平台开发运维(3)
  • 02-字节-产研架构部-技术中台面经
  • 03-小米-java开发实习生
  • 04-VMware-软开实习(3)
  • 05-字节-开发者生态-后端开发实习
  • 06-华为-云核心网-通用软件开发实习生(2)
  • 07-腾讯-PCG后端开发实习
  • 08-CVTE-web后台开发实习(3)
  • 09-腾讯-IEG魔方工作室
  • 10-阿里巴巴蚂蚁-大安全风控部门
  • 11-阿里云-网络部门-java实习
  • 12-阿里巴巴-钉钉-商业化和服务中台团队(3)
  • 13-阿里巴巴-企业智能事业部
  • 14-腾讯-TEG基础架构部
  • 15-阿里巴巴-飞猪技术部
  • 16-阿里巴巴-CTO线新零售技术-国际化中台事业部
  • 17-腾讯-CDG腾讯金融-事务型开发
  • 18-阿里巴巴-达摩院-机器智能技术平台研发
  • 19-腾讯-腾讯云-音视频部分内容
  • 20-腾讯-TEG企业IT部-后台开发(4)
  • 21-字节-测试开发(3)
  • 22-美团-平台服务-后端开发
  • 23-美团-数据智能研发中心-后端开发
  • 24-美团-到家事业群营销中心-后台开发(3)
  • 25-阿里云-销售管理部-java开发(2)

01-SAP-云平台开发运维(3)

2021-01-05 一面
早上打电话,沟通面试时间,第二天早上或者当天下午,我选了当天下午面试
英文开始:
Hashtable
用什么数据结构实现它
数组,如果插入有什么问题
链表,二者优劣
Hashmap,和hashtable区别
英文结束,技术的时候会问你能不能用英语回答,不能就可以换成中文
线程安全,concurrenthashmap,分段锁,线程安全,segment

垃圾回收算法
怎么确定垃圾
常用gc算法:标记清除,复制,标记整理,分代收集(新生代,老年代)

垃圾收集器
新生代:serial, parnew, parallel scanvenge
老年代:cms, serial old, parallel old,
G1

问项目:
问的很细
解释一下什么是微服务
数据库接口别的微服务怎么调用?

知道RESTful接口吗?
知道Docker吗?

最后介绍公司内容:CICD方向

二面,一周后
英文介绍,英文沟通,时间过半后改成中文
问项目,问实现思路,实习时长等等

三面,HR面,一周后
沟通offer事宜,略

02-字节-产研架构部-技术中台面经

2021-01-08 一面 产品研发和工程架构部 后端研发实习生-技术中台方向
简历中的项目详细问
微服务是什么,怎么理解,注册中心、配置中心
负载均衡算法了解过吗,怎么实现,有什么策略?
微服务是为了解决哪些痛点?还有呢?还有呢?还有呢?
微服务本身有什么痛点?还有呢?还有呢?还有呢?
做项目过程中遇到过什么难点?
微服务项目:前期,需求难点;中期,设计难点;后期,bug难点

JAVA知识点:
问个最简单的吧,HashMap,详细讲一下
怎么解决HashMap的非线程安全问题?
答:有个ConcurrentHashMap,通过分段锁来实现线程安全
还有其他方式实现线程安全吗?
怎么解决哈希冲突

数据库:
有哪些索引?
忘了

编程题:二叉树的右视图
思路,层次遍历,取每一层的最后一个元素即可。

提问环节:
技术中台做什么?
是不是用go语言,是的
我还有哪里需要加强,基础知识,了解什么是微服务。

编程题代码:

import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        
    }
    
    //层次遍历结果[[], [], []]
    public static List<Integer> rightView(TreeNode root){
        List<List<int>> res = new LinkedList<>();
        Queue<TreeNode> queue = new LinkedList<>();
        queue.offer(root);
        while(!queue.isEmpty()){
            List<int> level = new LinkedList<>();
            for(int i=queue.size(); i>0; i++){
                TreeNode temp = queue.poll();
                level.add(temp.val);
                if(temp.left != null) queue.offer(temp.left);
                if(temp.right != null) queue.offer(temp.right);
            }
            res.add(level);
        }
        //return res;//[[1],[2,3],[4,5,6,7]];
        List<Integer> right_view = new LinkedList<>();
        for(int i=0; i<res.size(); i++){
            int levelLen = res.get(i).size();
            right_view.add(res.get(i).get(levelLen-1));
        }
        return right_view;//[1,3,7]
    }
    
}

03-小米-java开发实习生

2021-01-11官网投递简历
2021-01-26 一面,面试官迟到15分钟,催了两次,体验不好
问项目,业务怎么实现的
数据库例子,查班级成绩均值最大的班级,怎么写查询语句,表怎么设计,口述
Java常用类你用过哪些,集合类,ArrayList, LinkedList,区别,各自特点
jdbc怎么做查询,数据库语句,查询过程(我说好久没用了,用的mybatis,面试官还是一直在问jdbc,我也难受,他也难受)
SQL有哪些函数
Linux常用命令有哪些
总共20分钟,就没有了
感觉应该是凉了,面试官唉声叹气,就这吧

04-VMware-软开实习(3)

2021-01-27 一面+二面,2小时轰炸
一面 1小时
自我介绍问项目
session存在哪里,session和cookie的区别
跳过登陆界面直接访问资源界面,行不行?怎么解决?过滤器
手撕代码:手写O(n)复杂的的排序,桶排序,我忘了,(面试官:什么?桶排序你忘了??对,我忘了,但是我记得快排)那你写个快速排序
JVM的加载过程
类加载器有哪些
垃圾回收机制过程
垃圾回收算法
垃圾收集器
HashMap和ConcurrentHashMap区别
static关键字
访问修饰符public protected private default
数据库ACID是什么
智力题:ABCD过桥,一次过两个,一个手电筒,时间分别为1,2,5,10,最短过桥时间是多少?

二面 1小时
三次握手,四次挥手,为什么挥手要四次(半关闭状态)?
volatile解释一下,和synchronized区别,volatile底层实现(我不知道)?
Arraylist扩容机制?数组增加的复杂度?均摊分析知道吗?
Spring IOC和AOP底层怎么实现的, 我不知道,只知道动态代理
用户态和内核态区别
计算机组成:中断是什么?硬中断和软中断

手撕代码:剑指offer42,最大连续子数组的最大和,面试官人很好,上海人,口头禅“好的呀”

public class test01 {
    public static void main(String[] args) {
        int[] nums = {-1,-2,-3,3,2,1};
        System.out.println(cal(nums));
    }

    public static int cal(int[] nums){
        int res = nums[0];
        int maxval = res;
        for(int i = 1; i<nums.length; i++){
            res = Math.max(maxval + nums[i], nums[i]);
            if(res > maxval){
                maxval = res;
            }
        }
        return maxval;
    }

}

2021-02-02 三面 部门主管
英文自我介绍,英文沟通,沟通不下去了换中文
介绍到项目细节之后开始用中文
问项目,前端用的什么?数据格式是什么?AJAX,JSON
HTTP状态码有哪些?后端Spring boot负责哪些?有没有写前端界面?没,boot只写后端业务逻辑代码,传给前端,前端渲染
哪个项目或者哪件事你印象最深收获最大?研究生数学建模竞赛,三等奖渣渣
有什么问题吗?
公司用的什么技术栈?spring boot, 并不是完全的微服务,做云平台上的成本、流量计算等。只是有一个微服务的概念。
开发团队多少人?这个主管这边大概25人左右。
CICD方面用的什么技术?Docker ,Kubernates,开发占比大,运维人数少。
实习工资?不清楚,问人事
实习多久?三个月起步吧,一年也行,上半年下半年
双证、没工作,和全日制一起上课的非全有影响吗?应该没啥影响。
回去等结果,2月底没通知就是真的没通知了。但愿能过吧。
好像说今年校招没名额还是怎么回事,如果实习时间长的话明年如果有校招岗位会优先考虑

05-字节-开发者生态-后端开发实习

2021-01-27 一面 一小时
常用的集合类有哪些?
现在解决一个问题,从数据库到内存,怎么提高缓存的访问效率?用什么数据结构?
用hashmap存储KV,缓存满了,有什么策略处理缓存数据?
最近最少使用,LRU,怎么实现LRU,用一个数组保存时间戳,还有没有更快的方式?
sleep和wait的区别

并发:
并发场景下要注意什么?
synchronized,volatile解释一下
volatile是用来干什么的?
volatile底层怎么实现的?
volatile的实现原理 https://blog.csdn.net/weixin_30363263/article/details/80036483
1.可见性 如果对声明了volatile变量进行写操作时,JVM会向处理器发送一条Lock前缀的指令,将这个变量所在缓存行的数据写会到系统内存。
2.有序性 Lock前缀指令实际上相当于一个内存屏障(也成内存栅栏),它确保指令重排序时不会把其后面的指令排到内存屏障之前的位置,也不会把前面的指令排到内存屏障的后面;即在执行到内存屏障这句指令时,在它前面的操作已经全部完成。

Concurrenthashmap怎么保证线程安全的?

数据库隔离级别:四个解释一下
怎么实现可重复读
innoDB怎么解决幻读?什么机制?
数据库索引,什么数据结构?用的是B树还是B+树?
B+树为什么比B树好?区别在哪里?
B+树的性质,节点数量怎么确定?

手撕代码:岛屿数量

import java.util.*;


public class Solution {
    /**
     * 判断岛屿数量
     * @param grid char字符型二维数组 
     * @return int整型
     */
    public int solve (char[][] grid) {
        // write code here
        if(grid == null || grid.length == 0){
            return 0;
        }
        int heig = grid.length;
        int wid = grid[0].length;
        int count = 0;
        for(int i=0; i<heig; i++){
            for(int j=0; j<wid; j++){
                if(grid[i][j] == '1'){
                    //判断操作
                    count++;
                    //减去‘1’的操作
                    deleteOne(grid, wid, heig, i, j);
                }
            }
        }
        return count;
    }
    
    public void deleteOne(char[][] grid, int wid, int heig, int i, int j){
        if(i<0 || i>=heig || j<0 || j>=wid || grid[i][j] == '0'){
            return;
        }
        grid[i][j] = '0';
        deleteOne(grid, wid, heig, i+1, j);
        deleteOne(grid, wid, heig, i, j+1);
        deleteOne(grid, wid, heig, i-1, j);
        deleteOne(grid, wid, heig, i, j-1);
}

06-华为-云核心网-通用软件开发实习生(2)

2021-01-28 一面20分钟
怎么理解面向对象?
说一下你对Java纯面向对象和C++非纯面向对象的理解
Java 重载和重写区别
抽象类和接口区别
继承和多态哪个在编译阶段,哪个在运行阶段
子类没有继承父类,报错是编译报错还是运行报错
JVM中编译态和运行态

手撕代码
现场手写一个二分查找,用的记事本

十分钟后紧接着二面
部门主管聊人生
对华为有了解吗?断供,荣耀出售
负面评价有吗?加班文化。
最近你印象最深刻,压力最大的一段经历?
以后想去深圳这些一线城市吗?
什么时候能来实习?年后

07-腾讯-PCG后端开发实习

2021-01-28
上来直接手撕代码,给定一个长度为n的数字,找出比n大的第一个数字,要求这个数字由n中的数字组成
例如:123——132,112——121
思想:从后向前寻找第一个比最后一位数大的数字,交换位置即可,面试官人很好,自己太菜,一直引导思路,五星好评
Java基础知识和网络、操作系统、数据库基本知识都没问
讲项目:微服务的理解?
项目中的难点?
spring boot 和spring cloud有什么区别?
mybatis和hibernate的区别,为什么用mybatis
mybatis比jdbc好在哪?
mybaits批量操作怎么用的?

NLP的相关模型、知识知道哪些?
什么是梯度?什么是梯度消失?什么是梯度爆炸?
什么是过拟合?有哪些解决过拟合的方法?
知道dropout吗?

问题:你们是做什么的?
PCG机器学习平台
底层:C,web:java,算法接入:python

08-CVTE-web后台开发实习(3)

2021-01-21 笔试 20选择 + 2编程 + 1设计
很杂
B树,B+树
synchronized锁的升级过程
HTTP请求方式中的请求方法
强引用、弱引用、软引用、虚引用、内存泄漏
MYSQL四种事务隔离级别
java基础知识
重载和重写
继承和多态
接口和抽象类

编程题:
回文链表,力扣原题
把数组排成最小的数,剑指offer原题

设计题:
统计网站在线用户人数、在线时长

2021-02-02 一面 四十分钟
十一点多突然打电话,问现在有没有时间面试,脑子一抽说有,然后就慌忙开始了。。。
JVM内存模型说一下
静态变量放在哪?静态变量和其他变量区别,各自放在哪?
变量,常量,静态变量存储的位置

垃圾回收机制
新生代和老年代用的什么GC算法?为什么用不同的?标记清除,标记整理,大对象,小对象,内存碎片
还知道其他的什么GC算法吗?复制算法

垃圾收集器有哪些?
CMS垃圾收集器的原理和过程?
G1垃圾收集器的原理和过程?

多线程
线程从运行到阻塞有哪些方式?(线程5个状态的那张图)

线程池有什么了解?不了解

数据库
事务的四个隔离级别
MYSQL日志了解吗?
innoDB的事务回滚原理知道吗?不知道,但我知道InnoDB和MyISAM.,还有他们的索引和B+树的区别
说一下InnoDB和MyISAM食物区别
他们的索引都用B+树实现吗?他们用B+树区别在哪?
为什么用B+树不用B树?好处有哪些?磁盘读取效率高,B+树从根节点到子节点搜索路径一样长,所以更稳定

网络
三次握手四次挥手,为什么要四次挥手?

最后提问:
实习生做什么?先做小demo,根据你的Idea想法,熟练后做业务
后面的面试还是突袭吗?应该不会

2021-02-05 二面,45分钟
下午三点突然一个电话,有时间吗?那来面试吧,我????又搞突袭???
主要聊项目
说一个你最了解的项目,最近做的一个微服务的项目
遇到的难点?(这块问了很久)
登录没有过滤,导致可以直接绕过登陆界面访问后台界面。(之前面另一个大厂也说的这个,面试官说这个就是个Bug,不算难点,还有别的吗?我说没了,最后凉了)
怎么解决?
使用过滤器的。怎么过滤的?判断url,非法访问直接定位到login界面。
那我写www.baidu.com也会重定向到Login?不会啊,我前面是local:8080。主要看后面的地址。后来发现不对,我记错了。
用的token还是session?用的session。那用session为什么还要过滤?这块我也没搞懂,回答的不好。
后来绕着绕着,我说是前端传回的数据,看是普通用户还是管理员。在后端代码里用session进行判断,然后重定向到各自的界面。后来发现我代码里是这么写的,我竟然忘了?
用session的话,用户短期内退出再登录确实会到登陆后的系统界面,没毛病啊,你怎么解释?我一想,好像是这样。
后来面试完我看了下写的代码,确实是用的session,解决的是用户退出后,session也没有的情况下,非法访问系统跳过登录的问题。短期内登录是可以的。
数据表怎么设计?两张表,用户表,管理员表。
如果新增一个角色,权限在用户和管理员之间,怎么设计?数据表怎么设计?如果功能有重合怎么设计?
Spring AOP说一下,https://www.jianshu.com/p/4b02f4fa5cd4 , https://www.jianshu.com/p/78ba8bafb90a
spring的代理有哪些?静态,动态。
静态代理和动态代理的区别
动态代理有哪两种?JDK和CGLIB
他俩有什么区别?https://www.cnblogs.com/lixuwu/p/10681043.html
spring, spring boot, spring cloud的关系是什么?https://www.cnblogs.com/daguozb/p/10063269.html

09-腾讯-IEG魔方工作室

2021-02-03 电话意向沟通
2021-02-06 一面 一小时
面试官是10年前毕业的老学长,人很好
特点:为什么类的问题问的比较多?并不是简单的考你概念知识,更看重你背后有没有思考,怎样思考的
数据库索引,为什么要用B+树?比B树好在哪?和B树的区别是什么?
B+树叶子节点为什么要连接起来?方便范围查询,因为连起来正好是所有数据的有序序列,全表扫描和范围查询都可以。B树的数据在各层节点上,叶节点只有部分数据,连起来也没用
jdbc有没有遇到过sql注入的问题?有,密码后面加“;1=1”可以进入系统,怎么解决的?判断字符串中有没有分号。应该还有别的方法,但是我忘了。(后来查到是preparedstatement好像)
Mysql缓存知道吗?没用过,不知道
mysql查询select的时候有锁吗?
mysql有哪些锁?
Mysql死锁遇到过吗?什么情况下会出现死锁?
你的项目里数据库有事务吗?考虑到并发了吗?
java怎么做到“一次编译,处处运行”的?
kmp算法,没有很深入,简单问了下
java git知道吗?建议了解一下
jsp和servlet之间的关系?

编程题口述
判断链表是否有环
单链表排序

10-阿里巴巴蚂蚁-大安全风控部门

2021-02-25
面试官迟到20分钟,刚开完会,感觉可能比较忙不是很想问
1.说一下线程和进程的区别?
2,说一下堆和栈?
3.数据库范式有哪些?说一下,
4.TCP/IP为什么三次握手
5,项目里用到事务了吗?事务的隔离级别
6,java程序的运行过程?
7,java的类加载过程?
8,问项目

手撕代码
// 1. 合并一个升序和一个降序的链表成一个升序的链表。
// 2. 淘宝“双十一”有各种促销活动。假设你有“满 300 元减 40 元”券,购物车中有 n 个(n < 10)想买的商品,
// 商品价格为整数,在凑够满减条件的条件下,选出来商品总价最大程度地接近满减条件(300 元)商品。

11-阿里云-网络部门-java实习

2021-2-26
说一个你觉得收获最大的项目
(怎么介绍项目?)
1.怎么理解面向对象?符合现实场景,符合人类思维习惯。在程序中使用对象来映射现实中的事物使用对象的关系来描述事物之间的联系,这种思想就是面向对象。面向对象的特点:封装、继承和多态
2.Java继承,静态代码块,构造代码块执行顺序是什么样的?https://www.cnblogs.com/walytong/p/9766308.html
3.hashmap是怎么做到复杂度只有O(1)的?hashmap的数据结构是数组+链表。数组的特点,链表的特点。结合二者的优点。
4.hashmap是线程安全的吗?你知道jdk里面其他线程安全的有哪些吗?concurrentHashmap怎么实现线程安全的?
5.OSI七层网络模型说一下。
6.StringBuffer和StringBuilder的区别?谁的性能好?
7.垃圾回收算法怎么选择?根据什么特定场景?项目里面怎么用的GC?CMS,最短垃圾回收停顿时间,基于标记清除。G1,不产生内存碎片,不牺牲吞吐量。
8.了解线程池吗,说一下你的理解?
9.常用的线程池有哪些?cached, fixed, scheduled, workStealing
10.fixed和scheuled和cached有什么区别?

你还有什么问题要问我?
部门是做什么的?
阿里云网络产品,java,阿里云上层网络,流量计费等等

12-阿里巴巴-钉钉-商业化和服务中台团队(3)

2021-3-3
晚上快九点,一个电话打来,现在面试,我还在床上躺着。。。
一面 一小时
1、简单聊天,平时钻研的技术有哪些?怎么钻研?
2、说项目,聊了十分钟。
3、SOA架构了解吗?说一下。和微服务架构的区别。
4、八股文:OSI七层模型,hashmap, ConcurrentHashMap, TCP/UDP区别,三次握手为什么要三次?
5、数据库:索引有哪些类型?聚簇索引和非聚簇索引的区别?B+树说一下?聚簇索引和非聚簇索引在B+树中如何体现?
6、手撕代码:链表相交,口述
思路一:反转,遍历
思路二:遍历完自己,遍历对方,彼此相遇,val相等则相交。和面试官说了很久这个方法,感觉让他眼前一亮,他说这个方法不错。
7、CPU由什么组成?运算器(算术逻辑单元、累加器、状态寄存器、通用寄存器)+控制器(组合逻辑控制器、微程序控制器)
8、IP地址分为哪几类?ABCDE
9、java中加锁方式都有哪些?
10、synchronized关键字用过吗?要配合wait()使用吗?
11、wait()是干什么的?怎么用?和wait()一起用的是什么?线程唤醒用什么?
12、反射的代码看过吗?写过吗?研究过吗?

2021-3-5 二面预约时间,一面通过
2021-3-6 二面面试官介绍部门工作内容
2021-3-9 二面
详细问简历里所有项目,问了很久,每个都问
项目背景,担任角色,实现功能,实现细节,最后成果,STAR法则方式介绍
项目中某个功能修改,设计一个算法(序列对比相关)?怎么改进?
记得哪些设计模式和设计原则?
注解的底层原理了解过吗?有没有实现过?
做过最有挑战的事情?
让你变化最大的事情?
平时兴趣爱好?

反问环节
阿里云+钉钉,助力企业数字化转型,政府合作等
钉钉的核心业务系统,要调度所有商业化的业务,更偏向业务
评价:说我像产品经理,偏业务,哈?

2021-4-8 三面
问实习经历,服务发现注册中心的各个流程
zookeeper是怎么实现分布式数据一致性的?
ZAB协议的流程是怎样的?Leader选举原理?
分布式事务了解吗?
场景,A转账给B,AB账户存在不同的数据库上,这里面的分布式事务是什么?怎么做数据一致性?
两阶段提交协议?两阶段提交协议的问题?怎么解决?
问项目,项目难点,挑战是什么
平时看什么书?深入理解计算机系统,深入理解java虚拟机
缓存淘汰策略有哪些?原理?适用场景?LFU、LRU、ARC、FIFO、MRU
CPU调度算法有哪些?FCFS, SJF, RR
怎么理解微服务?有什么好处?解决了什么问题?
以后的规划?
反问环节:
具体做什么?商业化平台开发
实习生去了做什么?来了先了解平台,然后具体再看
技术栈?java

13-阿里巴巴-企业智能事业部

2021-3-4
一面 半小时
自我介绍,全程问项目,没有问Java基础和计算机八股文
介绍一下你收获最大的项目
介绍下项目中的难点?
平时有什么是出于自己兴趣自己主动研究的技术?
jvm, gc这些有没有在看完理论之后,手动测试一下?
平时研究技术是怎么研究的?
微服务有哪些了解?
对于微服务划分这种关键且重要的事情,有没有做深一步的了解?
硕士研究内容是什么?
数学建模竞赛做了什么?
个人兴趣爱好

反问环节,做什么的?
法务信息化与智能

14-腾讯-TEG基础架构部

2021-3-4
一面 半小时
问项目,具体怎么实现?
怎么理解CS网络架构
计算机体系架构说一下。总线是怎么把这些结构连接起来的
编程题:力扣加油站问题
socket编程接触过吗?用过哪些类或者接口?
sql分析用的什么关键字?explain
sql去除重复数据用的什么关键字?
sql查询很慢的情况下,有哪些常见的优化套路?

反问环节
做什么的?
TEG基础架构部,运营开发岗位,主要是服务器服务管理,后台管理系统之类的

15-阿里巴巴-飞猪技术部

2021-3-5
一面 40分钟
介绍项目,项目背景,担任角色,最后结果,是否上线?
说一下spring bean生命周期,spring AOP , IOC,怎么理解,项目中怎么用的?
数据库用过哪些?mysql事务,什么是事务?事务特性哪些?ACID,隔离级别
什么是读已提交,什么是读未提交
mysql索引类型?用过索引吗?什么场景下用的?
MySQL 中explain你说你用过,都有哪些字段?
说一下JVM和GC
CMS和G1有什么区别?
常用的集合类?
hashmap 和concurrenthashmap区别
hashmap数据结构?为什么用红黑树?红黑树为什么效率高?

16-阿里巴巴-CTO线新零售技术-国际化中台事业部

2021-3-5
一面 50分钟
红黑树解决了什么问题?解决了二叉查找树的线性问题。
红黑树详细说一下结构?时间复杂度多少?插入的复杂度?查询的复杂度?https://www.cnblogs.com/rcpalc/p/4055709.html
注解用过吗?原理知道吗?不知道我就不问了(不要装懂)
详细说一下CMS过程
JVM结构说一下
new一个对象,对象在哪里?堆还是栈?
你知道哪些树?
为什么建索引,索引复杂度?B+树时间复杂度?
spring cloud为什么要用这个框架?
聊聊项目,怎么实现的?一个服务器挂了怎么办?
怎么判断服务器挂了?心跳机制
建议多准备一下项目细节,可能会多问项目,使用的工具的原理

反问环节
中台是做什么的?核心在于复用,抽象出来一部分内容进行复用。
一两周的时间就可以建立一个新的电商平台
一面通过,得走官网正式流程才能二面,先有笔试

17-腾讯-CDG腾讯金融-事务型开发

2021-3-7 一面 一小时
部门介绍,做微信支付后台,用C++,愿意java转c++的话可以来
C++的指针和引用说一下
C++内存分配的方式?malloc, delete, new, free
new和malloc的区别?

网络
TCP和UDP的区别?
TCP建立连接的过程说一下?
UDP发送流程?A发送到B,完整的流程是怎样?
UDP包大小多少?UDP包大小有没有限制?怎么限制的?为什么要限制?
假设发送1M的数据,UDP怎么发送端拆分?接收端怎么组合?

数据结构
有哪些排序算法?
冒泡和快排分别说一下
map 和 哈希map说一下,C++里面的
map底层实现使用的什么数据结构?
红黑树和二叉搜索树的区别是什么?红黑树解决了什么问题?
为什么用红黑树,不用二叉搜索树?已经有了二叉搜索树,为什么还要红黑树?

操作系统
进城和线程说一下
进程间通信方式有哪些?(管道、消息队列、信号量、共享内存、套接字socket)那种最高效?(共享内存)

数据库
用的什么数据库?什么引擎?
事务隔离级别?
如果加行锁,用哪个隔离级别?
事务的底层实现知道吗?加锁
数据库怎么备份?
口述一个sql查询语句,涉及姓名排序order by,性别分组group by
索引知道吗?什么是一级索引,什么是二级索引

Linux常用命令有哪些?
cd, mkdir, rm, mv, find, vi, sudo

反问环节
部门做什么?
对事务一致性的要求很严格,涉及微信后台支付,QQ钱包等资金业务都是调用我们写的API
国内支付、金融程序员的培养地

感受:比较注重原理背后的思考,原理背后的原因

18-阿里巴巴-达摩院-机器智能技术平台研发

2021-3-8 一面 一小时
CNN和RNN区别,使用场景?
主要问项目,时间较久
手撕代码
//评测题目: heapify
Use an array to represent a priority heap with a complete tree
[1 5 7 8 6 9 10]
+++++1 1
++5+++++7 3 7
+8+6+++9+10 5 6 9 10
3 8
write add function: add a new element, and maintain the priority heap characteristic

int[] data;
int size;
void add(int newVal)
{

}

void pop()
{

}

19-腾讯-腾讯云-音视频部分内容

2021-3-9 一面
官网注册了简历之后,不断有部门打电话进来,反复被捞,反复鞭尸
问项目,详细问
说一下Map的实现原理,C++的
红黑树为什么要用红黑树
红黑树和平衡二叉树的区别
如果做一个并发的网络功能,要考虑哪些?
阻塞IO是怎么实现的?
C++虚函数的作用?
智力题:100瓶水,1瓶有毒,毒性发作时间一天,问,最少用多少只老鼠,能在一天之内最快找出这瓶有毒的水?
反问:
部门做什么的?腾讯云里面,音视频相关业务,用C++
新的功能用GO,旧的用C++,java很少

20-腾讯-TEG企业IT部-后台开发(4)

一面-2021-3-18
spring boot特性介绍一下
spring boot配置加载流程是怎样的?
spring AOP, IOC说一下
spring boot启动器的实现原理?
spring cloud服务注册中心实现原理?服务注册流程?
spring cloud有哪些方法防止服务雪崩?
服务容错保护库Hystrix原理能说下吗?
服务雪崩怎么解决?
后期如果用户量变大,服务治理有什么方法?

介绍项目难点
一分钟介绍家乡????
为什么想来深圳?
怎么看待城市之间发展不平衡???
个人兴趣,平时爱干啥
瞎聊

反问:
部门做什么的?
企业内部管理平台的后台开发,公司的采购、行政等等管理系统,go语言
听起来不是很高大上,不是对外的平台或者产品,是对内的

2021-3-22 一面加面
职能系统开发
问现在的实习,做的内容
zookeeper说一下
数据怎么同步的?
zookeeper里有哪些节点?
leader节点挂了怎么办?有什么解决方式?
ZAB协议说一下?详细流程和算法
ETCD里和用的什么数据同步协议?raft
raft协议详细说下?和ZAB的区别?相似点?
还有哪些服务发现框架?有用go语言写的吗?为什么不用已有框架?
有哪些负载均衡算法?
go语言,有class吗?
go语言里的 interface 说一下?
一个完整的的服务发现注册流程怎样的?
反问环节:
做什么的?腾讯内部工具,职能系统,行政、采购、法务系统等,微信收款码等等。
个人建议:zookeeper理解深度不够

2021-3-27 二面
详细问项目,项目流程,担任角色,技术选型,项目收获,项目难点
go语言和java语言的区别?
特点,知识点,具体区别的细节,适用场景
问实习经历
反问环节
部门作息,实习工资,非技术
9月份以后还能去实习吗?可以

2021-4-6 HR面
自我介绍,大学到现在的经历
了解部门是做什么的吗?
最有成就感的经历,成就感在哪里体现?
怎么理解微服务?总结一下。第一第二第三
你的优势在哪?
你的缺点是什么?
实习时长
反问:
非全可以去实习吗?
统招,双证,脱产。应该没问题,只不过offer流程会慢一点。

21-字节-测试开发(3)

21-字节-测试开发
2021-3-21 笔试
单选10,多选10
查找效率最差的二叉查找树是?
linux命令-rwxr --r–什么意思?
HTTP的请求方式:GET, POST, HEAD, OPTIONS, PUT, TRACE, CONNECT
java中private修饰的方法能继承吗?
Linux线程同步方式:互斥锁、条件变量、信号量、读写锁、事件对象
排序算法中哪些不稳定?
java多线程中sleep和wait的区别?
用位图存储图片,内存大小多少?
对称加密算法有哪些?
外部IO中断后会发生什么?
哈夫曼编码
Java的构造方法

编程
最大连续子数组和
动态规划
(场景:猴子分香蕉,每个猴子不能拿超过自己食量的2倍,不能拿超过剩余香蕉的一半,最后一只猴子能拿走全部的香蕉,最少要准备多少香蕉?)
连续背包问题

2021-4-1 一面
问项目
业务细节流程是怎样的?项目中的订单流程,怎么测试流程对不对?
java基础知识:
String, StringBuffer, StringBuilder区别?
垃圾回收机制?怎么确定垃圾,垃圾收集算法,垃圾收集器
网络:
http和https区别?
http状态码有哪些?有没有深入了解过状态码背后的东西?
在地址栏输入一个地址,到界面出现,整个流程是怎样的?
数据库:
什么是原子性?
事务的特性?ACID
mysql怎么删除数据?delete和drop有什么区别?哪个是可以回滚的?
什么是脏读?
测试场景题:
抖音评论,发评论这个功能怎么测试?
评论长度,发送和接收,app版本,操作系统版本,高并发场景
手撕代码:
力扣56,合并区间
反问环节:
抖音电商,直播卖货功能,测试代码,测试功能,写自动化测试工具,用go

2021-4-6 二面
问项目,业务流程,怎么理解,做了哪部分?
Linux:
常用命令知道那些?
fork()是干嘛的?
linux状态码什么意思?
操作系统:
线程,进程
哈夫曼编码解决什么问题?文件压缩
语言:
怎么理解go中的协程?
channel是干嘛的?
go怎么做面向对象的设计?
Java反射解决什么问题
算法数据结构:
判断字串是否在某串中用的什么算法?kmp算法,详细说一下
最小生成树算法记得吗,说一下?
深度优先搜索算法思想说一下?用什么数据结构实现比较好?
树和图的区别是什么?
网络:
TCP为什么要三次握手?
抓过包吗?IP协议的报头都有什么还记得吗?
设计模式:
知道哪些设计模式?代理模式说一下
手撕代码:
交换数组中的奇数位和偶数位

2021-4-11 三面
问项目,订单部分,怎么管理,分级授权怎么实现的?
感觉聊了半天好像没有get到面试官问的点,然后就下一轮问题了。
场景题:
12306查询票的信息
查询结果样例:
要查:西安-北京的车次
结果:车次号,始发站,终点站
车次list:
车次号 出发车站 到达车站
G55 西安西站 - 北京东站
G66 西安南站 - 北京北站
G77 大雁塔站 - 天安门站
……
怎么设计查询接口?
先做数据库表项设计,然后开始分析,然后卡住,然后冷场
怎么写sql查询?还有什么方法?
编程题:
写一个算法,判断一个输入的字符串是不是有效的ipv4地址
split()使用的时候,用".“分割,
注意:在Java中小数点是一个特殊符号,是对象调用属性和方法的特殊符号,所以编译会出错的,用\是把小数点转义成单纯的小数点。
正确写法,split(”\.")
不知道小数点这么写,最后报错,总之很尴尬。

2022-4-12 HR面
简单聊天,实习时间,
表明非全身份,可能不会发offer,之前没有接受非全实习的case,非全是风险case

22-美团-平台服务-后端开发

2021-4-9 一面
部门介绍:
平台服务体验,三个小组,生产/人力计划等,质检,风控
面试官小哥很腼腆,很温柔,柔声细语
问题:
问项目,实习内容,简历项目
GC算法有哪些?
CMS和G1是怎么判断垃圾的?可达性分析还是引用计数法?
常用线程池有哪些?
项目里怎么用的线程池?
ThreadPoolExecutor知道吗?
集合中线程不安全的hashmap,举一个线程不安全的场景?
并发操作hashmap会有什么问题?
ArrayList里面呢?并发有什么问题?多个线程同时add会怎样?会不会丢数据?顺序不一样的问题可以容忍
java的异常了解吗?
ConcurrentModifyException了解吗?什么情况下会有这个异常?
java的for each/for (int i…)循环里,如循环体内部操作ArrayList,比如add或者remove,会有什么情况?(死循环)
平时有没有遇到过上述情况
数据库
索引了解吗?
MYSQL索引怎么实现的?
为什么不用hashmap要用B+树?
多级索引说一下
最左前缀原则是什么?建立多级索引AB,用B进行索引,能查到吗?
inner join, left join, right join 用过吗?说一下?顺序是确定的吗?
手撕代码:力扣142环形链表II
1.判断链表是否有环?
2.有环的话返回环的入口节点,没有返回Null
反问环节:
部门技术栈:java,有用go的吗?没有,近一段时间也没有转go的业务
开发框架:Spring Boot

23-美团-数据智能研发中心-后端开发

2021-4-20 一面
上来先手撕代码,两道题,十分钟解决(面试官问写过线程池吗,我说没有,然后就出了别的编程题)
1、遍历二叉树(递归前序遍历,非递归后序遍历)
2、写个sql
sc(s_id, c_id, score) 成绩表
s_id:学号;c_id,课程编号;score:成绩
查询每门课程的平均成绩,结果按平均成绩升序排列,平均成绩相同时,按课程号降序排列

开始面试
封装、继承、多态你怎么理解?
java中哪些API能体现多态?
java中的流知道吗?IO这些,怎么体现多态?
举个多态的例子?
hashmap底层数据结构是什么?什么时候转变成红黑树?为什么是链表元素超过8个?
为什么用红黑树不用AVL树?红黑树的特点是什么?和AVL树的区别是什么?
hashmap为什么是线程不安全的?线程不安全使用场景会有什么问题?
你知道哪些轻量锁?volatile是轻量锁吗?和synchronize有什么区别?
java常用线程池有哪些?线程池底层构造知道吗?线程池,或者说ThreadPoolExecutor构造函数中都有哪些核心参数?
回去再好好看看线程池方面的知识吧

问项目
按照项目背景,解决问题,业务流程,来描述
怎么做权限管理的?
我没做,但是我知道一些权限管理的技术。比如Oauth,Spring Security, 角色-权限用户三元模型
知道RBAC模型吗?说一下
RBAC模型里有哪些部分?
项目中遇到的难点有哪些?
以后的职业规划是怎样的?

反问环节,你们什么部门?做什么的?实习生去了干啥?
技术研发平台-企业平台-数据智能研发中心,两块业务
一是美团内部大数据系统,员工数据、内部数据、简历系统等,数据可视化,数据挖掘
二是推荐系统,画像、图谱,类似内部搜索平台
技术栈,java

24-美团-到家事业群营销中心-后台开发(3)

2021-4-25 一面
JDK用的哪个版本?
线程池的构建方法有什么?
ThreadPoolExecutor的核心参数有哪些?
启一个线程,线程池的工作流程是什么?
线程是什么?和进程的区别?线程的种类?
线程切换保存的信息是什么?
键盘上输入一个字母,计算机会发生什么流程?
JVM1.8的内存区域有哪些?
GC为什么要有STW?
G1的流程是什么?基于什么算法?
怎么确定垃圾?
GC Root是什么?
数据库三大范式?
设计一个满足第二范式的学生信息表
Hashmap底层数据结构怎么实现的?
hashmap是不是线程安全的?为什么不是线程安全的?
手撕代码:判断二叉树是否是平衡二叉树

反问环节:
什么部门,做什么?
到家事业群,营销中心,外卖、优惠策略营销业务引擎等等
技术栈,Java thrift RPC框架

2021-4-26 二面
java的GC是怎样的?垃圾确定方法,垃圾回收算法,垃圾收集器
查询表中成绩最高的前十名学生怎怎么写sql?
改一下,改成成绩最高的前十个分数,不能有重复,怎么写?
mysql存储引擎说一下?
innoDB和MyISAM有啥区别?
B+树的原理是什么?
索引为什么要用B+树?
数据库读数据以什么形式?块
页和块有什么区别?

手撕代码:定义一个多叉树,并层序遍历?
改一下,如果改成蛇形遍历,怎么写?
List可以直接用吗?在java里面它是个啥?接口interface
ArrayList和LinkedList区别是啥?

华为实习经历,go和java你觉得区别在哪?
为什么go是为高并发而生的?为什么java不行?(这一部分感觉更像是交流,不像面试)
微服务框架Spring Cloud中都有哪些模块?
服务发现注册中心Eureka你是怎么用的?

反问环节:
具体做啥?美团外卖结算页面,计费结果的计算
几点上下班?早十晚九
技术栈怎么搞的?java thrift进一步做了封装和加强,美团自己的一个框架,还涉及消息队列等等其他很多的部分

2021-4-30 HR面
沟通offer,略

25-阿里云-销售管理部-java开发(2)

2021-5-20 一面
钉钉HC招满,流程转出,被阿里云接了
问项目,项目背景,挑战点,难点
为什么选择微服务架构?
订单流程如果变化,现有的架构怎么支撑后续可能的业务变化?你怎么考虑?可以抽象成A-B-C-D…D等这样的流程环节,就是环节的组合。耦合度低,可以后期根据业务灵活组合。
订单审批,如果涉及到不同等级的人审批,怎么考虑?RABC角色模型,进行分级授权。
数据库用的什么?
数据库访问量如果变大,怎么解决?(降级,转发,主备)
编程题思路,1000个数组,每个数组1000个有序元素,怎么找到top100的元素?(指针,交换比较)
Java基础:重写equals方法的同时为什么要重写hashcode?不重写hashcode会有什么Bug?

反问环节:
部门做什么的,给销售做支撑,销售流程跟、质量分析等CRM,公司内部系统

2021-5-24 二面
本科和研究生成绩排多少?topxxx
你这排名也不高啊,说说为啥?
常见排序算法有哪些?哪些效率高?快排和堆排的思路是什么?
Java基础:
hashtable原理说下,以及和hashmap的区别。
hashmap八股文。。。。。。链表变红黑树等等
实际项目中有没有用到数据结构或者算法的相关知识?
单链表,改双向链表,应用在图书序列识别中。
java生态中,或者说开发中有用到别的技术或者框架吗?
Redis, docker, zookeeper等等
操作系统知识,内存满了有什么解决方案?
服务器端你知道的硬盘存储有哪些介质?
关于云计算你知道哪些知识?
Docker和k8s的区别是什么?k8s有哪些组成部分,好在哪?
说说你的实习经历以及收获。
以后的职业规划是啥样的?

反问环节:
部门任务,阿里云销售管理部的开发,内部CRM,做生命周期管理,使用人员是阿里云销售和业务架构师(不是技术架构师)
base北京地点在哪,望京,杭州也有
作息时间,10,9,5
转正率,很高,实习招聘就是为了招正式员工

你可能感兴趣的:(面经)