网页应用
面向客户或内部使用的站点,基于 Razor Pages 或 MVC 搭建,由完整的数据模型支撑,而不是静态页面。
想要在迪拜聘请ASP.NET开发工程师的企业,通常是在构建或扩展一个网页应用或 API,而不是一个静态的营销网站:客户门户、预订系统、内部工具,或移动应用背后的后端服务。微软官方对 ASP.NET Core 的介绍,将其称为一个为大规模应用开发而打造的跨平台开源框架,在实践中,只要项目需要页面背后真正的业务逻辑,而不只是内容展示,这个框架就很合适。
明确您指的是哪一个 ASP.NET 很重要。ASP.NET Core 是当前持续积极开发的框架,也是任何新项目的合理默认选择。最初的 ASP.NET,包括 Web Forms 在内,是一项较旧的技术,绑定在仅支持 Windows 的 .NET Framework 上,虽然仍在不少阿联酋企业中运行,但不适合用来开始全新的工作。本页专门针对 ASP.NET Core 的相关工作;如果您的系统确实还在使用那项较旧的技术,我们的 Microsoft .NET 开发工程师 页面专门覆盖那类维护和迁移工作。
ASP.NET 开发工程师能做什么
覆盖这个框架整个能力范围的具体产出。
面向客户或内部使用的站点,基于 Razor Pages 或 MVC 搭建,由完整的数据模型支撑,而不是静态页面。
使用最小化 API 或控制器搭建的后端,支撑移动应用、单页前端或其他系统。
用 C# 而不是 JavaScript 编写的交互式网页界面,适合团队本身更擅长 .NET 技术栈的情况。
通过 SignalR 构建的实时更新、通知或聊天功能,适用于页面需要在用户不刷新的情况下反映变化的场景。
基于 ASP.NET Core 自带的安全功能构建登录、角色和权限,而不是从零拼凑。
通过框架自身的依赖注入,连接数据库、支付服务商、Azure 服务或外部 API。
值得关注的技能
当前框架的实际做法,而不是对 Web Forms 的记忆。
在聘请ASP.NET开发工程师之前,请权衡以下全部五行,而不要只凭一次出色的回答做判断。
| 技能或工具 | 合格的表现 | 为何重要 |
|---|---|---|
| 专门针对 ASP.NET Core | 拥有近期、动手实践的 Core 经验,而不只是多年的旧版 ASP.NET 经验 | 两个框架差异足够大,Core 专项实践比单纯的从业年数更重要 |
| 模式选择 | 能解释针对某项具体工作,为何会选择 Razor Pages、MVC、Blazor 或最小化 API | 这些是同一框架内的不同工具,而不是可以随意互换的默认选项 |
| Entity Framework Core 或数据层 | 熟悉某种 ORM,并知道何时应改用原生查询 | 数据访问上的失误,是页面变慢、难以修复的常见原因 |
| 测试 | 将编写自动化测试作为 API 或应用开发的标准做法 | 未经测试的网页代码,往往会在上游发生变化时悄然出错 |
| 当前 .NET 版本 | 基于受支持的当前 .NET 版本构建,而不是即将到期停止支持的版本 | 基于不受支持版本搭建的新项目,从一开始就埋下了问题 |
微软的 ASP.NET Core 概述 将 Blazor、最小化 API、SignalR 和内置身份验证列为核心特性,候选人应该能够说明您的项目究竟需要其中哪些,而不是把整份清单背一遍。
与我们合作的方式
如果一个基于 ASP.NET Core 的产品已经存在并需要持续开发新功能,按月计费,请选择专职开发工程师。如果是一个边界明确的网页应用或 API,有清晰的完工节点,交付时附带代码和文档,请选择限定范围的项目。如果目标是让 ASP.NET 开发工程师直接加入您自己的编制,由我们负责寻访、筛选和技术评估,请选择招聘支持。如果您已经拥有一套 ASP.NET Core 代码库,希望在投入更多预算之前获得一次经验丰富的架构或性能评审,请选择咨询服务。
考察候选人
用于区分真正的框架深度和一份简历上的关键词。
您可以自行完成以下步骤,也可以作为招聘支持的一部分交给我们来做。
使用了哪种模式,为什么这么选,以及如果今天重新搭建,他们会做出哪些改动。
一个接近您实际工作、规模不大的 API 或页面搭建任务,重点审查结构、错误处理和测试覆盖。
拥有真实生产经验的候选人,会先从性能分析和数据库入手来梳理思路,而不是直接猜测原因。
询问他们在默认情况下如何处理身份验证和输入校验,而不只是在项目特别要求时才这样做。
询问如果今天开始一个新项目,他们会选择哪个 .NET 版本,以及原因。
认证
微软目前并未开设专门针对 ASP.NET Core 的认证。
这一点值得提前了解,以免仅凭一张实际上并不存在的证书,就选定一位 ASP.NET 开发工程师。
与 Azure 或 Dynamics 365 不同,ASP.NET Core 目前没有自己专属的微软认证,因此如果有人声称自己”通过 ASP.NET 认证”,值得直接追问这究竟对应哪一场考试。
一个正在运行、已部署的项目,以及候选人对微软官方 ASP.NET Core 文档的熟悉程度,在这里都比任何徽章更能说明问题。
阿联酋相关考量
迪拜真实网页项目中会遇到的两个方面。
如果系统需要通过阿联酋国家数字身份 UAE PASS 对用户进行身份验证,UAE PASS 发布了一份 OAuth2 网页集成指南,并提供公开沙盒环境,一位合格的 ASP.NET 开发工程师应该能够直接上手完成对接。
如果一个 ASP.NET Core 应用存储了客户或员工数据,2021 年第 45 号联邦法令为安全和同意设定了基本要求,系统设计从一开始就需要考虑到这一点,而不是事后再补上。
无论您选择哪种合作方式来聘请 ASP.NET 开发工程师,本页都归属于我们的 Microsoft 与 Dynamics 365 类别,属于更广泛的 迪拜招聘开发人员 板块的一部分。如果您的系统仍在运行较旧的 ASP.NET 或 .NET Framework,请改为查看我们的 Microsoft .NET 开发工程师 页面;如果需要的是脱离具体框架的 C# 语言本身,请查看 C# 开发工程师。如果项目将部署到 Azure,我们的 Azure 开发工程师 页面覆盖了那部分工作;如果您还在考虑该选用哪个框架,不妨看看我们更广泛的 网页开发工程师 类别。
直接解答
不完全是。ASP.NET Core 是微软目前积极开发的跨平台框架,而最初的 ASP.NET(包括 Web Forms)是一项较旧的、仅支持 Windows 的技术,绑定在 .NET Framework 上。新项目应基于 ASP.NET Core 搭建,除非您另有说明,本页默认按此理解。
移动应用背后的 REST API、内部业务系统、通过 SignalR 实现的实时功能,以及通过 Blazor 构建的交互式网页界面,无需为每个交互都手写 JavaScript。一旦超出简单营销网站的范畴,这个框架能覆盖的范围相当广。
取决于具体的构建方式。Blazor 可以让 ASP.NET 开发工程师用 C# 而不是 JavaScript 同时负责前端。如果您的界面改用 React 或 Vue 构建,则应搭配一位熟悉该框架的前端开发工程师。
差别足够大,在实践中通常被视为两套不同的技能。如果您的系统确实还在使用 Web Forms 或更旧的 .NET Framework,我们的 Microsoft .NET 开发工程师页面专门覆盖那类维护和迁移工作。
适合,性能是这个框架自身宣称的优势之一,微软官方文档也引用了独立基准测试作为佐证,不过就任何框架而言,实话是数据库设计和基础设施选择通常比框架本身更重要。
在我们了解范围、数据模型和涉及的集成之后,会在任何开发工作开始之前,先确定一份书面的固定价格方案。
资料来源
书面固定价格
已收到,我们正在为您撰写报价。
工作时间内您将在 45 分钟内收到。请查收确认邮件。