blog

Anson's working / exploring footprints 🧙‍♀️

View on GitHub

团队规范

git flow

repo 装上 commitlint,commit message 符合@commitlint/config-conventional 规范

每个 repo 有三个分支:release(线上)main(UAT)分支和 dev(ST)分支。若长期存在其他分支请在 readme 添加分支说明

UAT:部署环境/配置与生产一致,用于上线前的回归

ST:以测试 case 为主

流程:

常规开发:

  1. 从 dev 拉出分支,根据 commit 类型做分支前缀比如 feat/… fix/…
  2. 本地开发
  3. 本地 rebase 远程 dev 分支
  4. 自测(也可提供本地 ip 给他人)
  5. 往 dev 提 pr
  6. code review
  7. ST 提测
  8. 如果提测阶段测试童鞋反馈有 bug,则重复 1-7 的操作。

线上紧急 bug:

  1. 从 main 拉出 hotfix/…分支
  2. 本地开发
  3. 自测
  4. 往 main 提交 pr
  5. code review
  6. UAT 提测
  7. 合并回 dev

发布:

  1. dev 合并进 main,UAT 提测
  2. UAT 测试通过后合并进 release 分支完成发布

类型列表:

  • feat: add new feature
  • fix: fixing bug
  • perf: improving performance
  • test: adding missing tests, refactoring tests; no production code changes
  • build: version update
  • ci: continuous integration
  • docs: updating documentation
  • refactor: refactoring production code
  • style: formatting; no production code change
  • chore: updating config, dependencies or something; no production code change
  • revert: roll back

npm 发包约定

对于发布到 npm 的工具类项目使用以下规范:

版本号:遵循 semver 规范

发布者:

  1. rc 版、正式版通过 main 分支发布到 latest,发布时打上 git tag
  2. next 版、beta 版通过 dev 分支发布到 next,发布时打上 git tag
  3. 开发测试通过 npm link,不发布版本

使用者:

生产环境记得只使用 rc 或者正式版

面试官培养

当到达某个时机,你会被转发这条 wiki,表示即将开始解锁新技能了。

成为新面试官三步:

  1. 旁听面试官面试,面试结束后可以提 Question
  2. 面试官旁听你面试,面试结束后给你 Feedback
  3. 当面试官觉得你准备好独立面试后,会定期分配面试者给你

面试流程主要也是三步,尽量控制时间:

  1. 了解对方背景
  2. coding / debug / QA
  3. 对方提问

你会参与应聘者某项细分技能的考核,技能分类如下:

A.计算机基础(网络、算法、操作系统)、前端基础(CSS、JS)、behavior(潜力、责任心、更重要的是你愿意和他/她共事)


B.性能优化、工程化、复杂问题处理、基础设施建设


C.规范制定、技术选型


工具

远程面试采用视频沟通 + CodeSandbox 在线 coding 的方式,

题目可以自己出,也可以用我们 Coding 题库、QA 题库,

面试过程也是一个学习过程,开始给大家挑选下一个伙伴吧。

tags: cooperation