阿里 社招 面试回顾
6026
发布于 未知归属地

写在前面

把我过去难得的一次阿里社招后端面分享一下吧, 后端篇云原生, Go,Python 方向 。

1 面

一面是技术经理 P7+ 和一个资深研发, 共两个人

  • 自我介绍
  • 项目介绍

这两项太具体了我就不贴了 , 直接贴些问题吧

  • 当前项目系统架构

  • Django asgi

  • JWT 介绍, 为什么没有用JWT 而是复写 djangorest 组件?

  • Python 和 GO 的分工

  • k8s 架构

  • 分布式系统 讲一下Paxos 原理

  • service mesh

  • Hash 算法的应用场景

  • GIL
    这个真的是送分题, 从为啥有 GIL, 到怎么实现 GIL, 到 Python2 到 Python3 中 GIl 为啥实现不一样? 答的还算可以

  • Redis
    为啥选择用 redis, 为什么 redis 块? list 类型怎么实现的? redis 基于硬盘存储的方案你觉得怎么样? 实现集群中高可用有什么方案和弊端吗?

  • Python 中 线程和进程, 协成 及你的使用场景
    从讲概念上的区别, 到 CPU,IO 密集型的区分, 讲到代码实现,yield, await, 讲到为啥协成开销小?

  • Mixin 类

  • 状态机的实现

  • 接口和抽象类区别

  • 说些实现单例模式的类型吧
    大概讲了4种 , 然后话题一转, 那你能讲下为啥说单例模式不好? what? 这个反转有点让我晕了下。 为啥不好这个我确实答的一般

    后来总结了下, 如果说单例不好可以从3个方面阐述:

    • 单例对 OOP 特性的支持不友好
    • 单例对代码的扩展性不友好
    • 单例对代码的可测试性不友好

    说到优化, 可以用工厂模式实现单例的作用

研发应该是 Python 出身, 所以基本上都是 Python 问题

2 面

这次面试官偏云研发 , 自我介绍和项目介绍必不可少

  • Deployment 和 statefulset 区别 , 及问了为什么选择了statefulset

  • ETCD 实现

  • iptables实现

  • 网络架构的选择是Cilium 还是Calico ?

  • 怎么实现VPA原地重启?

  • 讲一下你们怎么实现CA的

  • 讲一下参与的开源项目

  • 怎么看待如果绩效被领导评C? 阿里的3.25还是挺惨的。。

3 面 交叉面

这位应该是 Devops 体系, 持续交付领域专家

  • 发布系统架构
  • 怎么实现云上交付?
  • 为什么会重新做了个发布系统, 新的有什么优势?
  • 系统编译, jenkis,githubci gitlabci, 为什么选择了Jenkis, 怎么实现的 jenkis 主从?
  • 怎么理解 devops, 及paas ?
  • 怎么支撑向双 11 的这种高流量? 平时项目中单侧和性能测试如何做?

我还以为都不面算法的呢? 但也确实只让我手写了 LRU

  • LRu 算法
  • 跳表

4面 HR

  • 怎么了解到这个职位的?
  • 对这个方向(这里指公有云)未来有什么看法?
  • 为什么 5 年没有换工作?
  • 拿过几次 A?
  • 领导和下属怎么评价你?
  • 怎么看待阿里和其他公司的不同?
  • 未来发展规划
  • 工作地点
  • 薪资

关于结果

等了一周后给了答复, 发了邮件说很抱歉。 恩, 标准阿里流程

这点挺好, 每次都有专人沟通和邮件, 不会显得不被重视

结果重要吗? 可能过程更重要吧, 程序员就是一场接着一场的修行

写在最后

现在让我回答这些问题, 我确实也不能答 100分,顶多 90 吧

关于答案, 很多原理和个人的理解是没法通过短短一些文字讲清楚的。 通常都需要上万字阐述, 所以这里就不列答案了。

还有你不面那个职位, 可能你都不会懂这些问题的前因后果

问我是否去杭州, 那边交叉面试官的部门对我感兴趣, 婉拒了

工作地点很重要, 因为阿里主要更多职位在杭州, 北京。

不能第一次就面阿里啊, 哎。 应该之前面些小公司的

但是阿里从我要了简历, 我也没办法。总不能说不试试吧

最后的最后

不管怎么忙, 仍要提升自己, 经常做总结。 最近在梳理一些博文和面试题 将之搬移到 Github 了

可以关注鼓励 ,不断更新中 感谢
技术总结

评论 (3)
暂无评论