文章目录
- BOSS沟通
- 机试
- 第一道
- 第二道
- 第三道
- 综合测评
- 技术一面
- 面试官提问:
- 手撕代码:
- 提问环节:
- 技术二面
- 面试官提问:
- 手撕代码:
- HR面
- 主管面
笔者二本网络专业,5年工作经验,面试HCS Python开发工程师岗位,面试流程中每个环节的面试官都非常的友好。
BOSS沟通
以为只是简单的沟通,没想到第二天直接收到了机试预约邮件。。。
这里需要提前和对接人确认好部门,流程开始后不能变更面试的部门。
机试
三道题相对比较简单
第一道
通过率90.48%
输入第一行 m 数组个数,第二行 m 个整型数组,第三行 n; 要求输出最大N个数和最小N个数的和,如果去重后结果不满足最大N个数和最小N个数输出-1。
问题比较简单但是通过率始终没有100%,最后选择放弃了。
第二道
通过率100%
输入形如 AB-ABC-cABd-Cb@的字符串,输入待分隔长度k; 要求输出保留第一个“-”前面的字符串格式,后面的每k个字符一分格,每三个字符中,大写字母数多的三个字母转大写,小写字母数多的三个字母转小写,一样多的不处理。
第三道
通过率100%
树形目录,m行输入,[当前目录ID 父级目录ID]。最后一行为待删除目录ID,要求删除父级同时删除下级目录。 输出剩余目录。
综合测评
技术一面
面试官提问:
面试官上来直接让介绍项目经验,我还是做了下简单的自我介绍,然后对项目背景、设计做基本的介绍;
面试官基本上都是在问项目中相关的问题:
- 如何实现的负载均衡配置
- 服务发现注册原理
- 服务发现注册优化
- 日志服务为什么要在logstash前增加一个MQ
- 如何实现的实现配置服务
- 如何实现的实现并发处理
- 协程、进程的区别
- 是根据什么设置的最大进程数
手撕代码:
实现一个函数,返回两个超大整形a和b相加的结果
输入和返回均为字符串
调用者保证输入合法(不会有负数,不会有非法字符)
不允许直接通过string(int(a) + int(b))返回结果
示例:输入"1111111111",“2222222222”, 返回"3333333333"
之前在牛客上刷到过大数计算,直接就使用 eval 提交了,大家刷题时还是要认真对待啊
def add(a, b):
max_lens = max(len(a), len(b))
a = a.zfill(max_lens)
b = b.zfill(max_lens)
ret = ""
dp = 0
while max_lens > 0:
max_lens -= 1
temp = int(a[max_lens]) + int(b[max_lens]) + dp
if temp >= 10:
dp = 1
ret += str(temp % 10)
else:
dp = 0
ret += str(temp)
if dp == 1:
return "1" + ret[::-1]
else:
return ret[::-1]
if __name__ == '__main__':
print(add("111", "9"))
提问环节:
- 入职后主要的工作内容
- 更好的胜任工作还需要掌握什么技术
技术二面
面试官提问:
- 介绍下项目经历
- 使用Python有几年?
- 只会Python么?
- 这么项目的自己编写的代码量有多少?
- 对面向对象设计了解多少?
- 最近在看什么书?
手撕代码:
给一个100* 100二维整型数组,在二维数组上随机分布着0和1的值。需要提供测试用例,说明测试的场景。
输入: x, y
输出: x, y 坐标,周边一圈中有几个值为1
要求:给出测试用例并说明用例测试的场景。
def dfs(lst, x, y):
count = 0
for i in range(x-1, x+1+1):
for j in range(y-1, y+1+1):
# 中心点
if i == x and j == y:
pass
elif 0 <= i < len(lst) and 0 <= j < len(lst[0]):
count += lst[i][j]
return count
if __name__ == '__main__':
lst = [
[1, 1, 1, 0],
[1, 1, 1, 1],
[1, 0, 1, 1],
[1, 1, 1, 1],
]
# x, y = 1, 2
# x, y = 1, 3
# x, y = 3, 3
# x, y = 4, 4
# x, y = 5, 5
HR面
- 要求介绍一下大学以来的经历
- 任职经历中有管理职务,被问到主要从事管理还是开发
- 对其中的一个项目经验要求详细介绍一下如何设计实现
- 被问93年出生,12年上大学,为什么19岁才上大学
- 未来的职业规划
- 对互联网公司的工作强度有了解么
主管面
- 做下自我介绍
- 详细介绍一个主要参与的项目
- 对几大云平台的了解
- 未来的职业规划
- 主管介绍了下定级、绩效考评、薪资结构、薪资