字节跳动 服务端开发 一面详细版面经

手撕2没找到原题,有无牛友见过?

面试官在美国,面了一个小时出点头,体验还不错。八股不太常规,他们用Go但面试官也懂Java,我觉得整体还是有难度的。最后是手撕了两道算法题,都是我没见过的,只能现场发挥。

一、说两句然后自我介绍

二、聊实习经历(10min)

  1. 介绍下实习做了什么
  2. 分布式锁业务场景和实现
  3. Redis多节点还是单节点?
  4. Kafka消息消费的有序性
  5. 什么场景用到局部有序?

三、问技术问题(20min)

  1. Springboot自带了网关,可以监听服务器上的一些端口,那么它使用的网络框架的模型是什么?比如说有一千个请求的connection,那在物理机上的线程模型是怎么样工作去处理这些request的呢?
  2. select/poll/epoll的区别
  3. 那epoll事件驱动的时候,其实触发系统有两种方式,叫边缘触发和水平触发,有了解过这个吗?
  4. MySQL里,当你用select * from table_name where ... 和 select [某些字段] from table_name where ... 的时候,在不同场景下他们的运行效率会有什么区别呢?为什么会这样?
  5. 启动一个Java进程的命令里会指定一些参数,知道哪些JVM参数?比如设置堆栈大小。
  6. 讲一下对GC的了解
  7. G1比CMS优化了什么?
  8. HTTP和HTTPS的区别
  9. 讲下HTTPS的握手过程
  10. HTTPS的Get请求参数是放在query string里面的,那么query里面的请求会被加密吗?(是或否二选一我还答错了

四、手撕算法题

1. 编号1~100号的小朋友围成一个圈,进行循环报数,报到7的小朋友出局,最后剩下来的人编号是多少?

感觉像数学题,反正就硬做就完了。

力扣有个 1823. 找出游戏的获胜,

乍一看感觉这题好像差不多。

2. 给一个数组,里面的元素都是数字,有零有正有负,给一个target值,要找出数组里连续N个数字之和和target最接近且N最小的情况下的N。就是先满足连续N个数字最接近target,同样接近再找N最小,最后返回N。

没找到原题,牛友有没有知道的?

写完还一本正经给面试官讲思路,

回去一复盘才发现出错了,一坨。

五、经典反问环节

  1. 问部门和业务
  2. 说面试感受
  3. 问觉得我怎么样

六、隔一天约二面

#字节跳动##Java##后端##面经##秋招#
全部评论
佬,这是哪个部门,oc了吗
1 回复 分享
发布于 2024-11-14 14:01 福建
Springboot网络模型?
点赞 回复 分享
发布于 2024-12-11 11:29 陕西
不知道这些国际化部门要啥人,除了电商
点赞 回复 分享
发布于 2024-12-02 11:33 美国

相关推荐

主要源于其对高频交易、低延迟系统和复杂算法执行的严苛需求。🎈极致的性能需求高频交易(HFT)的核心:毫秒(甚至微秒)级的延迟差异可能直接决定策略的盈亏。C++通过以下方式实现性能极限:1.直接硬件控制:允许通过指针操作、内存对齐、SIMD指令(如AVX)直接优化CPU和缓存使用。2.零成本抽象:模板元编程和编译期优化避免运行时开销。3. 避免垃圾回收(GC):手动内存管理消除了GC带来的不可预测延迟。4. 对比其他语言:Python/Java等语言因解释执行或GC机制,难以满足高频场景的实时性要求。🎈低延迟系统的构建1. 网络与系统层优化:C++支持,内核旁路(Kernel Bypass):如DPDK技术,绕过操作系统协议栈直接处理网络包。2. 定制化TCP/UDP协议:优化数据传输路径,减少协议解析延迟。3. 原子操作与无锁数据结构:减少多线程竞争导致的等待。4. 硬件级优化:通过C++编写FPGA/GPU的底层逻辑(如CUDA C++),加速特定计算任务(如期权定价)。🎈复杂算法的实时执行1. 计算密集型任务:如蒙特卡洛模拟、实时风险计算、订单簿分析等,依赖C++的高效数值计算能力。2. Eigen库:用于线性代数计算的模板库,编译期生成高度优化的机器码。3. 并行计算:OpenMP、TBB等多线程库结合CPU多核架构,最大化吞吐量。4. 内存效率:通过自定义内存池(Memory Pool)减少动态分配开销,优化缓存局部性(Cache Locality)。🎈对硬件资源的精细控制1. 缓存优化:C++允许开发者显式控制数据布局(如结构体紧凑排列),减少缓存未命中(Cache Miss)。2. 实时性保障:通过`std::chrono`高精度时钟、实时线程优先级设置(如Linux的`SCHED_FIFO`),确保关键任务调度确定性。3. 与硬件协作:例如通过C++编写低延迟网卡(如Mellanox)的驱动逻辑,或直接操作硬件寄存器。在私募量化领域,C++的底层优化能力是构建高性能、低延迟、高可靠性交易系统的核心技术基础。从内存管理到硬件交互,从算法加速到系统级调优,C++提供了其他语言难以替代的灵活性和控制力,使其成为量化公司技术栈中不可动摇的底层支柱。
投递九坤投资等公司8个岗位
点赞 评论 收藏
分享
评论
10
37
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务