入职一家不足 20 人的 IT 公司后
背景
在求职过程中,面对多家面试机会,最终选择了一家号称是某互联网大厂旗下子公司的 20 人左右的小团队。当时主要基于两点考虑:一是期望共享大厂的资源,二是连续面试多轮感到疲惫,希望尽快入职。
入职第一天:混乱的开始
入职当天,前台人员着装随意,缺乏正式接待流程。填写表格后等待了较长时间才见到人事。合同签署过程仓促,没有详细的入职介绍或环境配置说明。部门人事简单指引工位并拉入微信群,所谓的'欢迎仪式'显得尴尬且形式化。
开发环境与流程问题
第二天开始工作,领导直接提供 Git 地址并要求两天内熟悉项目并制作 PPT 汇报。当询问测试服务器地址时,得到的回复是'本地搭建',无法保证与线上环境一致。这种架构预感后期会有严重隐患。
致命缺陷:无自动化上线流程
团队四五个人开发,各自测试环境不一致。代码上线完全依赖领导手动操作,缺乏完整的 CI/CD 流程。这导致了一个严重后果:
- 测试环境通过,上线后出现大量 Bug。
- 由于手动操作,经常漏文件或忘记上线。
- 线上出问题需立即回滚,但测试环境无法复现问题。
第一次项目上线从下午五点持续到晚上十点。此外,团队存在不成文的加班规定:定好上线时间的项目,若未完成则全员不得离开。
沟通与管理困境
第三天向领导建议搭建上线流程工具及一致的测试环境,被以'业务忙、没时间'为由拒绝。入职一个月后,发现团队成员背景复杂,多数非科班出身,多为培训班转行。产品经理仅提供文字描述的需求文档,缺乏原型图和 PRD 模板,导致理解偏差。
- 需求模糊:同一段文字不同人理解不同。
- 返工严重:开发完成的产品不符合预期,双方互相推诿,导致项目推翻重做。
离职导火索
最后一次业务上线由测试负责。晚上六点上线,测试要求开发留守待命。期间出现一个数据类型导致的崩溃,修复后继续测试至九点。上线后不久再次报出线上 Bug,原因是脏数据。此时已近凌晨一点,领导多次电话催促未接,最终因处理不及时引发冲突。次日领导质问工作态度,随即派新任务。最终决定发送离职邮件并休完剩余年假。
技术复盘与建议
针对此类小公司的常见技术管理陷阱,建议如下:
1. 基础设施标准化
- 环境一致性:必须确保开发、测试、生产环境的一致性(如 OS、依赖库版本)。使用 Docker 等容器化技术可大幅降低环境差异带来的风险。
- 自动化部署:引入 Jenkins、GitLab CI 等工具实现自动化构建和部署,减少人为失误。
2. 需求管理规范
- 文档先行:强制要求产品输出原型图和高保真设计稿,避免纯文字描述带来的歧义。
- 评审机制:在开发前进行需求评审,确认技术可行性及边界条件。
3. 质量保障体系
- 测试覆盖:建立单元测试和集成测试标准,核心逻辑必须有自动化测试用例。
- 灰度发布:对于重要功能,采用灰度发布策略,先对小部分用户开放,观察稳定性后再全量。
4. 职场风险评估
- 加班文化:面试时需明确询问加班频率及原因,评估是否接受长期无偿加班。
- 技术成长:关注团队是否有技术分享机制,避免陷入重复造轮子的低效循环。
结语
小公司并非不可去,关键在于其技术氛围和管理规范。如果团队缺乏基本的工程化意识,仅靠人力堆砌,不仅难以产出高质量软件,也会严重消耗开发者的职业热情。在选择 Offer 时,应优先考察技术栈的先进性和团队的工程实践水平。


