新增接口端点
随着产品前端或移动应用需要更多数据或新的操作,为现有接口新增端点,风格与已有部分保持一致,不会让其他开发人员感到突兀。
一个已经上线并正在被使用的产品,通常需要持续的服务器端关注:涉及数据库的新功能、随着前端需求增加而不断新增的接口端点,以及在使用量攀升时默默维持性能稳定的各项工作。这正是企业在迪拜聘请后端开发工程师、以持续性专属角色而非一次性建设项目的方式来解决需求的原因,让对方加入现有的代码库和现有团队,而不是从一张空白页面开始,从第一天起就能理解产品的历史脉络和既有决策。
这与项目制工作的区别很重要,因为所需技能的侧重点不同。加入一个持续运营产品的人,需要阅读并尊重不是自己写的代码,依据待办事项而不是单一简报工作,并且做出的改动不能悄悄破坏三个屏幕之外的其他功能。擅长独立完成一次性项目的人,不一定天然擅长这一点,因此在开工之前,把这个区别说清楚十分值得,能避免入职后才发现双方期待不一致,白白浪费磨合时间。
专属后端开发工程师的日常工作
支撑一个不断成长的产品背后,反复出现的工作。
随着产品前端或移动应用需要更多数据或新的操作,为现有接口新增端点,风格与已有部分保持一致,不会让其他开发人员感到突兀。
随着产品需求变化,进行架构更新、迁移和清理,保持数据结构合理,同时不破坏已经依赖它的部分,即便这些部分不在当次改动范围内,也需要提前打招呼。
在真实使用量超出最初建设预期后,找出并修复曾经正常、如今变慢的查询或接口端点。这通常是以专属方式聘请后端开发工程师最清晰的理由,因为它需要持续关注,而不是一次性修复就能解决,问题往往会随着使用量继续变化。
仔细诊断生产环境代码中的问题,因为在真实客户依赖的系统上进行修复,比全新建设需要更多谨慎,任何改动都要先评估影响范围,再决定何时上线。
在现有架构基础上,把支付服务商、配送服务或其他第三方系统接入一个已经存在的产品,同时保持原有流程不受干扰,也不打乱既有的部署节奏。
持续更新依赖项、审查数据库访问权限,并将这些视为日常工作而不是一次性任务。这类持续维护,正是企业希望对方长期留下而不是上线后就离开的原因,也是外包给不同人员时最容易被忽略的部分。
关键技能
专门针对在他人已经搭建的代码库中工作所需的技能。
| 技能或工具 | 达标标准 | 重要原因 |
|---|---|---|
| 认真阅读现有代码 | 在改动之前,愿意花时间理解系统目前的运作方式 | 未经充分理解就匆忙改动线上产品,正是新故障产生的原因,也是团队之间信任流失的开端 |
| 接口和数据库设计 | 以一致的方式延续现有设计,而不是生硬地拼接不同风格 | 不一致的模式会让代码库随每次新增而越来越难维护,最终拖慢整个团队的速度 |
| 安全地测试改动 | 编写或扩展自动化测试,让改动在触及真实用户前先经过验证 | 产品规模增长后,仅靠人工检查已经不够可靠,也无法覆盖所有边界情况 |
| 围绕待办事项沟通 | 习惯依据他人设定的工单和优先级工作,遇到不清楚的地方会主动提问 | 持续性工作对这种节奏的依赖,远高于单次限定范围的项目,沟通习惯直接影响协作效率 |
| 掌握当前运行环境 | 让平台,例如 Node.js 或某种语言运行环境,保持在仍受支持的版本上 | 运行已停止支持的版本,会在不知不觉中积累安全和兼容性风险,修复窗口也会随之收窄 |
如果产品运行在 Node.js 上,其维护团队发布了清晰的发布与支持计划,加入持续运营产品的后端开发工程师,应当已经清楚产品目前使用的版本,以及该版本是否仍在积极支持范围内,并能说明升级计划。
为什么这个角色适合专属聘用
本页面专门围绕专属聘用模式展开,因为这最适合持续性的产品工作:候选人加入您的团队,真正理解代码库,并按约定的月度产能,一个月接一个月地持续开发。如果是有明确完成节点的一次性后端建设,更适合按项目制安排,我们的项目制后端开发工程师页面对此有说明。招聘支持适合希望直接将这一能力纳入自己薪酬体系的企业,咨询则适合在决定如何配置资源之前,先对现有后端进行评审,避免仓促做出人力决策。
评估候选人
针对加入团队而非独立开发的候选人所设计的核实方法。
每当您聘请后端开发工程师加入现有产品时,都可以使用以下核实方法,因为它们关注的是能否融入团队,而不仅仅是能否独立写代码。
分享一段经过脱敏处理的真实代码,或类似的示例,请候选人说明这段代码的作用,以及他们会做出哪些改动,并说明理由。
他们冷静、有条理地诊断他人代码的方式,比一段关于自己过往项目的故事更能说明问题。
优秀的候选人会主动提出澄清问题,而不是靠猜测,因为在线上产品上靠猜测的代价很高,出错后返工也更耗时。
询问他们如何为原本没有测试的代码补充测试,这在大多数持续运营的产品中是常见情况,而不是特例。
由于这是一段持续性的合作关系,请在开工前确认与您团队工作时间的重叠情况,以及进展如何同步,避免后期因时差产生摩擦。
认证
没有任何单一厂商证书能证明一个人真正胜任这份工作。
后端开发涉及众多语言和框架,没有哪一个设有涵盖整个领域的认证,因此任何笼统的“后端认证”说法,都无法通过权威来源核实,请不要单凭这类说法做决定。
对这个角色而言,维护真实系统而不仅仅是构建系统的经历,比任何考试都更有分量。在迪拜聘请后端开发工程师担任持续角色时,可以请对方举例说明一段维护超过一年的代码库,以及这段时间里他们的做法有哪些改变,改变的原因又是什么。
阿联酋相关事项
系统运行时间越久,这两个方面就越重要。
一个持续运营的产品,运行时间越长,积累的客户数据往往越多,因此《2021 年第 45 号联邦法律关于个人数据保护》值得与后端开发工程师定期重新审视,而不只是在上线时讨论一次,也不应等到出现问题才想起来。
随着产品不断发展,值得定期审视其托管位置是否仍然适合您的业务,尤其是当阿联酋数据本地化的重要性已经超过上线时的情况。请与您聘请的后端开发工程师讨论这一点,而不是放任多年不去检视,等到监管要求变化时才被动应对。
这个角色属于我们网站开发分类的一部分,也是迪拜聘请开发人员体系的一部分。范围明确的限定型后端建设,请改看我们的项目制后端开发工程师页面。同一产品的界面部分请参见前端开发工程师,如果由一人同时覆盖两层,请参见全栈开发工程师。如果您的后端已经基于某个具体框架,我们的Node.js 开发工程师和Django 开发工程师页面对相应技术栈有更深入的介绍,方便您进一步比较。
直接解答
本页面讲的是持续性的专属聘用,候选人会加入您的团队,持续为您已在运营的产品开发。我们的项目制后端开发工程师页面则描述限定范围的项目,例如构建并交付一个接口或后台管理系统,有明确的完成节点。
通常不是他们的主要职责。后端开发工程师专门适合持续性的服务器端工作,如果您还需要有人同时交付两端,我们的全栈开发工程师页面将其定义为一个独立角色。
他们会加入您的产品,通常向已经负责工程或产品决策的人汇报,并依据您现有的待办事项工作,而不是另立一份简报。工作时间、沟通方式和汇报安排会在评估范围阶段一并确认。
在实际操作层面通常可以,包括数据库性能以及接口在流量增加时的承受能力。如果工作重心逐渐转向基础设施和扩容本身,而不是应用代码,我们的 DevOps 和云计算分类会更贴合需求。
按约定的月度产能计费,而不是按小时计费,开工前会提供一份根据您的需求简报制定的书面固定价格方案。
资料来源
书面固定价格
已收到,我们正在为您撰写报价。
工作时间内您将在 45 分钟内收到。请查收确认邮件。