客户真正想要的前端开发者(不是 Clean Code)
Source: Dev.to
我吃了苦头才学会这点。
客户对话
情景: 客户要求您在他们的网站上添加一个功能。
您深入代码,优雅地实现,并给他们发信息。
现实: 大多数客户并不技术。他们不了解 React hooks。他们不在乎您的组件架构。他们只想知道:
“你添加功能了吗?它能用吗?什么时候能看到?”
他们真正想听到的:
- 简单。
- 清晰。
- 可操作。
提示: 将技术细节保留在文档中,或在他们特别询问时提供。在日常沟通中,像人与人交流一样,而不是开发者对代码审查机器人的对话。
常见客户需求
客户会提出以下类型的需求:
- 技术上可行,但极其耗时。
- 会损害其网站的糟糕想法。
- 已经存在的功能,但他们不知道如何使用。
- 完全超出原始范围。
你的直觉可能是对所有请求都说**“是”**,以取悦客户。
但:客户更尊重诚实而非盲目顺从。
示例
请求: “在首页添加 17 种不同的动画,因为需要更炫。”
你可以直接去做——花数小时实现动画,这会让网站变慢、难以维护,老实说,还会让用户觉得有点烦。
或者你可以这样说:
“我理解您希望页面充满活力的想法。不过,添加如此多的动画会影响加载速度和可维护性。我建议改用少量细腻的过渡效果,这同样能让网站呈现出精致感,却不会带来性能损失。”
注意到的变化:
- 你并没有直接说“否”。
- 你解释了该想法可能行不通的原因。
- 你提供了替代方案。
- 你将自己定位为关心他们成功的人,而不仅仅是为了拿酬劳。
要点: 那些只想让你无条件执行指令的客户本身就不太理想。好的客户会欣赏你在尊重的前提下提出反对并提供更好的解决方案。
通信频率很重要
你接手一个项目,估计两周时间,却在第13天保持沉默,直到第14天才交付全部内容。
- 你的看法: 你按时交付了。
- 客户的看法: 你几乎消失了整整两周,他们不知道你是否在工作,感到压力山大,甚至怀疑你把他们抛在一边。
即使工作质量很棒,这种焦虑也会让体验变得糟糕。
简单、有效的更新
Hey! Quick update: I've finished the homepage layout and navigation.
Working on the contact form now. Should have that done by tomorrow.
Everything's on track.
只需 30 秒即可写完,却能彻底改变客户的感受。
项目结束时,他们会记得整个过程是多么顺畅、无压力,即使期间有一些波折。
预见未表达的需求
客户往往不知道自己不知道的事。他们常常默认以下期望已“包含”在内:
- 能自行更新内容
- 移动端优化
- 快速加载时间
- 可用的联系表单
- 安全措施
- 备份系统
如果你只按照他们的要求来构建,他们可能在上线后发现网站在移动端无法使用,并把责任推给你:
“你怎么不提前告诉我它在手机上不能用?”
主动指导
“嘿,提醒一下:我注意到需求中没有提到移动端优化。现在大约有 70 % 的网页流量来自手机,我强烈建议确保网站在移动端表现良好。如果你愿意,我可以把这项工作加入项目中。”
现在你已经:
- 展示了专业能力
- 防止了未来的问题
- 有可能扩大项目范围(以及你的报酬)
- 将自己定位为关心客户成功的人
客户会记住这些,并向他人传播那些“懂你需求”的开发者的口碑。
永不沉默
客户给你发了一条信息。你看到了,但正忙于调试,于是想:“等我搞完再回复。”
结果:他们感到恼火,不是因为你没能立刻解决问题,而是因为他们在想你是否根本就看到他们的消息。
解决办法:立即确认,稍后解决
客户: “嘿,联系表单坏了。能检查一下吗?”
你(立即): “刚看到!现在正在查看。一个小时内会给你更新。”
- 你已经看到他们的消息。
- 你正在处理。
- 他们知道何时会收到更新。
即使修复需要三小时,他们也不会焦虑,因为你已经沟通了。
管理对优先级的期望
大多数开发者同时处理多个项目(一次处理 3–4 个站点是常态)。
如果客户询问时间表,你说:“我现在还有几个其他项目在进行,所以可能会花更长时间”,他们听到的是:“你的项目不是我的优先事项。”
相反,可以这样说:
“我致力于为您的站点交付高质量的工作。根据项目范围,我估计大约需要两周时间。我会在整个过程中随时向您更新进展。”
结果: 小的语言变化 → 对感知的巨大差异。
定价的真实价值
常见错误:根据你认为客户愿意支付的金额来定价,而不是依据工作实际价值。
“我只收 100 美元做这个网站,这样就能拿下客户。”
然后你在项目上花了 40 小时 → 2.50 美元/小时。你用熟练的劳动换取了不熟练的工资。
关键点: 客户甚至不欣赏这个低价。他们要么认为:
- “如果这么便宜,工作一定不太好”,或者
- 利用机会,要求无休止的修改,因为“它并不贵”。
关键要点
- 说人话,不是代码。 保持信息简洁、清晰且可操作。
- 诚实而非仅仅合规。 解释请求可能存在的问题并提供替代方案。
- 频繁沟通。 即使是简短的状态更新也能显著提升客户的感受。
- 预见潜在需求。 主动建议移动端优化、安全、备份等。
- 永不沉默。 立即确认收到信息。
- 积极表述优先级。 强调承诺与透明,而不是说“我在别处很忙”。
- 按价值定价,而非恐吓。 收取工作应有的费用;客户会尊重价格和质量。
运用这些软技能,你会发现收款比任何完美的代码行都要容易得多。
定价 vs. 价值
“低价会吸引低端客户。”
客户真正想要的是 与他们获得的价值相匹配的合理定价。
如果你为他们打造一个能够帮助他们获取更多客户、提升销售额并发展业务的网站,这远远超过 100 美元的价值。
- 价格应基于价值,而非工时。
当客户说“太贵了”时,不要立刻降价。相反先提问:
- “这个项目的预算是多少?”
- “您希望网站带来哪些成果?”
- “如果没有专业网站会怎样?”
有时他们真的负担不起,这也没关系。
但很多时候,他们只需要了解 为什么会有这样的费用。一旦他们看到价值,价格就不再是主要问题。
客户真正想要的
客户并不想要你被微观管理——他们希望相信你已经把事情处理好了。这意味着:
- 如果出现故障,你要修复它(或立即告知他们)。
- 如果你发现问题,你要处理它。
- 如果有更好的做法,你要提出建议。
- 如果你犯了错误,你要承担责任并纠正。
客户并不追求完美;他们在乎的是责任感。
我见过开发者失去客户,并不是因为他们犯了错误,而是因为他们找借口。
- “主机慢,这就是网站慢的原因。”
- “你发送的图片太大,这就是它们加载不出来的原因。”
- “你没告诉我需要那个功能,所以我没有实现它。”
也许这些说法在技术上是对的,但听起来像是你在推卸责任而不是解决问题。
更好的回应
“网站加载速度比我预期的慢。我会优化图片,并检查主机是否需要升级。明天会给你更新进展。”
同样的情况,却完全不同的语气。前者让客户觉得你在指责,后者让他们觉得你在处理。
建立信任
在最终,所有的一切都归结于 trust。你可以通过以下方式建立信任:
- 一致的沟通
- 按时交付(或提前)
- 当某事无法实现时保持诚实
- 主动解决问题
- 把他们的项目当作重要的事来对待
你的 code quality 和 technical skills 很重要,但它们只是方程式的一部分。
- 它们决定客户是否会再次雇佣你。
- 是否会向他人推荐你。
- 是否会留下好评或推荐信。
数千名开发者都能写出整洁的代码。让你脱颖而出的是让客户在整个过程中感到自信且无压力。
“轻松”开发者
当你持续提供价值并赢得信任时,客户不再四处寻找最便宜的开发者,也不再把你和其他十个人进行比较。
- 他们只会 雇佣你。
- 并且会一直雇佣你。
这并不是因为你的代码是绝对最好的(虽然它应该足够好),而是因为 和你合作很轻松。在大多数开发者‑客户关系充斥着沟通不畅、错过截止日期和挫败感的世界里,“轻松”具有极高的价值。
成为那个懂得客户需求的开发者。
你的技术能力可以帮你打开大门。
你在与客户沟通方面有什么经验?
如果这对你有帮助
- 保存以备后用。
- 点赞并分享给需要看到这篇文章的开发者朋友!
最初发表于 Medium.