交叉答辩没有观众。
只在创新中心联合答辩室。
几组项目成员轮流进。
顾承安。
两名高年级项目负责人。
还有一名负责记录的老师助理。
问题和回答都会进入项目内部记录。
不公开。
——
林辰和苏晚晴坐在双负责人席。
公开身份仍然很清楚。
苏晚晴:
需求线。
林辰:
技术线。
桌前各有一个麦克风。
没有耳机。
手机静音放到一旁。
正式开始前。
两个人各自确认身体正常。
苏晚晴身体无低血糖症状。
林辰身体右脚踝无痛。
玉佩常温。
无新的共感异常。
然后不再讨论这些。
——
顾承安先看向“苏晚晴”。
“你讲林辰的模块。”
林辰道:
“目前技术侧完成的是最小信息卡原型。”
“读取本地结构化测试数据。”
“按已确认字段生成信息卡。”
“异常字段不自动补全。”
“单独进入待确认状态。”
顾承安问:
“你写过代码吗?”
“这次原型没有。”
回答很干脆。
——
“那你为什么能讲?”
“我看过项目允许共享的技术说明和阶段结果。”
“另外。”
林辰停了一下。
“我本身有基础编程能力。”
这也是现在的真实能力。
不能因为公开身份是苏晚晴。
就假装自己完全看不懂代码。
顾承安看他。
“能力到哪?”
“能理解当前这个基础原型的处理逻辑。”
“但没有参与这一版实现。”
——
旁边另一名负责人问:
“费用字段出现‘免费’时。”
“为什么不直接转0?”
林辰没有看苏晚晴。
“因为当前字段规范只允许数值或未说明。”
“‘免费’是非规范文本。”
“业务含义上它可能等于0。”
“但在来源没统一之前。”
“技术侧不能假设所有非规范文本都能安全映射。”
“如果以后出现‘免报名费但有材料费’。”
“或者其他文本。”
“硬编码会把不同情况吃掉。”
——
“那这部分是谁决定的?”
问题马上跟上。
林辰道:
“异常处理实现由林辰完成。”
“需求侧原则是。”
“未知信息不能被自动解释成确定答案。”
“两个判断在这里对上了。”
“你参与写处理逻辑了吗?”
“没有。”
“你参与确定字段规范了吗?”
“需求侧参与提出字段含义需要明确。”
“具体数据校验由技术侧落地。”
——
顾承安低头记了一笔。
没有说对错。
“换。”
这次看向“林辰”。
也就是苏晚晴。
“讲需求侧。”
——
苏晚晴道:
“需求线目前没有确认要做完整推荐系统。”
“访谈能支持的阶段结论是。”
“时间、设备、资格、退出等事实信息结构化可能有价值。”
“但价值型推荐存在明显分歧。”
“所以技术原型里的推荐指数被删除。”
旁边负责人问:
“哪个受访者反对推荐?”
苏晚晴没有抢答。
“我不知道具体受访者。”
——
对方抬眼。
“你不是很懂需求线?”
“我知道的是允许跨线共享的去标识化结论。”
苏晚晴道。
“原始访谈由需求负责人保存。”
“我没有看完整记录。”
“那你凭什么理解这个结论?”
“因为技术侧收到的接口要求里明确写了。”
“当前不做价值推荐。”
“另外。”
她想了下。
“这个判断本身也能从风险上理解。”
“如果用户对‘系统替我判断适合什么’有分歧。”
“证据不够时。”
“就不应该先做成默认功能。”
——
顾承安问:
“这条是你提的吗?”
“不是。”
“谁提的?”
“需求侧访谈后形成。”
“你做了什么?”
“我删除了原型里临时存在的推荐指数字段。”
“因为它没有已确认需求依据。”
——
记录人员敲键盘。
答辩室里很安静。
这一问一答。
真正考的已经不是会不会。
而是:
会。
是谁会的。
懂。
为什么懂。
做。
具体做了哪一步。
——
顾承安又问林辰:
“如果费用字段规则改了。”
“允许字符串‘免费’。”
“你觉得技术侧应该怎么改?”
林辰想了两秒。
“先别改代码。”
“先把允许值定义清楚。”
“如果只有‘免费’一种合法文本。”
“可以做显式映射。”
“如果允许多种文本。”
“最好别继续让同一个字段同时承担数值和描述。”
“具体实现需要技术负责人决定。”
“你自己不能决定?”
“我能给建议。”
林辰道。
“但这版代码不是我负责。”
——
“林辰。”
顾承安转向苏晚晴。
“如果需求侧明天要求加一个‘适合度评分’。”
“你怎么办?”
“先要规则。”
“什么规则?”
“评分依据是什么。”
“数据来源是什么。”
“谁承担误判后果。”
“用户能不能关闭。”
苏晚晴说到这里。
停一下。
“如果需求侧只有一句‘大家可能想要’。”
“我不会直接做。”
——
顾承安问:
“你这是技术判断还是需求判断?”
苏晚晴也停了。
这个问题很刁。
因为她刚才那几句。
已经明显越过纯技术。
“都有。”
她最后说。
“技术侧需要知道输入和责任边界。”
“但‘用户需不需要’。”
“最终还是需求侧要拿证据。”
“我可以拒绝一个定义不清的开发任务。”
“不能替需求侧宣布用户不需要。”
——
顾承安抬头。
第一次明显多看了她两秒。
“可以。”
没有夸。
又转向林辰。
“你呢?”
“如果技术侧说。”
“某个你很想要的功能实现成本太高。”
“你怎么判断是真高。”
“还是他嫌麻烦?”
林辰道:
“先让技术侧说限制。”
“时间。”
“环境。”
“数据。”
“维护成本。”
“如果我听不懂。”
“找第三方技术负责人复核。”
“不能因为我信林辰。”
“就把‘他说难’直接当最终结论。”
——
苏晚晴侧头看了他一眼。
林辰没看回去。
正式答辩。
不需要眼神鼓励。
——
后半段。
问题越来越交叉。
“需求线为什么保留退出字段?”
“技术线怎么展示‘未说明’?”
“技术异常为什么不直接隐藏?”
“访谈意见冲突时为什么不做多数投票?”
两个人几乎都能解释。
但每一次。
都主动补上归属。
“这条访谈结论由需求线形成。”
“这段处理由技术线实现。”
“我理解原因,但没有参与原始记录。”
“我提出过接口问题,但最终实现不是我写的。”
——
答到最后。
一名高年级负责人忍不住问:
“你们平时是不是每天都在一起对工作?”
林辰道:
“不同校区。”
“不是每天见面。”
“那为什么这么熟?”
“高中就认识。”
苏晚晴说。
“长期互相教过。”
“项目里也按规定节点交换结论。”
这个答案。
全部是真话。
又没有多泄露一层。
——
顾承安没有追私人关系。
只问:
“长期互相教。”
“所以现在对方的方法。”
“已经变成你们自己的了?”
两个人都没立刻答。
这个问题。
比“谁写的”更难。
——
林辰先说:
“有一部分是。”
“比如?”
“我现在做访谈。”
“会主动问技术上有没有信息缺口。”
“这不是只有林辰提醒我才会做。”
苏晚晴接:
“我写程序的时候。”
“也会先问。”
“空值到底代表什么。”
“系统有没有资格替人补答案。”
“这也不是苏晚晴在旁边才会想。”
——
顾承安道:
“所以你们不只是补位。”
没人回应。
他也没要求回答。
只是把这一句记进内部表。
——
答辩结束。
两个人起身。
顾承安却叫住他们。
“最后一个提醒。”
林辰回头。
“你们现在合作效率高。”
“一个很大原因。”
“是很多事情不用说完。”
“对方就懂。”
“这在两个人规模里很好用。”
——
“但如果项目扩大。”
顾承安道。
“加第三个。”
“第四个。”
“或者有一天。”
“你们不在同一组。”
“别人听不懂你们的半句话。”
“怎么办?”
答辩室里安静。
顾承安把两份记录合上。
“合作不能只靠默契。”