面试复盘7——后端开发

前言

一面(2024-1.25)

首先上来是自我介绍。

(这里自我介绍时候项目只说了技术栈,没有说内容,不知道好不好)

(在校经历说的一点点口语化了)

先问的近期实习经历,和我确认我做的是什么。

实习经历1

1、存到Mysql时候是如何做的格式化?(有无字段提取如何)

有字段提取的实际,从kafka中提取出来来源的信息、目标的信息。(解析json绑定到结构体)

原始存的消息和Mysql存的都是json格式。

Pb+wire,主要是用到了哪些方面?

Mysql存储的消息,是如何制定清理规则。

这个服务的价值(讲了用途、和看日志相比这个服务的方便之处)

(重发功能:可以修改消息再发送。(比如配置错了的情况,直接改了就可以发))

实习经历2

简单问了一下内容就。。

学校项目

问我做了什么。我直说这个项目很水的hhhh。然后就没问了。

和我确定了一下之前用的什么,然后就开始做题了。

代码1

判断一个字符串是否回文。

和之前的[LeetCode-1题](https://leetcode.cn/problems/two-sum/description/)混了一点。。。想的用哈希表。

第一次循环赋进哈希表,第二次循环判断回文即可。复杂度O(N)。

让我优化...双指针那就是,一次循环 也是O(N)。

讲了一下go的goroutine、GMP模型。

代码2

两个goroutine,一个输出奇数一个输出偶数。通过通信,最终输出1-10。

发现很多小的细节还是有不完善... ...代码放这里了,基础操作还是得巩固。

go 复制代码
func main() {
	fmt.Println("begin")
	nums1 := []int{1, 3, 5, 7, 9}
	nums2 := []int{2, 4, 6, 8, 10}
	i, j := 0, 0
	var wg sync.WaitGroup
	chan1 := make(chan int)
	wg.Add(2)
	go func() {
		for ; i < 5; i++ {
			fmt.Println(nums1[i])
			chan1 <- 1
		}
		wg.Done()
	}()
	go func() {
		for ; j < 5; j++ {
			<-chan1
			fmt.Println(nums2[j])
		}
		wg.Done()
	}()

	wg.Wait()
}

夸赞了一个习惯------写代码先把核心写出来,再去完善枝叶。

反问

公司是做什么的、技术栈

聊了些基本情况就结束了

相关推荐
时差95310 分钟前
【面试题】Hive 查询:如何查找用户连续三天登录的记录
大数据·数据库·hive·sql·面试·database
CXDNW2 小时前
【网络面试篇】HTTP(2)(笔记)——http、https、http1.1、http2.0
网络·笔记·http·面试·https·http2.0
嚣张农民2 小时前
JavaScript中Promise分别有哪些函数?
前端·javascript·面试
阑梦清川6 小时前
在鱼皮的模拟面试里面学习有感
学习·面试·职场和发展
劲夫学编程7 小时前
leetcode:杨辉三角
算法·leetcode·职场和发展
鱼跃鹰飞15 小时前
大厂面试真题-简单说说线程池接到新任务之后的操作流程
java·jvm·面试
钱钱钱端17 小时前
【压力测试】如何确定系统最大并发用户数?
自动化测试·软件测试·python·职场和发展·压力测试·postman
程序员清风17 小时前
浅析Web实时通信技术!
java·后端·面试
测试199818 小时前
外包干了2年,快要废了。。。
自动化测试·软件测试·python·面试·职场和发展·单元测试·压力测试
mingzhi6119 小时前
渗透测试-快速获取目标中存在的漏洞(小白版)
安全·web安全·面试·职场和发展