小公司面试

就不对每个小公司单独发帖了,放在一起算了。

03.18

学校招聘会投的小公司,约的线下面。上来先30分钟笔试,给的卷子题目非常基础,批改后才面试。

自我介绍,描述项目架构;面试官看了眼卷子,觉得做的不错。

开始询问,了解公司吗,了解公司工位吗,是否接受调剂,所在籍贯,接受加班吗,意向薪资多少,是否接受低代码开发,是否接受两个月出省培训,是否接受培训后考核。

叭叭叭地讲了半天,简要的意思是实习生150一天,主要低代码开发,先得到合肥培训两个月(100一天),考核后留下后,等转正具体再说。

呃呃呃呃,一点八股没问,问半天就是让人做牛马,两三小时来回的收获只有:一面试前提前了解公司,二别投小公司。😅😅😅😅

04.15

BOSS上投递近800份中第一个约面的,所以很期待的,但是现实是10分钟结束战斗,呃呃呃,一下子就尬住了。

想找一份什么样的实习呢?最近三年的职业规划呢?毕业之后打算在哪找工作呢?

SpringAOP

动态代理的具体原理

下述SQL语句左连接结果是什么,那右连接结果呢?

对于一个近百亿的字符串集合和一个小集合,如何求它们的一个交集?

幂等性

分布式锁怎么样去实现?

实习时间怎么样去保证呢?到岗时间大概是什么时间?实习期的薪资要求呢?

04.16

学校招聘会。

Java的基础数据类型有哪些,其数据范围是多少?

Spring的常用注解

什么是死锁,导致的原因,如何解决?

表的连接查询是如何实现的?

如何设计一个表,给出你的案例?

04.18

广州千人能源厂,十三分钟结束战斗,无八股,无算法。

个人介绍

项目的来历,是比赛还是个人兴趣,项目成员有哪些,你的责任是什么,项目由谁发起?

项目带来的收获,遇到了什么困难?

能实习多久,一直到毕业的这段空余期打算怎么安排?

你说你维护用户30天的活跃度,进而维护月排行榜,可是我一个月不固定30天,你怎么解决?

反问

此时面试官反问我,是否打算学习前端vue,什么时候打算学,个人发展想法,是否就任学生会?

这一场面试唯一的收获就是排行榜的问题,难道除了互联网厂,其他厂找实习其他都是这么随便吗?不懂

急了,就问一个技术问题,我也答出来了。难不成因为不愿意学VUE就直接挂了吗,之前原本都没提过这一嘴,就是反问的时候突然冒出来的。呃呃呃呃呃呃。

04.24_杭州小公司

杭州小公司,开发销售软件的。30分钟全程八股,无算法,无项目,答得还不错。

起手自我介绍,项目是个人的还是公司的,什么时候毕业?

开发项目遇到的困难?

TCP建立连接的过程

建立TCP连接的序列号是固定的,还是随机的?

TCP断开连接的过程

TCP如何保证包序?

对Java中的集合的理解,具体到每一个实现类

HashSet如何保证key不重复?

对 对象 又如何保证这个元素不重复?

如何定义你的hashCode()方法?

对多线程的理解

对线程的状态的理解

为什么有了线程还要有线程池?(即线程池的作用)

线程池的拒绝策略

创建线程池的方式

什么是CAS?

什么叫自旋?

什么情况适合CAS,什么情况下不适合?

对AQS的理解

使用线程的感受?

了解哪些设计模式

对模版方法模式的理解

什么是红黑树?

MySQL的一级缓存和二级缓存

MyBatis的动态传参有#和$两种方式,他们之间的区别是什么?

什么是数据库的事务?

什么是事务的隔离级别?

什么是幻读?

数据库的索引有哪些?

重定向和转发的区别,他们的状态码分别是什么?

什么时候需要用到索引?

final修饰的字段和变量分别代表什么含义?

String、StringBuilder、StringBuffer的区别?

Spring的事务的传播行为有哪些?

Spring的ApplicationContext的创建方式有哪些?

反问

04.24_深圳小公司

深圳ai小公司,四十分钟的面试,面试官没开摄像头,而且简历也是现场找来看的,感觉一般都这样,反正开场等了好一阵。问的好多都是开放题,汗流浃背了,但是几乎每个问题面试官都有总结和回答,体验非常的好。

无算法题。

先是自我介绍,然后询问个人情况,略

平时有用过ai吗,ai的模型原理有了解,对ai影响开发的现象是如何看待的?

我看你项目中“使用自定义的雪花算法生成 TraceID,结合 AOP 记录接口访问日志”,你的日志是怎么保存的,保存在哪里的?

我:打印到控制台,同时保存在本地文件

面试官:日志保存在本地文件,那么查询十分的繁琐,有尝试保存在哪些数据库比较好呢?

我:MySQL,其他数据库不了解

面试官:MySQL不是存储日志的最佳选择,因为日志信息通常是纯文本的,且日志数据量通常比业务数据要大得多,而且大部分时间这些日志数据可能并不会被使用。只有在需要时,日志数据才会起到辅助作用。而MongoDB和ElasticSearch这两种数据库都非常适合存储日志信息。

Integer的缓存机制有了解吗

我:Integer会缓存-128到127之间的整数对象

面试官:具体的缓存机制是怎么实现的,这么说吧,Integer.valueOf(int)和new Integer(int)的区别是什么,谁更优?

后面的问答略,属于八股问题

开放题:为什么String要设计为不可变?

对字符串拼接,String进行+和StringBuilder进行append,谁更快,为什么?

