Files
AOS/skills/interview-prep/references/technical.md
T
Z User e45b68bb8b feat: IMAP mail sync with thread-to-contact matching (PRD §6.1)
Real IMAP connection via imapflow library:
- Connects to IMAP server (IMAPFlow, TLS on port 993)
- Fetches recent messages (configurable limit, default 20)
- Extracts: from, fromEmail, subject, date, snippet (200 chars)
- Thread-to-contact matching (PRD §6.1):
  1. Match sender email against persons table
  2. If no person match, extract domain and match against company.website
  3. Returns matchedCompany + matchedPerson for each email
- Audit-logged (action: crm.mailsync:imap)
- Zod validated (host, port, user, password, folder, limit)
- 502 on IMAP connection failure with detail
- 400 on validation failure

Tested: invalid creds → 502 'IMAP connection failed', missing host → 400
2026-10-27 22:50:50 +00:00

101 lines
4.0 KiB
Markdown
Executable File
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 技术面题库
适用:研发 / 算法 / 数据 / DevOps 岗位的 1~2 面(技术轮)。
按职级分层:
- **初级(0-3 年)**:基础八股 + 简单算法 + 项目细节
- **中级(3-5 年)**:系统设计 + 复杂场景题 + 项目深度追问
- **高级(5+ 年)**:架构权衡 + 跨团队问题 + 业务理解
## 一、后端 / 服务端
### 基础八股(每家都问)
1. HTTP / HTTPS / TLS 流程,session vs cookie vs token
2. TCP 三握四挥,为什么是 4 次挥手
3. MySQL 索引底层(B+ 树)、何时失效、最左前缀
4. MySQL 事务隔离级别 + 各自解决什么问题
5. Redis 持久化(RDB / AOF)+ 主从 + 哨兵 + 集群
6. Redis 缓存击穿 / 穿透 / 雪崩 怎么解
7. 分布式锁 3 种实现(Redis / Zookeeper / 数据库)+ 各自坑
8. Kafka 怎么保证消息不丢、不重复、有序
9. JVM 内存模型 + GC(Java 岗)/ Goroutine 调度(Go 岗)
10. 一致性哈希、CAP、BASE、Raft / Paxos 简述
### 系统设计高频
- 设计一个秒杀系统(QPS 10w)
- 设计一个短链服务(生成 / 重定向 / 统计)
- 设计一个分布式 ID 生成器
- 设计微博 feed 流(推 / 拉 / 推拉结合)
- 设计一个限流器(令牌桶 / 漏桶 / 滑动窗口)
### 系统设计回答框架
```
1. 澄清需求(问清 QPS、读写比、数据量、SLA)
2. 估容量(QPS × 平均请求大小 = 带宽;数据量 × 时间 = 存储)
3. 高层架构(接入层 → 业务层 → 存储层 → 数据流)
4. 关键模块深挖(讲清楚选型为什么)
5. 扩展性 / 高可用 / 容灾
6. 主动指出 trade-off
```
## 二、前端
1. 浏览器渲染流程(DNS → TCP → TLS → HTTP → HTML 解析 → 布局 → 绘制)
2. 事件循环 + 微任务 / 宏任务
3. 闭包、原型链、this 绑定
4. React / Vue 响应式原理
5. 性能优化(FCP / LCP / CLS 指标 + 实操)
6. SSR vs CSR vs SSG,何时用哪个
7. 跨域方案(CORS / JSONP / 反向代理)
8. webpack / vite 区别 + 原理
## 三、算法 / 机器学习
### 基础
1. 偏差 / 方差,过拟合怎么解
2. L1 / L2 正则的区别
3. 随机森林 vs GBDT vs XGBoost
4. 梯度消失 / 爆炸 + 解决(BatchNorm / 残差 / 激活函数)
5. Attention 机制讲清,Transformer 与 RNN 对比
6. 样本不平衡处理(采样 / 类权重 / Focal Loss)
7. 模型评估:准确率、精确率、召回率、AUC、F1,何时用哪个
### LLM / GenAI 方向(2024+ 热门)
1. SFT vs RLHF vs DPO,原理 + 何时用
2. RAG 完整 pipeline:分块策略、Embedding 选型、检索融合、Reranker
3. Agent 的 tool use / planning / memory,与单 LLM 的区别
4. 长上下文(YARN / RoPE 缩放、Context window 扩展)
5. 推理优化:KV cache、speculative decoding、量化
6. 大模型评估:benchmark、人工评估、LLM-as-Judge 各自坑
### 项目深挖(每个面试官必问)
- 你这个模型为什么选 ___ 而不是 ___
- 数据是怎么标注 / 清洗的,量级
- 训练用了什么硬件、跑了多久、超参怎么调
- 上线后效果怎么评估,与基线对比
- 失败 / bug 的 case,怎么 debug
## 四、数据 / 数仓 / 分析
### SQL(必考)
- 行转列 / 列转行 / 透视
- 窗口函数(rank / dense_rank / lead / lag)
- 计算 7 日 / 30 日活跃用户
- 同 user 连续登录天数
- 留存率 / 漏斗 / 同期群分析
- 性能优化(索引、explain、分区、避免子查询)
### 业务题
- 给你一个业务场景,让你设计指标体系
- DAU 跌了 5%,怎么排查
- 设计一个 A/B 测试(样本量计算、显著性、停损)
- 用户分层模型(RFM / 生命周期)
## 五、技术面回答原则
1. **澄清问题再答**:模糊的题先问 1~2 个澄清问题
2. **结构化输出**:分点 / 分模块讲,不要意识流
3. **trade-off 思维**:选 A 而不选 B 时,主动说"因为 ___"
4. **诚实**:不会的题说"这个我没研究过,但根据我对 X 的理解,可能可以这样想 ___"
5. **画图 / 写代码**:白板题写代码先讲思路,再写,最后跑测试用例