软考高级架构师备考记录

- 记录

我参加了 2024 年上半年(5 月)的软考(全称:全国计算机技术与软件专业技术资格(水平)考试),通过了高级资格「系统架构设计师」的考试。本文记录我的备考过程。

个人背景

科班 CS 本科,参加工作 2 年,大厂底端程序员。

参加软考的原因

如果回看我的 23年总结&24年展望 的话,会发现当时我已经把通过软考作为 24 年的个人目标之一了。其实我接触软考是 23 年 9 月,但是了解信息有些延迟,当时已经过了报名窗口,所以只能再等半年。当时我并没有非常清晰的动机,以下列出的原因只是站在考完的时间节点上反向硬找出来的:

  1. 学生时代的考试思想延续:作为中国学生,考试思维估计是我思想中比较难剥离干净的一部分了,核心是将各类难以量化的目标想方设法量化,并且制定明确的验收标准(例如通过考试)来催促自己达成目标
  2. 学习架构设计:虽然我接受了科班教学,也做过不少项目(无论是学生时代还是工作之后),但是大部分情况下,架构要么是直接给出(例如更高级的同事已经设计好了),要么是自己瞎整(例如各类课程项目),没有系统性学习过;既然刚好有”系统架构设计师“这个资格科目,作为考试也有系统性的知识梳理,不妨以考促学
  3. 为未来发展留点余地:虽然目前在私企工作用不上,但是未来无论是跳槽国企还是润其他国家,软考的证书认可度还是可以的(e.g. 软考在日本永居打分接受的证书列表中)
  4. 退税:考过了的话可以退税 3600 元 (8/7 评论指正:是 3600 元的退税额度,实际退税金额取决于税率)(每个税收年度可以在继续教育类目下认证一个资格类证书)
  5. 听起来比较厉害:毕竟叫做高级,能满足下虚荣心 当然每个人可能还有其他的原因(例如落户、国企内评职称、所在地域有优惠政策…),不过我自己的原因大致就是以上这些了。

但决定参加前,也必须要了解软考的局限性:软考本质上还是个八股文考试,有很大可能学了用不上(毕竟对于考生的工作年限是没有要求的);而且软考是水平考试而不是资格考试,做开发也没有任何资格壁垒(不像建筑)。

软考的考试内容

既然是考试,最重要的当然是考什么。好在这个问题并不难回答,看教材就好了。架构师的教材名叫《系统架构设计师教程(第2版)》,大体上可以分为两个部分;第一部分是综合知识,其中一些章节接受过科班 CS 教育的人稍作复习即可(计算机系统、信息安全、数据库设计),另外一些章节则之前学的不够深入或者是首次接触,需要学习(软件工程、架构设计、质量属性、软件可靠性、架构演进);第二部分是各类架构的详细介绍,总共划分了八大架构(信息系统、层次式、云原生、SOA、嵌入式、通信系统、安全、大数据),每个架构内会有概述、设计、优缺点、适用场景、示例等。

和考试内容同等重要的,还有考试形式。软考高级资格的考试是 3 个科目:综合知识(单选,75题)、案例分析(简答,1必选+4选2)、论文(4选1,2k字+)。(是不是有种高中语文的感觉了?)每个科目满分 75 分,及格线是 45 分。所有科目都及格才能通过。其中综合知识和案例分析上午连着考,论文则是下午单独考。每个科目的考试时间都是 2 个小时。这其中综合知识和案例分析,基本上靠刷题可以覆盖掉,然而论文就是一个大坑了,毕竟2个小时时间,要完成选题、构思、写作、检查,而且字数还要求2k以上,如果没有训练过实在是比较困难。(顺带一提,23年下半年之前,软考是纸质考试,论文当然也是要手写的;好在23年下半年开始改为了机考,论文也可以打字作答了;真不敢想象之前的考生是如何考过的)。

备考资料

我认为比较有用的资料有:

  1. 书《系统架构师设计师考试 32小时通关》(作者:薛大龙):基本上是教材的精简版本,还带有简单的例题;初期可以先用这本书读一遍,建立下知识框架(软考官方教材不要买纸质书,又厚又重;找 PDF 就够了)
  2. 软考备考资料:https://github.com/xxlllq/system_architect;虽然 repo 里有些东西,但是大部分资源还是要付费后从阿里云盘获取;虽然这些资料自己逐个找也可以找出来,但是相对于花的时间和精力来说,花点小钱(¥20)一次找全还是划算的
  3. 小程序《软考达人》:刷题用(综合知识和案例分析);单纯刷题的话完全免费,不需要付费也不用加群
  4. B站视频课程(up 主:文老师软考教育):https://www.bilibili.com/video/BV1Dy4y1a71j;时间比较紧,就看了论文的两 P,对梳理论文结构很有帮助(e.g.十段式)

总体上,最必须的书 + 资料大概五六十元就可以拿下;是否要买课或者是报班就见仁见智了。

备考时间线

基本上备考时间只有 2 个月,核心的学习时间大概是 60 小时(18 小时读书建立框架、30 小时刷题、12 小时考前临时抱佛脚)。

cert.png

感受和建议

  1. 对于科班 CS,有实际开发经验的同学来说,这个考试并不算非常困难(10分最难的话,大概是7~8分的水平),但是依然要花时间准备(主要是刷足够多的题)
  2. 论文真的很看运气,本次是运气好,可选的题目里有一个和我最近的工作相关的题目;如果没有这个题目可能我就跪了;最好要掌握如何把自己做过的项目套到论文题目上
  3. 写作速度很重要,论文的 2 小时我基本上前 5 分钟在选题和构思,后面就一直在写了,结束前 2 分钟才完稿,时间非常紧张
  4. 如果你是学生,有比较多的空闲时间,不妨去考下试试看,反正也不要求工作年限

和正文无关的一些碎碎念:上次写考试相关的文章,还是 2021 年 7 天 TensorFlow 开发者认证的那一篇。那篇文章意外上了阮老师的周刊,还给本博客增加了不少流量。现在回过头来看看 ML 领域 PyTorch 几乎已经一家独大,TF 如风中残烛,更别提 LLM 的突飞猛进,当年的认证回头来看其实除了满足虚荣心+能写在简历上之外,并没有起到实质性的作用。前几天收到 Google 的邮件,说当时考的认证已经过期了(有效期只有三年),问我还要不要再续(实际上就是再考一次),那当然就选择不考了。虽然软考没有有效期,不存在重考的问题,但在决定投入精力被考前,依然得好好想想是否真的「对我有用」。


本文发出后的修正