开放题:为什么已经有ArrayList,还要有数组?

开放题:HashMap和LinkedHashMap的区别,性能谁更优,为什么?

线程池拒绝策略

对ThreadLocal的理解,和其具体使用场景?

volatile具体是如何工作的,它能替代锁吗?

开放题:设计一个容器能够每秒接收新数据,然后定期将数据批量插入到数据库中,你如何设计,需要考虑什么问题?

开放题:如何设计一个接口,能够让用户通过接口下载大量(如1亿条)的数据?

你的项目难点?

我:用户活跃度的幂等判断,直接开背

面试官:用户活跃度的概念是什么呢?

我:继续解释

面试官:所以活跃度是指用户对平台有效且积极的操作,那么你怎么保证接口的幂等呢?

我:继续背

面试官:不是不是,这里是指在活跃度频繁更新的情况下,你如何判断别人是在刷接口还是真的是活跃度呢?

我:检测频率,然后对异常的用户放黑名单

面试官:那么在你检测到之前,网络带宽、服务器性能被这部分占去一大半了,你怎么解决?

我:直接从业务层面改,“活跃度是指用户对平台有效的操作”,即不做活跃度的删减判断,那么对一个文章可操作的次数是非常有限的。

面试官:限流也可以吗(面试官都无语了,就是想让我答出限流)

我:噢噢,也可以

反问:略

04.28_上海小公司

发了消息早上就约面,但是迟到了20分钟,感觉对方好像很忙的样子,闲聊了一阵就发道题,讲了下思路,面试官讲了改进方式,然后就结束战斗,无八股、无项目。唔,先这样吧。

题目:

直接双指针,需注意,除了分隔符以外的都可以被视为单词,比如"PD2"。

package liam;

import java.io.FileInputStream;

import java.io.FileNotFoundException;

import java.io.PrintWriter;

import java.util.HashMap;

import java.util.Map;

import java.util.Scanner;

class Main {

public static void main(String[] args) throws FileNotFoundException {

FileInputStream in = new FileInputStream("C:\\Users\\Liam\\Desktop\\License.txt");

Scanner scanner = new Scanner(in);

StringBuilder sb = new StringBuilder();

while (scanner.hasNextLine()) {

sb.append(scanner.nextLine());

}

String s = sb.toString();

Map cnt = new HashMap<>();

Map cnt2 = new HashMap<>();

Map cnt3 = new HashMap<>();

for (int i = 0, j = 0; j < s.length(); i = j) {

while (s.charAt(j) != ',' && s.charAt(j) != '.' && s.charAt(j) != ' ') {

++j;

}

if (i != j) {

String curr = s.substring(i, j);

for (int k = 0; k < curr.length(); ++k) {

char c = curr.charAt(k);

if (('a' <= c && c <= 'z') || ('A' <= c && c <= 'Z')) {

cnt.put(c, cnt.getOrDefault(c, 0) + 1);

}

}

cnt2.put(curr, cnt2.getOrDefault(curr, 0) + 1);

if (curr.length() >= 2 && curr.substring(0, 2).equals("PD")) {

cnt3.put(curr, cnt3.getOrDefault(curr, 0) + 1);

}

}

++j;

}

// Output the results to a file

PrintWriter writer = new PrintWriter("C:\\Users\\Liam\\Desktop\\Output.txt"); // Replace with your output file path

writer.println("Character counts:");

cnt.forEach((key, value) -> writer.println(key + ": " + value));

writer.println("\nWord counts:");

cnt2.forEach((key, value) -> writer.println(key + ": " + value));

writer.println("\n'PD' word counts:");

cnt3.forEach((key, value) -> writer.println(key + ": " + value));

writer.close();

scanner.close();

}

}

04.28北京小公司

发完消息的第二天就约面,基于低代码开发分布式内容,但核心业务还是自己开发。

面了22分钟,大概八股、项目、算法都稍微问了一下,感觉好像很缺人的样子。害,不知道结果怎么样。

闲聊

目前所在地,何时能到岗,为什么不考研?

省赛银牌的个数一共多少?

平时看什么技术书籍?

接下来如果想在工作公公司这边实习,你期望得到什么?抗压性怎么样?

算法(开屏幕共享)

给定List,找到第一个不重复的元素,若不存在则返回null。

要求时间复杂度小于,且额外开一个容器维护。

在原本代码基础上,流化操作

下述结果是什么,为什么这样?

并发编程在项目中如何使用的?

直接开屏幕共享指出来,第一次遇到真的看项目源码的。

CountDownLatch是什么,为什么不用CountDownLatch而是用CompletableFuture?

MySQL的默认事务隔离级别是什么,读已提交是什么?

反问

后悔去上面这家北京的小公司了,虽然不做低代码开发,有MT带,但是压力拉满了,非常规范以至于严格苛刻的状态,领导还压力人。每天开会,每周考察,每月考察,不知道该去向何方。排了一个月的测试内容。

干了一周回来了。

05.07

学校宣讲会投的广西民营的上市大公司,过了一周多约面,因为在小公司实习做牛马,约的晚上8:30,面试官在家里面,小孩一直在抢眼,面了14分钟。下面非技术问题省略:

对并发编程的理解

Spring的基本原理

小程序从开发到发布需要准备什么,需要准备什么?

对MySQL索引的理解

后端如何跟前端对接?

#面经##小公司#

相关文章

剑网3修为怎么获得 修为获取攻略

三星手机软件加密怎么设置

山东有哪些火山?盘点山东四大火山群,你都去过吗?