├── .DS_Store ├── LICENSE ├── README.md ├── c++ ├── C++11函数声明和关键字.pdf ├── C++17新特性std__optional.pdf ├── C++17新特性std__string_view.pdf ├── Lambda表达式.pdf ├── Modern C++风格类型转换.pdf ├── 智能指针.pdf └── 深拷贝浅拷贝.pdf ├── interview ├── .DS_Store ├── ByteDance.md ├── Databend.md ├── Intel.md ├── Proposal for GSoC 2024.pdf ├── RisingWave.md └── Ubiquant.md ├── project ├── Chfs.pdf ├── LSM-DB.pdf └── Tiger Compiler.pdf ├── resume └── resume.png └── system └── 分布式系统.pdf /.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Electronic-Waste/My-Job-Hunting/f21cd77a90dc5fe72da51bc2a6824b40039fd6cd/.DS_Store -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2023 Shao Wang 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # My-Job-Hunting 2 | 3 | 这个Repo用来记录我找工的过程和一些经验分享,会随着我找工作的进度不定期更新。如果你觉得它对你有用的话,不妨点一个star🌟鼓励一下我,这将是我继续更新下去的动力~ 4 | 5 | ## 简历 6 | 7 |
8 | 9 |
10 | 11 | 我使用的简历模版是由@gaocegege维护的[模版](https://github.com/dyweb/Deedy-Resume-for-Chinese),中英文版本都有。 12 | 13 | 另外推荐一个由@dyweb维护的[模版大全](https://github.com/dyweb/awesome-resume-for-chinese),可以在里面挑选自己觉得好看的模版。 14 | 15 | 感谢你院硬核的课程,让我好歹能在简历上放几个比较solid的项目。面试官一般都会追着你简历上的项目问,并根据你的项目延伸出来一些八股,所以**要对自己放在简历上的项目的每一个细节了如指掌**。 16 | 17 | 不同的面试官对项目的偏好不同,比如我面字节基架的时候,面试官对Minik8s和操作系统项目(被我从简历里拿掉了❌)情有独钟,而RisingWave的面试官则更偏好Chfs文件系统和LSM-DB(也被我从简历里面拿掉了❌)。**放在简历上的项目需要随你所面试的岗位不同而不断调整,而不是"one size fits all"的**。 18 | 19 | 此外,简历上的**项目也不用写的特别详细,要有留白**,这样才能一步一步引导面试官走到你精心准备过、给他挖好的坑里面去,让自己掌握面试的主动权。 20 | 21 | 简历中一些项目的资料我放在[project文件夹](./project/)下了,有兴趣的话可以看一看。 22 | 23 | ## 算法 24 | 25 | 我刷题是三天打鱼两天晒网类型的,集中在面试前突击。到目前为止我刷了快200道LeetCode题,虽然比不上那些动辄800+的大佬,但是感觉面试已经差不多够用了(要是面试官非得出不常见的难题,那只好自认倒霉了😇)。 26 | 27 | Leetcode特别推荐几个题集: 28 | 29 | 1. [剑指offer](https://leetcode.cn/studyplan/coding-interviews/)(相当的经典,强烈推荐) 30 | 2. [LeetCode 热题 100](https://leetcode.cn/studyplan/top-100-liked/)(经常会考到) 31 | 3. [代码随想录](https://programmercarl.com)(题量大、题解很详细,推荐跟着做一遍,尤其是DP) 32 | 33 | 除了Leetcode之外,特别推荐一些刷题网站: 34 | 1. [CodeTop企业题库](https://codetop.cc/home)(里面有各个大厂的招聘题,可以看到考察频率) 35 | 2. [HackerRank](https://www.hackerrank.com)(外企面试必备,可以拿来熟悉一下面试环境) 36 | 37 | ## 八股 38 | 39 | 我基本是实战学习...🤡 40 | 41 | 我整理了一些[Modern C++特性](./c++/)和[分布式系统](./system/)的一些资料,有兴趣可以看一下。 42 | 43 | ## 学习资料 44 | 45 | 1. [cppreference](https://zh.cppreference.com/w/首页):学习常见的STL用法看官方文档效率最高) 46 | 2. [hello算法](https://www.hello-algo.com):krahets大神的数据结构教程,通俗易懂 47 | 3. [CS-Notes面试笔记](https://cyc2018.xyz):技术面试必备基础知识、Leetcode、计算机操作系统、计算机网络、系统设计 48 | 4. [jwasham/coding-interview-university](https://github.com/jwasham/coding-interview-university):一个美国老哥从零开始准备大厂面试的历程,包括学习计划和相关的学习资料 49 | 5. [ByteByteGoHq/system-design-101](https://github.com/ByteByteGoHq/system-design-101):系统设计题学习资料 50 | 6. [karanpratapsingh/system-design](https://github.com/karanpratapsingh/system-design):系统设计题学习资料 51 | 52 | ## 面经 53 | 54 | 随缘整理了一些笔试题/面经,可以作为参考 55 | 56 | | 企业 | 岗位 | 面试流程 | 结果 | 57 | | ------ | -------------------- | ------------------------------------------------ | -------- | 58 | | 字节 | 系统工程实习生 | [三轮技术面](./interview/ByteDance.md) | Reject😭 | 59 | | 九坤 | Kubernetes开发实习生 | [一轮笔试](./interview/Ubiquant.md)(等待后续...) | Waiting🤔️ | 60 | | Intel | BigDL-LLM组实习生 | [两轮技术面](./interview/Intel.md) | Offer😋 | 61 | | RisingWave | 数据库内核开发实习生 | [一轮技术面](./interview/RisingWave.md) | Reject😭 | 62 | | BondiTech | 基础架构实习生 | - - - | Offer😋 | 63 | | GSoC | Kubeflow Community | [Proposal](./interview/Proposal%20for%20GSoC%202024.pdf) | Offer😋 | 64 | | LFX Mentorship | KubeEdge Commnity | - - - | Offer😋 | 65 | | Databend | Cloud开发 | [两轮技术面](./interview/Databend.md) | Offer😋 | 66 | 67 | ## 其它说明 68 | 69 | 如果有什么好的建议或者是发现了一些错误的地方,欢迎提issue;如果内容有侵权的地方,请随时联系我删除 70 | 71 | 本仓库下的所有内容遵循[MIT 3.0 License](./LICENSE)开源协议 72 | -------------------------------------------------------------------------------- /c++/C++11函数声明和关键字.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Electronic-Waste/My-Job-Hunting/f21cd77a90dc5fe72da51bc2a6824b40039fd6cd/c++/C++11函数声明和关键字.pdf -------------------------------------------------------------------------------- /c++/C++17新特性std__optional.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Electronic-Waste/My-Job-Hunting/f21cd77a90dc5fe72da51bc2a6824b40039fd6cd/c++/C++17新特性std__optional.pdf -------------------------------------------------------------------------------- /c++/C++17新特性std__string_view.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Electronic-Waste/My-Job-Hunting/f21cd77a90dc5fe72da51bc2a6824b40039fd6cd/c++/C++17新特性std__string_view.pdf -------------------------------------------------------------------------------- /c++/Lambda表达式.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Electronic-Waste/My-Job-Hunting/f21cd77a90dc5fe72da51bc2a6824b40039fd6cd/c++/Lambda表达式.pdf -------------------------------------------------------------------------------- /c++/Modern C++风格类型转换.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Electronic-Waste/My-Job-Hunting/f21cd77a90dc5fe72da51bc2a6824b40039fd6cd/c++/Modern C++风格类型转换.pdf -------------------------------------------------------------------------------- /c++/智能指针.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Electronic-Waste/My-Job-Hunting/f21cd77a90dc5fe72da51bc2a6824b40039fd6cd/c++/智能指针.pdf -------------------------------------------------------------------------------- /c++/深拷贝浅拷贝.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Electronic-Waste/My-Job-Hunting/f21cd77a90dc5fe72da51bc2a6824b40039fd6cd/c++/深拷贝浅拷贝.pdf -------------------------------------------------------------------------------- /interview/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Electronic-Waste/My-Job-Hunting/f21cd77a90dc5fe72da51bc2a6824b40039fd6cd/interview/.DS_Store -------------------------------------------------------------------------------- /interview/ByteDance.md: -------------------------------------------------------------------------------- 1 | # ByteDance 2 | 3 | ## 一面 4 | 5 | 首先正常自我介绍 6 | 7 | 面试官让我详细介绍Minik8s项目,我比较轻松的handle住(印象分++) 8 | 9 | Q:K8s有哪些组件? 10 | 11 | Q:介绍一下输入域名之后解析到各个Pod上的过程 12 | 13 | Q:Controller Manager干嘛用的? 14 | 15 | Q:有没有看过什么开源项目? 16 | 17 | Q:使用kubectl部署Deployment的过程? 18 | 19 | Q:容器的核心技术? 20 | 21 | Q:有哪几个比较常用的Namespace? 22 | 23 | Q:Minik8s和K8s有什么差别,为什么要再写一个? 24 | 25 | 26 | 27 | 然后是算法题环节: 28 | 29 | Leetcode25. K个一组翻转链表(Hard) 30 | 31 | 然后我寄了...瞎写,结果写错了... 32 | 33 | 34 | 35 | 之后还有OS和计网的问题: 36 | 37 | Q:常见的网络虚拟化技术? 38 | 39 | Q:Https和TLS的区别? 40 | 41 | Q:常见的进程间通信的机制(深追共享内存)? 42 | 43 | Q:启动一个TCP Server所用到的系统调用? 44 | 45 | Q:什么是Syscall? 46 | 47 | Q:进程&线程&协程的区别? 48 | 49 | Q:TCP/IP四层模型中中应用层的协议有哪些? 50 | 51 | 52 | 53 | 首先非常成功地把面试官引导到了相对熟悉的k8s区域,让面试官问了很多和k8s相关的问题,好感度++ 54 | 55 | 同时这也稍微掩盖了一些算法题没做出来的瑕疵,一面最终顺利通过... 56 | 57 | 问题是,计网这一块的漏洞实在太大,很多东西问出来完全不知道,只能口胡...(幸亏问的东西还能搭一点边) 58 | 59 | 还有算法这一块,刷题的量还是太少,第一次直播做题也让人压力很大...任重而道远... 60 | 61 | 62 | 63 | ## 二面 64 | 65 | 一开始面试官让我介绍自己擅长的三种领域... 66 | 67 | 我:要不我直接自我介绍吧 68 | 69 | 面试官:啊~ 行,穿插着讲一讲吧 70 | 71 | 我:blabla(和一面一样,将三个领域分为C/C++, Golang, Web开发) 72 | 73 | 面试官:你对哪个方向最感兴趣? 74 | 75 | 我:K8s相关的开发&OS底层的开发,Web开发的话不是非常有兴趣 76 | 77 | 面试官:这些东西我们组都有在做的 78 | 79 | 我:那挺好(内心os:看来我选对了地方) 80 | 81 | 开始提问: 82 | 83 | Q:虚拟机和容器有什么区别? 84 | 85 | Q:K8s有哪些组件,它们各自的作用是什么? 86 | 87 | Q:进程和线程的区别? 88 | 89 | Q:什么是中断的上半部和下半部? 90 | 91 | Q:Spinlock和Mutex的区别? 92 | 93 | 94 | 95 | 然后面试官问了问我毕业时间,实习时间的打算,还问了大四有什么课以及毕业论文的情况 96 | 97 | 最后我追问面试官是不是二面过了,他说从他的角度看,在技术上是过关了,HR可能还会有一些考量,让我等后续通知 98 | 99 | 100 | 101 | ## 三面 102 | 103 | 面试官上来要求进行自我介绍,我balabala介绍了一通 104 | 105 | 然后开始对着简历提问 106 | 107 | Q:在做Minik8s项目的时候,你们是怎么进行分工与合作的? 108 | 109 | Q:听过分布式锁吗?(我:没有)那讲一讲你对锁的一些理解吧 110 | 111 | Q:不同的锁分别在什么场景下应用? 112 | 113 | Q:讲一讲特权级切换的时候发生了什么 114 | 115 | Q:物理内存分配中,Buddy System里面主要的数据结构是什么,起到什么作用? 116 | 117 | Q:讲一讲内核启动的过程,从第一行代码开始 118 | 119 | Q:为什么启动的时候是一个CPU先启动,然后再由这个CPU去初始化其它的CPU,不能同时启动吗? 120 | 121 | Q:做完Chcore项目之后你有什么收获吗?(接着对这个项目的背景进行了一些追加提问) 122 | 123 | Q:内核中的SD Card Driver的工作原理是怎么样的? 124 | 125 | Q:SD Card Driver向操作系统提供了什么接口?(接着追问编写SD Card Driver中我们做了什么,我如实回答) 126 | 127 | Q:SD Card Driver读取数据是按byte读还是按block读的? 128 | 129 | Q:Linux常用操作熟悉吗?(我:还算熟悉吧)现在比如说出现了网速特别慢的问题,你打算怎么调试? 130 | 131 | 132 | 133 | 面试官切到代码题 134 | 135 | Q:C++里面const变量的值能否通过一个如下的指针(普通的指针)修改? 136 | 137 | 我答不能修改(貌似错了),面试官追问为什么不能修改,我说编译过程中const应该被放到只读区域了,不能修改... 138 | 139 | 面试官追问ELF文件格式,我勉强说了几个,又问`.bss`是干嘛用的,我答出来了 140 | 141 | Q:快速判断一个机器是big endian或little endian 142 | 143 | 144 | 145 | OS相关的如特权级切换、内核启动以及物理内存分配并不是非常熟悉,需要加强 146 | 147 | SD Card Driver什么的既然完全不熟悉,就不应该去强调,不能给面试官问到的机会 148 | 149 | Linux常用操作感觉也需要好好加强一下 150 | 151 | C++相关的八股文也需要好好看一下 152 | 153 | 这一轮的面试官水平很高,而且应该是做OS底层优化的工程师,问到的问题完全不和容器/K8s搭边,一直怼着OS相关的东西问,把我问得极其难受,漏洞百出。我发现不仅仅是非常超纲的SD Card Driver我答不上来,就连老师讲过的特权级切换、内核代码启动、物理内存分配我都答得不是很好。基本功不牢靠,真的是要地动山摇... -------------------------------------------------------------------------------- /interview/Databend.md: -------------------------------------------------------------------------------- 1 | # Databend面经 2 | 3 | ## 一面 4 | 5 | 自我介绍 6 | 7 | 问:Kubeflow Katib是做什么的? 8 | 9 | 答:Hypermeter tuning & NAS Search,然后讲了讲整个Kubeflow的Workflow... 10 | 11 | 问:最近那个项目在做什么? 12 | 13 | 我:(给他看Github Issue)云边场景下的AI框架中Volcano集成(然后转Google Doc)介绍Proposal 14 | 15 | 问:怎么和社区人员交流的? 16 | 17 | 我:(给他看KubeEdge Community Meeting文档)加Agenda,然后收集社区反馈 18 | 19 | 问:毕设项目中的CNI是怎么写的? 20 | 21 | 我:让Cilium完成IP分配、创建eth0等工作,我们写的CNI将veth pair一端插到Ovs网桥上,另外一端插到Pod的网络命名空间中,通过更改Ovs的流表来更改Pod之间的拓扑链接关系 22 | 23 | 问:写的CNI的具体流程? 24 | 25 | 我:主要是`cmdAdd`和`cmdDel`,分别完成Veth的增删操作 26 | 27 | 追问:有没有Route修改操作? 28 | 29 | 我:在我们的场景中没有,我们的路由由容器中的frr组建配置,支持ospf等路由协议,这和我们的业务场景有关 30 | 31 | 问:在量化用的是什么数据库?怎么搭建的? 32 | 33 | 我:用的是ClickHouse,然后讲了Kubernetes + ClickHouse Operator + ClickHouse + ZooKeeper,三主三从设计,从节点上做sharding,保证有一台机器故障之后仍然可以正常运行 34 | 35 | 追问:SSD怎么做RAID的? 36 | 37 | 我:甩给了运维,这是他们的本职工作,不能抢别人饭碗啊... 38 | 39 | 问:下面这段代码有什么问题? 40 | 41 | ```Golang 42 | func main() { 43 | ch := make(chan int) 44 | ch <- 1 45 | fmt.Println(ch) 46 | } 47 | // 这段代码哪里有问题? 48 | ``` 49 | 50 | 1. 没有close channel,如果没有close的话会阻塞住 51 | 2. Channel buffer没有设置大小,会导致线程阻塞(问题找到了,但是原因说不出来) 52 | 53 | 追问:平时开发的时候怎么检测有没有死锁? 54 | 55 | 我:我不知道啊,没用过(面试官说用race工具检测) 56 | 57 | 反问:公司主要做哪些产品? 58 | 59 | 反问:实习生进去之后干什么? 60 | 61 | 反问:公司产品的技术架构,是K8s+Databend吗? 62 | 63 | 反问:对面试的评价,我有哪些需要改进的地方? 64 | 65 | 66 | 67 | ## 二面 68 | 69 | 自我介绍(先用Github震场,然后实习/开源猛猛讲,面试官发出满意的声音) 70 | 71 | 问:怎么走上云原生这条路的? 72 | 73 | 我:说来话长,大三下Minik8s->暑期实验室实习->KubeCon 2023 Shanghai->毕设->量化实习->GSoC->LFX 74 | 75 | 问:你平时是怎么写proposal的?觉得最重要的是什么? 76 | 77 | 我:(打开Google Doc共享文档)首先,BackGround很重要,需要让即使不做这个方向的社区人员也能够听明白。然后,最好是有一张Workflow图,最好能说明现在做的和之前的方案有哪些区别,力求清晰明了。之后,写一些详细的实现方案,最好能把实现的逻辑在编码之前全都写出来。最后给他们看看(预期的)前后效果对比,放出结果,写一些user story,给他们直观的印象。(还展示了一下GSoC PPT,blabla聊了一大堆,问了他们内部的协作方式) 78 | 79 | 问:你觉得在过去的实习经历中,遇到过最棘手的事情是什么? 80 | 81 | 我:弄清楚用户需求和与人沟通:用户需求举了在邦戴搭数据库的例子,说好好思考能节省很多时间;沟通方面举了开源跨国协作的例子,顶着8小时时差,异步沟通对信息传递的准确性和简洁性有较高的要求 82 | 83 | 问:有没有看过什么比较有意思的论文 84 | 85 | 我:从谷歌的Borg论文和Omega论文扯到云原生,讲了云原生的发展历史和前世今生,发现面试官比我对这方面还感兴趣,没讲完他就打断我,开始大讲特讲,讲完自己的工作经历又激情评论云原生的发展趋势,留我一脸懵逼Orz(技术确实很强的样子) 86 | 87 | 问:(咳咳)下一个问题,你是怎么样学习新技术的,以及是怎么了解最新的趋势的? 88 | 89 | 我:第一个问题,Learning by doing,选一些好的项目做,多多参加开源/实习,另外也会看看书,比方说刚买的这本(举起《分布式机器学习模式》,面试官又发出满意的声音)。第二个问题,可以参加下每年的KubeCon,也可以加入到Community Call里面了解一下社区最近在推的东西 90 | 91 | 反问:用户最看重公司开发的哪些功能? 92 | 93 | 反问:实习生和成员分工的问题,部门架构? 94 | 95 | 反问:公司做了哪些开源工作?实习生有机会参与吗? 96 | 97 | 反问:是不是公司的云部门才是营收部门,数据库部门是成本部门? 98 | 99 | 反问:对面试的评价,我有哪些需要改进的地方?(面试官:没有,我觉得都很好) 100 | 101 | 反问:是不是已经OC了?待遇问题? -------------------------------------------------------------------------------- /interview/Intel.md: -------------------------------------------------------------------------------- 1 | # Intel 2 | 3 | ## 一面 4 | 5 | 首先是自我介绍 6 | 7 | 用腾讯文档写代码——ImmutableArray的insert,delete和operator[]访问操作 8 | 9 | (我一直在问面试官详细的需求,感觉他讲得不是很清楚) 10 | 11 | 介绍一下排序算法,冒泡和快排,复杂度?具体过程?是否稳定? 12 | 13 | TCP三次握手四次挥手的过程? 14 | 15 | 讲一下进程和线程的区别? 16 | 17 | 进程间通讯的机制有哪些? 18 | 19 | 线程间通讯的方式? 20 | 21 | 你有写过多线程程序吗?我:没有,但写过多线程的调度器,开始blabla 22 | 23 | 写多线程程序的时候需要注意些什么? 24 | 25 | 如何避免死锁? 26 | 27 | 反问:工作时间&未来的打算,BigDL组是做什么的,现在和未来的一段时间会做什么? 28 | 29 | 30 | 31 | ## 二面 32 | 33 | 这一次没有自我介绍,直接开面 34 | 35 | E-Bookstore项目中Redis缓存的使用方式 36 | 37 | 如果数据库写入失败了呢,怎么处理? 38 | 39 | 10w并发量的情况下,怎么优化?(不会🤡) 40 | 41 | Kafka的blabla(忘记了, 不会🤡) 42 | 43 | (我:面试官你好,这只是一个课程项目,是为了对这些技术有一个overview的认识,我在最新的简历里面已经拿掉了,我更擅长的是...) 44 | 45 | 进程和线程是什么,区别是什么? 46 | 47 | 页存储中如何实现内存访问? 48 | 49 | 段存储呢? 50 | 51 | 段存储的空间是连续的吗? 52 | 53 | 线程间同步的方式有哪些? 54 | 55 | 解释一下信号量是什么?(一开始我解释成了条件变量,但是后面改回来了,解释得有点磕巴) 56 | 57 | 解释一下散列表是什么? 58 | 59 | 插入的时候有冲突怎么办? 60 | 61 | 开放式寻址会遇到什么问题? 62 | 63 | 开放式寻址和链表式寻址的优劣差别,什么场景下使用? 64 | 65 | 如何对链表进行一些优化? 66 | 67 | 算法题:给定a,b,c容量的三个杯子,没有刻度,怎么取出d升水(已知一定可以取出) 68 | 69 | volatile关键字是什么? 70 | 71 | 使用了volatile关键字之后,编译器会怎么处理? 72 | 73 | 静态库和动态库的差别? 74 | 75 | 静态库和动态库在运行的时候有什么差别?(不会🤡) 76 | 77 | 如果一个程序不知道动态库的位置,怎么使它知道?(不会🤡) 78 | 79 | 你之前对机器学习有过了解吗? 80 | 81 | 机器学习中过拟合的现象是什么? 82 | 83 | 如何解决过拟合? -------------------------------------------------------------------------------- /interview/Proposal for GSoC 2024.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Electronic-Waste/My-Job-Hunting/f21cd77a90dc5fe72da51bc2a6824b40039fd6cd/interview/Proposal for GSoC 2024.pdf -------------------------------------------------------------------------------- /interview/RisingWave.md: -------------------------------------------------------------------------------- 1 | # RisingWave面试 2 | 3 | ## 一面 4 | 5 | 先自我介绍 6 | 7 | 面试官问了Chfs的情况(我:课程的大作业) 8 | 9 | 是怎么从单节点的inode-based fs扩展成基于Raft的分布式fs的? 10 | 11 | 你这个分布式的fs要提供什么样的服务? 12 | 13 | Raft中worker node挂了和leader node挂了分别对服务会有什么影响 14 | 15 | Chfs里单词统计MapReduce是咋实现的? 16 | 17 | Shuffle咋实现的(我:我们就是做了一个toy,根本没考虑) 18 | 19 | 实验室实习做了什么?项目的场景? 20 | 21 | 介绍写的CNI插件的功能和作用 22 | 23 | Pod-to-Pod的网络是怎么走的? 24 | 25 | 项目的场景中负载均衡是如何实现的(我:建立点到点链路,没有负载均衡) 26 | 27 | 手撕算法题:Leetcode #1427 设计浏览器历史记录(撕出来了) 28 | 29 | 反问: 30 | 31 | 1. 工作时间(面试官:Work life balance) 32 | 2. 对这场面试的评价(面试官:项目的表述有些模糊,有些点以后需要深挖) 33 | 34 | 35 | 36 | -------------------------------------------------------------------------------- /interview/Ubiquant.md: -------------------------------------------------------------------------------- 1 | # 九坤笔试 2 | 3 | 题型为25道单选题,12道不定项选择题 4 | 5 | 考察内容包括简单数据结构、docker和k8s相关知识、计算机组成、计算机网络、C++类与继承、Golang&Python语法还有排列组合题 6 | 7 | 数据结构、k8s、计组的题相对来讲会得心运手一些,计网、docker、Golang还有Python题就有些吃力了 8 | 9 | 回忆一些题目: 10 | 11 | - 进程/线程共享堆/栈的不定项选择题 12 | - container中的1号进程被杀死之后会退出吗? 13 | - container之外的和容器相关的进程有哪几个 14 | - 栈的最大深度(给出弹出顺序) 15 | - 判断是否为堆 16 | - k8s的重要组件有哪些 17 | - k8s的infra容器的启动时间 18 | - socket send和recv能不能保证一定收到全部的信息 19 | - RDMA中client和server对操作的感知情况 20 | - 全错位排列 21 | - Golang的数组切片、函数定义以及信号相关题目 22 | - Python的忘记了,完全不会 23 | - for循环+fork,判断最后有多少个进程 24 | - 进程中堆和栈的大小 25 | - C++很多类中有虚继承函数的原因 26 | - 堆是哪一种二叉树的特殊形式? 27 | - 快排最差情况下的时间复杂度 28 | 29 | .... 30 | 31 | Golang的语法得好好关注。docker相关的东西漏了好多,得好好补补。Python和云计算有关系吗... 32 | 33 | 网络编程居然会考socket和RDMA,小小震撼... 34 | -------------------------------------------------------------------------------- /project/Chfs.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Electronic-Waste/My-Job-Hunting/f21cd77a90dc5fe72da51bc2a6824b40039fd6cd/project/Chfs.pdf -------------------------------------------------------------------------------- /project/LSM-DB.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Electronic-Waste/My-Job-Hunting/f21cd77a90dc5fe72da51bc2a6824b40039fd6cd/project/LSM-DB.pdf -------------------------------------------------------------------------------- /project/Tiger Compiler.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Electronic-Waste/My-Job-Hunting/f21cd77a90dc5fe72da51bc2a6824b40039fd6cd/project/Tiger Compiler.pdf -------------------------------------------------------------------------------- /resume/resume.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Electronic-Waste/My-Job-Hunting/f21cd77a90dc5fe72da51bc2a6824b40039fd6cd/resume/resume.png -------------------------------------------------------------------------------- /system/分布式系统.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Electronic-Waste/My-Job-Hunting/f21cd77a90dc5fe72da51bc2a6824b40039fd6cd/system/分布式系统.pdf --------------------------------------------------------------------------------