ServiceNow developer certification covering application scoping, server-side and client-side scripting, GlideRecord and GlideAjax, REST integrations, and Service Portal widget development. 60 questions, 90 minutes, 70% to pass, $250 exam fee, CSA recommended.
ServiceNow 平台上唯一一张"证明你会写代码"的认证——CSA + CAD 双证组合是整个 ServiceNow 生态里性价比最高的薪资杠杆,澳洲市场直接把工资从 AUD 100K 拉到 130K+。
Unlock all certifications, courses & tools at a fraction of the cost
This page is structured for quick scanning first: exam format, fit, prep time, and the actual study scope.
Certified Application Developer(CAD)是 ServiceNow 开发方向的准入证。它和 CSA(Certified System Administrator)的核心差别是:CSA 考"配置"——点界面、改字段、拖流程;CAD 考"写代码"——GlideRecord 查数据库、Business Rule 写服务端自动化、GlideAjax 异步调用 Script Include、Scripted REST API 对外暴露接口。ServiceNow 硬性要求先持有 CSA 才能考 CAD,报名时系统会自动校验你的证书状态。
考试细节:60 道题 + 90 分钟 + 70% 及格 + $300 USD 报名费(2024 年从 $250 涨到 $300)。题型是单选和多选,多选会明确告诉你选几个。报考前必须完成 Now Learning 上的免费课程 "Application Developer Fundamentals" + "Scripting in ServiceNow Fundamentals",Proctor 考前会核查学习记录。
六大考试领域:Application Scope(Global vs Scoped、Cross-scope Access)、Server-side Scripting(Business Rules / Script Includes / Scheduled Jobs / GlideRecord API)、Client-side Scripting(Client Scripts / UI Policies / UI Actions / GlideAjax)、REST API 集成(Scripted REST API、OAuth 2.0)、Application Security(ACL 在 Scoped App 里的行为差异)、Service Portal Widget(HTML Template + Client Script + Server Script 三段式)。最容易挂的是 Application Scope 相关题——很多人写了两年 Global Scope 脚本,到 CAD 才发现 Scoped Application 里 gs.log() 要换成 gs.info()、current.assigned_to 的 dot-walking 会被 Cross-scope Privilege 拦截。
市场定位——这张证为什么值得考:ServiceNow 生态里能独立交付项目的顾问全球只有约 20 万人,而会写代码的 ServiceNow Developer 更少——全球大约 5 万人左右。供需失衡意味着 CAD 持证者在澳洲市场的年薪基本不会低于 AUD 120,000,有 2 年以上实战经验的能稳定拿到 AUD 140,000-160,000。对比同年资的普通 Java/JavaScript 后端工程师(AUD 110,000-130,000),ServiceNow Developer 的议价权明显更强,而且项目稳定、不会被裁员优先点名——因为能接手的人太少。
Salary ranges, target job titles, and the real career impact of holding ServiceNow CAD.
为什么 CAD 比 CSA 的薪资溢价更高
CSA 的持证人数全球大约有 15 万,而 CAD 持证人数只有大约 5 万——差距的根本原因是"会写代码"这个门槛筛掉了大量只会点界面的 ServiceNow Admin。结果就是同一家咨询公司(例如 Accenture、Deloitte、DXC、NTT),Associate Consultant(只有 CSA)起薪是 AUD 95,000-110,000,而 CSA + CAD 双证的 Developer 起薪直接跳到 AUD 120,000-135,000,差不多 20%-25% 的跳升,这个差距在整个 ServiceNow 职业路径里会一直保持。
CAD 真正打开的三条职业路径:
咨询公司 ServiceNow Developer — Accenture、Deloitte Digital、NTT DATA、DXC、Fujitsu、Capgemini 在澳洲和美国都有专门的 ServiceNow Practice,他们招 Developer 的硬性门槛就是 CSA + CAD。这条路的特点是项目多、客户大(银行、政府、保险)、技术栈深——你会一直接触 Scripted REST API、Integration Hub、Flow Designer Spoke、自定义 Service Portal 这些复杂场景。澳洲 Senior Developer 3 年经验能到 AUD 150,000-170,000。
甲方企业内部 ServiceNow 平台团队 — 银行(ANZ、CBA、NAB、Westpac)、电信(Telstra、Optus)、能源(Origin、AGL)都有自己的 ServiceNow 平台团队,不是外包而是正式员工。这条路薪水稍低(AUD 115,000-145,000)但节奏稳、WLB 好、福利全,适合想扎根一家公司的人。
ServiceNow ISV Partner 独立开发 Certified App — ServiceNow Store 上架的应用需要经过 ServiceNow 认证审核,CAD 是开发者资质的硬性要求。国内和海外都有一些 ServiceNow ISV 公司(例如 Xanadu、Cask、Evergreen)在做这条路,做 Certified App 的开发者薪资更高(USD 130,000-180,000)但岗位少、门槛更高。
CAD 持证者的行业分布:
不适合考 CAD 的人:
for 循环、不懂 callback、不理解 JSON 对象的人直接考 CAD 会很痛苦,建议先花 3-4 周补 JS 基础A concrete week-by-week plan from past test-takers — not generic advice.
到 developer.servicenow.com 申请 Personal Developer Instance(如果你考 CSA 时的 PDI 还活着就继续用)。第一周不要看视频不要刷题,直接在 PDI 上手动建一个 Scoped Application——命名 "x_test_app",在里面建一张自定义表(extends Task)、加几个字段、写一个 Business Rule 打印 current 对象、写一个 Client Script 做字段联动。目标是让你直观感受 Scoped Application 和 Global Scope 在 UI、权限、脚本行为上的所有差别。**不动手建过 Scoped App 的人考 CAD 直接裸考赌运气,80% 会挂在 Application Scope 相关题上。**
到 nowlearning.servicenow.com 完成三门免费课程:"Application Developer Fundamentals"(CAD 硬性前置)、"Scripting in ServiceNow Fundamentals"、"Flow Designer Fundamentals"。总共大约 30 小时内容。每门课的 Lab 必须在你的 PDI 里跟着敲一遍,尤其是 GlideRecord API 的 `query / next / get / insert / update / deleteRecord` 六个方法的实战演练——这是 CAD 最高频的代码题考点。重点精读的章节:**Script Include 的 Client Callable 属性 + GlideAjax 配对使用**、**Business Rule 的 Before vs After 触发时机对数据库状态的影响**、**UI Action 的服务端和客户端分离执行规则**。
这一阶段死磕六个高频考点:**(1) Application Scope**——在 PDI 上建两个 Scoped App 互相调用,亲手配 Cross-scope Access Privilege,看哪些会被拒绝;**(2) GlideRecord 进阶**——`addQuery vs addEncodedQuery`、`orderBy`、`setLimit`、`updateMultiple` 的性能差异;**(3) Client Script vs UI Policy 选型**——这是经典场景题,关键词到答案的映射要背熟;**(4) GlideAjax 异步调用**——Client Script 里通过 GlideAjax 调 Client Callable 的 Script Include,考试至少出 3-4 道代码阅读题;**(5) Scripted REST API**——在 PDI 里自己建一个 REST Resource(GET + POST),配 OAuth 2.0,用 Postman 调一遍;**(6) Service Portal Widget**——四段式结构(HTML Template、CSS、Client Script、Server Script)+ data binding 的 `$scope` 对象。这一阶段配合一套收费题库(Marcel Cas 的 Udemy CAD Course 或 ServiceNow Guru),每天 40-60 题,错题必须回到 PDI 上动手验证。
至少做 3 套完整的 60 题模考,稳定 80% 以上才去考(CAD 及格 70%,留 10 个点作为紧张 buffer)。CAD 和 CSA 最大的区别是**代码阅读题占比高**——大约有 15-20 道题会给你一段 Business Rule 或 Script Include 代码,问"这段代码在什么时候会报错 / 返回什么结果 / 违反哪条最佳实践"。冲刺阶段每天必须精读 5-8 段真实代码(从 ServiceNow Developer Docs 或 ServiceNow Guru 博客里找),重点训练"看到代码一眼识别出 scope / when / condition"的能力。考前一天过一遍错题本、把 ACL 的 Table-level / Field-level / Cross-scope Access 三层求值顺序再背一遍就睡觉。
What it actually took for real candidates to pass — prep time, scores, and lessons learned.
我之前在 Accenture 做了一年 ServiceNow Admin,手上有 CSA,领导让我升 Developer Tier 必须拿 CAD。备考 8 周,前 3 周花在 Now Learning 的 Scripting Fundamentals 课上(我的 JavaScript 基础其实不错,但 GlideRecord 的链式调用和普通 Node.js 的 Promise 写法完全不一样,要适应)。最大的坑是 **Scoped Application 里 gs.log() 不工作必须换成 gs.info()**——考试直接考这个 API 差异。另一个坑是 GlideAjax 的 getXMLAnswer 和 getXMLWait 的区别,前者异步后者同步(且在新版本里 deprecated),考场遇到代码阅读题必考。考过之后内部 Title 从 Analyst 变成 Developer,base salary 从 AUD 108K 涨到 AUD 132K。
我在 NAB 内部 ServiceNow 团队做了两年 Admin,CAD 是我主动考的——因为团队里能写 Script Include 的只有 2 个人,瓶颈太明显。我的 JavaScript 基础一般(只在 Client Script 里写过简单的 onChange),所以多花了 4 周补 JS(ES5 语法,因为 ServiceNow 的 Rhino 引擎对 ES6 支持有限)。最痛苦的是 **Service Portal Widget 的四段式结构**——HTML Template、CSS、Client Script、Server Script 四段代码共享 `data` 和 `options` 对象但作用域不同,Client Script 里是 AngularJS `$scope`,Server Script 里是服务端上下文,两边通过 `c.server.update()` 异步交互。这个模型我看了三遍官方文档才彻底搞懂。考过之后内部加薪 AUD 15K,更重要的是拿到了 Senior Developer 的 title,job security 一下子不一样了。
我背景是前端工程师(React 3 年),因为澳洲前端市场太卷所以转了 ServiceNow。先考 CSA 用了 6 周,紧接着考 CAD 用了 14 周(比大部分人慢)。慢的原因是 ServiceNow 的所有概念对前端背景的人都是新的——Business Rule、GlideRecord、ACL、Update Set 这些词在 React/Node 生态里完全没有对应概念,只能当作一门新语言学。险过(73%),但考过之后在 Deloitte Digital 拿到 Consultant 岗位,起薪 AUD 125K 比我前端最后一份工作(AUD 112K)高了一截,而且工作节奏明显更稳,不用天天追新框架。给前端同行的建议:如果你受够了前端卷度、又有 JavaScript 基础,ServiceNow 是一条低竞争高回报的路,但要做好"放弃通用技能"的心理准备。
| ServiceNow CAD | ServiceNow CSA | ServiceNow CIS-ITSM | |
|---|---|---|---|
| Provider | 其他 | 其他 | 其他 |
| Level | 助理级 | 助理级 | 专业级 |
| Fee | $250 | $200 | $250 |
| Duration | 90 min | 90 min | 90 min |
| Question count | 60 | 60 | 60 |
| Validity | 3 yrs | 3 yrs | 3 yrs |
**没有 CSA 证书直接放弃——硬性前置** — ServiceNow 系统会在报名 CAD 时自动校验你的 CSA 证书状态,没有证直接报名失败。如果你还没考 CSA,先花 8-12 周拿下 CSA 再来规划 CAD,不要两门并行学(概念混淆严重)。
**PDI 是唯一的动手练习场地——比题库重要 10 倍** — CAD 的代码题占比约 30%,题干直接给一段 10-20 行的 GlideRecord / Business Rule / Client Script 代码问你"结果是什么 / 哪里有 bug / 哪条最佳实践被违反"。光刷题背答案过不了,必须在 PDI 上亲手敲过每一种 API 才有语感。
**关键词到答案的快速映射**:题目出现 "runs on server" / "before database insert" / "access current record" → 选 Business Rule;出现 "runs in browser" / "form field change" / "immediate UI feedback" → 选 Client Script;出现 "async server call from client" / "avoid blocking UI" → 选 GlideAjax;出现 "reusable server-side logic" / "called from multiple places" → 选 Script Include;出现 "no-code form control" / "show hide mandatory read-only" → 选 UI Policy;出现 "expose data to external system" → 选 Scripted REST API。
**90 分钟 60 题——代码题要先跳过** — CAD 的时间压力比 CSA 大,代码阅读题每道可能要 2-3 分钟。第一遍快速过所有概念题(1 分钟/题),遇到代码题直接 Mark for Review 跳过,最后 30 分钟集中处理标记题。多选题题干会明确告诉你 "Choose 2" 或 "Choose 3"。
**$300 USD 报名费不便宜——不确定就别报** — ServiceNow 从 2024 年把 CAD 从 $250 涨到 $300 USD,重考还是 $300。备考到模考稳定 80% 以上再预约考试,不要抱着"先考一次试试水"的心态,对钱包和信心都是打击。
**考过 CAD 下一步的路径规划** — CAD 本身是 Developer 入门证,想进一步提升议价权的话有两条路:**(1) CSA + CAD + CIS-ITSM** 三证组合(偏咨询交付方向,AUD 140K-160K);**(2) CSA + CAD + Certified Technical Architect (CTA)** 组合(偏架构方向,AUD 160K-200K,但 CTA 极难考且需要 5 年经验)。绝大多数人走第一条路性价比最高。
**在 Scoped Application 里用 Global Scope 的 API 写法** — Global Scope 里 `gs.log(msg)` 可以直接写日志,但在 Scoped Application 里 `gs.log` 是不可用的,必须用 `gs.info(msg)` / `gs.warn(msg)` / `gs.error(msg)` 三个方法(这是 Scoped App 强制的日志分级规范)。考试必考这个差异,每次至少一道代码题让你找 bug。同类陷阱还有 Scoped App 里不能直接 `new GlideRecord` 操作其他 scope 的表——必须先配 Cross-scope Access Privilege。
**分不清 Client Script 和 UI Policy 的选型** — 这是 CAD 和 CSA 都考的经典场景题。**UI Policy 用于无需代码的字段可见/必填/只读控制**(可维护性高);**Client Script 用于需要 JS 逻辑的场景**(GlideAjax 异步调用、DOM 操作、多字段联动判断)。关键判断原则:**能用 UI Policy 解决的绝不要写 Client Script**——因为 UI Policy 是声明式、易维护、且优先级高于 Client Script。考试陷阱题经常给一个"简单字段联动"的需求然后把 Client Script 作为干扰项放进去,正确答案永远是 UI Policy。
**GlideAjax 的同步 vs 异步调用搞错** — GlideAjax 用于 Client Script 调用服务端 Script Include(必须标记为 Client Callable)。核心方法有两个:**`getXMLAnswer(callback)` 是异步**(推荐,不阻塞浏览器),**`getXMLWait()` 是同步**(已 deprecated,新版本抛警告)。考试代码阅读题会给你一段用 `getXMLWait` 的旧代码问"这段代码的问题是什么"——答案永远是"同步调用阻塞 UI 线程,应该改用 getXMLAnswer 回调"。另一个高频考点是 **Script Include 里必须写 `this.getParameter(name)` 来接收从 Client 传过来的参数**,很多人写错成 `current.getParameter`。
**Business Rule 的 Before / After / Async / Display 触发时机混淆** — **Before 在数据库写入之前触发**,可以修改 `current` 对象阻止默认行为;**After 在写入之后触发**,不能再修改 `current`,适合触发下游动作(发通知、写日志表);**Async 完全异步**,不会拖慢用户请求响应但不能保证立即生效;**Display 在表单加载时触发**,可以设置 `g_scratchpad` 传数据给 Client Script。考试必考"应该用哪个 when"——关键词映射:需要修改当前记录 → Before;需要触发外部集成且不能阻塞 → Async;需要给表单 Client Script 传初始数据 → Display。
**Scripted REST API 里认证方式选错** — Scripted REST API 暴露给外部系统时可以配四种认证:**Basic Auth**(最简单但安全性最低,username + password base64)、**OAuth 2.0 Client Credentials**(服务端到服务端集成的标准方式)、**OAuth 2.0 Password Credentials**(用户代理场景)、**Mutual TLS**(高安全场景,罕见)。考试必考"银行集成外部 CRM 调 ServiceNow 的工单接口,应该用哪种认证"——答案是 OAuth 2.0 Client Credentials(无人值守 + 可吊销 token + 审计完整)。陷阱答案会是 Basic Auth("因为简单")——永远不要选。
**ACL 在 Scoped Application 中的继承规则没搞懂** — Scoped Application 创建的自定义表有自己的 ACL 命名空间,Global Scope 的 ACL 不会自动继承。考试常考:"在 Scoped App x_corp_vendor 里创建了表 x_corp_vendor_order,一个有 admin 角色的用户读不到数据,最可能的原因是什么?"——答案是"需要在 x_corp_vendor scope 里单独为 x_corp_vendor_order 表配 ACL,admin 角色在 Scoped App 里不是自动授权的"。这个机制和 Global Scope 完全不同,是很多转 CAD 的 Admin 最容易踩的坑。
**Update Sets 捕获范围不清楚** — Update Set 捕获的是**配置和代码**(Business Rule、Script Include、Table Schema、UI Action、ACL),**不捕获实际数据记录**(Incident 记录、User 记录、sys_properties 值在大多数情况下需要单独处理)。考试经典题:"从 Dev 迁移到 Test 环境时,发现自定义 sys_properties 没有跟过去,最可能的原因?"——答案是"sys_properties 默认不被 Update Set 捕获,需要手动添加到 Update Set 或通过 XML 导入"。
145+ questions, chapter-by-chapter learning, mock exams, wrong-question review, and AI tutor support live in the exam page.
Go to exam prepFrom $29 · 2 free chapters