从头到尾的一个功能
用户看到的界面、背后的接口,以及所需的数据库改动,全部由一人构建并交付,而不是在两人之间交接。这是大多数客户聘请全栈开发工程师时,期待的日常工作内容。
小型产品团队往往没有条件让一位前端专才和一位后端专才在每次改动上都亦步亦趋地协同工作,实际上也并不真正需要如此。这正是许多迪拜早期和小型企业转而在迪拜聘请全栈开发工程师的原因:由一人把一个功能从界面、经过接口、一路带入数据库再返回,中间无需在每个环节交接。对于经常发布新版本的小团队来说,这种速度真正重要,能直接影响产品的迭代节奏。
这个角色最适合一种特定的工作形态:只有一人或极小规模工程团队的产品,代码库还没有大到没有一个人能完整掌握。当团队和产品发展超过这个阶段后,大多数企业最终都会把角色拆分为专属的前端和后端开发工程师,一位优秀的全栈开发工程师会如实说明这一点,而不是坚持自己能无限期覆盖所有工作。
全栈开发工程师的工作成果
覆盖小型产品每一层的工作。
用户看到的界面、背后的接口,以及所需的数据库改动,全部由一人构建并交付,而不是在两人之间交接。这是大多数客户聘请全栈开发工程师时,期待的日常工作内容。
在工作量还不足以拆分给多位专才之前,端到端完成新产品核心功能的可运行建设。许多创始人正是在这个阶段,首次聘请全栈开发工程师。
为团队自用而快速搭建的简单系统,交付速度比更大规模、更专业化的建设更重要。
一个表现在界面上、实际却是数据库或接口引起的故障,无需等待第二位开发人员即可诊断并修复。
支付服务商、邮件服务和其他工具同时接入界面和后端,因为两端通常需要同步改动。
基于真实用户反馈进行快速、可用的改动,从想法到功能上线的快速循环,比团队规模更重要。
关键技能
真正的广度,而不是被拉得很薄的一层知识。
| 技能或工具 | 达标标准 | 重要原因 |
|---|---|---|
| 前端框架 | 对 React、Vue.js 或类似框架有真实、可实际操作的掌握,而不只是够抄一份教程 | 用户实际评判产品的依据正是界面 |
| 后端框架 | 能够熟练地在 Node.js 或 Django 等框架上构建和扩展接口及其数据库 | 薄弱的后端技能最终会体现为脆弱、难以扩展的产品 |
| 对范围的判断力 | 知道一个功能何时真的超出一人能力范围,并如实说明 | 从不寻求帮助的人,比技能范围较窄的人风险更大 |
| 基础部署知识 | 能够独立把改动从本地环境部署到生产环境,无需他人搀扶 | 小团队很少配有专门负责部署的独立人员 |
| 通读整个代码库 | 能在同一次工作中,自如地在界面代码和服务器代码之间切换 | 这种上下文切换能力,正是这个角色真正需要的核心技能 |
MDN 的网络标准模型清晰地将浏览器层和服务器层区分开来,值得聘请的全栈开发工程师,应当能就您自己产品中的这两部分都说清楚,而不只是其中一侧。
与我们合作的方式
在迪拜聘请全栈开发工程师时,专属开发人员适合希望在整个技术栈上持续开发新功能的小型产品团队,按月加入。限定范围的项目适合产品的第一个版本,按明确的功能列表建设并交付。招聘支持适合正在组建核心团队、希望直接聘用全栈开发工程师并随团队成长长期留用的创始人。这三种方式都是客户为小型产品引入这一角色的常见途径。
评估候选人
针对真正的广度而非单纯自信进行核实的方法。
而不是一个由他人负责后端的团队项目。请具体询问他们在每一层各自完成了什么。
查看同一项目中的界面代码和服务器代码,并请他们讲解一次改动是如何在两者之间流转的。
一个有说服力的回答会指出一个真实的边界,例如复杂的数据模型或精细的动画效果,而不是宣称自己样样精通。
一个同时涉及界面和背后数据的简短任务,比两场分开的面试更能反映真实的熟练程度。
他们的回答能说明,是否能独立合理地管理范围,这一点在没有专职负责人的团队中尤为重要。
认证
横跨两个领域的广度,不是单一证书能够体现的。
前端和后端框架各自都没有专门的认证机构,因此任何所谓“全栈认证”标识,都很难说明一个人是否真的能独立交付一个完整功能。
一个由候选人亲手完成各层构建的真实上线产品,仍然是聘请之前最值得要求查看的有力证据。
阿联酋相关事项
两个同时涉及这个角色两端的方面。
一个具备正确从右到左支持的阿拉伯语界面,需要前端工作,而干净地存储双语内容,则需要从一开始就为此设计的后端,而不是后期临时打补丁。
《2021 年第 45 号联邦法律关于个人数据保护》适用于产品处理个人数据的每一个环节,从用户填写的表单到最终存入的数据库。请尽早与您聘请的全栈开发工程师讨论这一点,因为这条链路的两端都由同一人负责。
直接解答
可以,但最合适的场景是小型产品团队,由一人交付整个功能,能避免拆分给两位专才所带来的协调成本。规模更大、增长更快的产品,通常更受益于专属前端和后端开发工程师的协同合作。
本页面讲的是在一个已有的小型产品内端到端交付功能。我们的全栈工程师页面则围绕为早期初创公司把控架构和交付决策展开,职责范围更广,也更偏向高级角色。
可以,在小型产品规模下,这是这个角色的常态。对于大型或要求较高的数据模型,让他们与一位专属后端开发工程师配合完成设计,往往是更好的选择,我们也会如实告知这一点。
对于一个专注、规模较小的产品,实际操作中通常可以,因为每次改动都不需要在界面和服务器端之间交接。对于变动更多的大型产品,两位专才通常会比一位多面手更快。
是的,两种方式都提供。限定范围的项目适合明确的建设任务,例如产品的第一个版本,专属聘用则适合希望持续开发新功能的小型团队。
资料来源
书面固定价格
已收到,我们正在为您撰写报价。
工作时间内您将在 45 分钟内收到。请查收确认邮件。