SagarBiswas-MultiHAT/Purpose

GitHub: SagarBiswas-MultiHAT/Purpose

一位计算机科学学生公开的个人职业发展路线图,规划了从本科到2030年成为高级软件与安全工程师的学业与技术成长路径。

Stars: 1 | Forks: 0

# 我的目标 — 学业规划与毕业后路线图
Status: Living Document Last Updated Target: 2030 Graduation
Focus: SWE Focus: Security Focus: AI

你好,我是 **Sagar Biswas**。我是 [AIUB](https://www.aiub.edu/)(孟加拉国)计算机科学与工程专业的学生,预计将于 **2028** 年毕业。早在我还不知道什么是“职业规划”之前,我就已经开始开发软件并涉足网络安全了——这份文档就是我正在遵循的路线图,旨在将这份热情转化为切实的成果。 这不是一份光鲜亮丽的企业战略。这是我真实的个人计划——记录了我正在学习什么、毕业后打算深造什么,以及我做出每一个选择背后的原因。我最初写这份文档是为了给自己看,但我选择将其公开,希望它也能帮助其他人找到属于自己的道路。 ## 目录 - [这份文档是什么](#what-this-document-is) - [我目前的进度](#where-i-am-right-now) - [我的构建目标](#what-im-building-toward) - [为什么选择软件工程](#why-software-engineering) - [为什么选择网络安全](#why-cybersecurity) - [为什么选择 AI](#why-ai) - [我的最终学业规划](#my-final-academic-plan) - [专业 — 软件工程](#major--software-engineering) - [辅修](#minor) - [毕业后路线图](#post-graduation-roadmap) - [阶段 1 — 云计算与基础设施](#phase-1--cloud--infrastructure) - [阶段 2 — 网络技术](#phase-2--networking) - [阶段 3 — AI 工程](#phase-3--ai-engineering) - [阶段 4 — 安全工程](#phase-4--security-engineering) - [阶段 5 — 高级工程](#phase-5--advanced-engineering) - [2030 年的目标定位](#target-profile-by-2030) - [我的构建准则](#principles-i-build-by) - [找到我](#find-me) ## 这份文档是什么 这是我个人的职业路线图——这是一份不断更新的文档,记录了我的学业决策、毕业后的学习计划,以及每个选择背后的理由。随着我思想的成熟,我会不断对其进行更新。 **这份文档是写给谁的?** - **写给我自己** — 让我不至于迷失方向。当事物变得令人不知所措时(这是必然的),我会回到这里,回想起自己正在朝着什么方向努力。 - **写给招聘人员和雇主** — 这样你们就能了解我的思维方式,而不仅仅是我做过什么。我 GitHub 上的项目展示了我的能力;而这份文档则展示了我的发展方向和原因。 - **写给其他学生** — 尤其是那些在孟加拉国或处于类似境况,正试图弄清楚该学什么以及该如何自学的人。如果这能帮助你规划自己的道路,那就是一种胜利。 ## 我目前的进度 我并不是从零开始。以下是我截至 2026 年中所处的阶段: **我已经取得的成果:** - GitHub 上拥有 90 多个代码库 — 涵盖 SaaS 应用、AI 驱动的工具、电商平台、安全扫描器以及教学笔记 - 一份完整的[生产平台安全评估报告](https://drive.google.com/file/d/1lYKqYK1_mIBSEbu7LtOPlFh8oFrWC6y3/view?usp=sharing)(ReserveX — 发现 15 个漏洞,其中 2 个为严重漏洞,包含漏洞利用链分析) - 被其他学生广泛使用的开源学习资源(Python、Bash、JavaScript、React、PHP、NestJS、C/C++、Git 以及网络安全笔记) - AI 驱动的应用、Web 漏洞扫描器、短链接服务、语音助手等 - 一个技术社区([AIUB CyberSecurity & Programming Society](https://www.facebook.com/groups/aiubcybersecurityandprogrammingsociety)),我在其中分享项目、笔记和安全研究 **我已经掌握的技能(非全部列举,仅列出重点):**
| 领域 | 技术与主题 | | ------------------- | ---------------------------------------------------------- | | **Languages** | C, C++, Python, JavaScript, PHP, Bash, Arduino | | **Frontend** | HTML, CSS, React, Next.js | | **Backend** | NestJS, PHP (MVC), REST APIs | | **Databases** | MySQL, PostgreSQL, MongoDB | | **DevOps** | Docker, CI/CD, Linux, Git | | **Web Security** | OWASP Top 10, XSS, SQLi, CSRF, SSRF, Burp Suite, OWASP ZAP | | **AI Security** | OWASP LLM Top 10, Prompt Injection, Jailbreaking | | **Networking** | DNS, TCP/IP, HTTP, Wireshark, Nmap | | **Auth & Sessions** | JWT, Cookies, Sessions, OAuth patterns | | **Other** | Social Engineering, Threat Modeling, Technical Writing |
我列出这些并不是为了炫耀。我列出它们是因为它们解释了下文中的选择。当你已经具备了构建全栈应用_并且_能够攻破 Web 应用的实战经验时,你所做出的学业决策会与一个从零开始的人截然不同。 ## 我的构建目标 到 **2030** 年,我希望成为一名 **高级软件工程师 / 后端工程师**,能够做到: - 从零开始设计并构建可扩展的生产级系统 - 将 AI 融入实际产品中(而不仅仅是调用 API 玩玩而已) - 在编写代码时像攻击者一样思考——因为我_本身_就是一名(有道德的)攻击者 - 能够熟练运用云基础设施,而不仅仅是在别人的环境上写代码 - 为我接触到的任何系统的安全做出实质性贡献 这就是我的指路明灯。这份文档中的每一个决策都指向这个目标。 在完成本科学习后,我的计划是最终在一个发达国家定居——但我也对远程工作以及在孟加拉国的本地机会持开放态度。我的目标是培养在任何地方(_不仅仅是单一市场_)都有价值的技能。 ## 为什么选择软件工程 直说吧:我选择软件工程作为我的主要发展方向,是因为**这不仅是市场需求所在,也是我最擅长的领域**。 早在进入大学之前,我就一直在构建项目——Web 应用、工具、全栈系统。经验告诉我,我真心热爱构建软件这门手艺:设计系统、编写整洁的代码、交付功能、排查生产环境问题。这不仅仅是一个职业选择;这本来就是我在业余时间真正_做_的事情。 但我同时也具有战略性眼光。纵观 2030 年及以后的全球就业市场,软件工程在以下方面始终名列前茅: - **就业需求** — 每个行业都需要能够构建和维护软件的工程师 - **薪资潜力** — 特别是对于后端和基础设施岗位 - **远程工作机会** — 这是我能追求的最不受地理位置限制的职业 - **创业潜力** — 我可以开发自己的产品,而不仅仅是服务于他人 - **抵御 AI 取代的能力** — 理解_架构与设计_(而不仅仅是语法)的工程师更难被 AI 取代 最后一点对我来说至关重要。我并不担心 AI 会取代那些能够设计系统、权衡利弊并对生产环境可靠性负责的开发者。我更担心的是那些只会写样板 CRUD 代码的开发者。这正是为什么我的课程重心放在架构、设计模式和工程质量上——而不仅仅是“写更多代码”。 ## 为什么选择网络安全 这个选择出于个人热爱。 网络安全是我从小以来的梦想。早在写下第一行代码之前,我就对系统是如何被攻破的——以及如何防御——深深着迷。这种好奇心从未消退;反而变得更加敏锐。 如今,我同时在学习攻防两面: - **攻击方** — 我练习渗透测试、Web 漏洞利用(XSS、SQLi、CSRF、SSRF)、网络侦察和社会工程学。我对生产平台进行过真正的安全评估。 - **防御方** — 我学习安全编码实践、威胁建模、应用安全和安全架构。在构建软件时,我会思考攻击者会试图如何破坏它。 我不打算成为一名全职的渗透测试员或安全分析师。相反,我想成为一名_像黑客一样思考_的工程师——因为理解攻击者的思维模式,所以能够默认构建出安全的系统。这种结合(构建者 + 破坏者)非常罕见,且极具价值。 这也是为什么我要考取 **CCNA** 证书的原因——大多数软件工程师不愿费心去考取网络认证,但网络却是网络安全的血液。你无法保护你不了解的东西。深入理解路由、交换、TCP/IP 和网络架构,能让我成为更优秀的安全思考者和更出色的工程师。 ## 为什么选择 AI 坦白说:我天生对偏向重度数学和研究的 AI 领域不感兴趣。我不打算发表论文,也不打算从头训练基础模型。 但我坚信——**在这个时代,AI 不是一种选择,而是答案。** 在 2028 年、2030 年及以后,我构建的每一款产品都将在某种程度上涉及 AI。如果我无法集成 LLM、构建 RAG pipeline、设计 AI agent 架构并评估模型输出,那我无异于束手束脚地在工作。 因此,我对待 AI 的方式是实用主义的: - 学习如何**使用** AI API、向量数据库和检索系统 - 学习如何**构建** AI 驱动的产品和应用程序 - 学习如何**评估**和**保护** AI 系统(这与我的安全背景相呼应) - 跳过那些我不喜欢的、需要高等数学知识的重度研究路线 构建 AI _产品_,而不是成为 AI _研究员_。这就是我的底线。 我已经走在了这条路上——我已经构建了 AI 驱动的工具(聊天助手、语音助手、AI 增强的安全扫描器),并深入研究了 AI 安全(OWASP LLM Top 10、Prompt Injection、Jailbreaking)。学校的机器学习课程填补了我缺失的理论基础,且没有过度深入。 ## 我的最终学业规划 以下是我本科阶段剩余时间将要学习的课程,以及它们对我的发展路线图_为何_重要。 ### 专业 — 软件工程 #### 1. CSC4273 — 软件架构与设计模式 **课程内容:** 系统设计原则、可扩展的软件架构、常见设计模式(Factory、Observer、Strategy 等)、架构风格(microservices、event-driven、layered)。 **选课原因:** 这可以说是我课程表中最重要的一门。知道_如何写代码_只是基本要求——知道_如何设计系统_才是区分中级工程师和高级工程师的关键。顶级公司的系统设计面试考察的正是这些知识。坦白说,这也是 AI 最难自动化的思维方式。LLM 可以写出一个函数,但它无法像人类架构师那样,在分布式系统中权衡一致性与可用性。 **如何衔接:** 直接对应我毕业后规划的 Phase 5(Advanced Engineering),并且是我 2030 目标定位中“系统设计专长”的基础。 #### 2. CSC4161 — 高级 Web 技术编程 **课程内容:** 高级全栈开发、现代 Web 框架、SaaS 应用架构、API 设计、实时特性。 **选课原因:** 我已经构建过——而且数量不少——Web 应用。但是,构建一个_能用_的东西和构建一个_生产级_的东西是有区别的。这门课将我推向更高级的模式:身份验证流程、支付集成、实时通信,以及 SaaS 平台背后的架构决策。我所有的创业点子都依赖于这些技能。 **如何衔接:** 直接增强我短期的变现能力(自由职业和创业机会),并加深了作为其他一切技能基础的全栈底子。 #### 3. CSC4271 — 软件质量与测试 **课程内容:** 测试方法(单元测试、集成测试、e2e 测试)、CI/CD pipeline、测试自动化、质量指标、代码审查实践、生产环境监控。 **选课原因:** 大多数学生要么跳过这门课,要么觉得它很枯燥。但我不会这样。原因如下——我接触过的每一个生产系统,都存在过通过适当的测试本可以避免的 Bug。CI/CD 不仅仅是一个流行语;它是专业团队交付代码的支柱。掌握质量工程能让我成为那种让团队敢于把生产环境部署交托给我的开发者。这种信任就是职业发展的资本。 **如何衔接:** 对我毕业后计划中所有五个阶段所需的“生产就绪软件”思维至关重要。同时也与安全直接相关——没有良好的测试,你就无法验证修复方案是否真的有效。 ### 辅修 #### 1. CSC4232 — 机器学习 **课程内容:** 核心 ML 概念——监督/无监督学习、分类、回归、聚类、模型评估、特征工程。使用 Python 库进行实际实现。 **选课原因:** 我不需要成为一名 ML 研究员,但我_确实_需要具备 AI 素养。当我在毕业后(Phase 3)构建 AI 驱动的产品时,我需要了解底层发生了什么——而不是仅仅调用一个 API 然后祈求好运。这门课给了我基础词汇和直觉,让我能够评估模型、理解权衡,并能够与 ML 工程师进行有意义的对话。对于专注于产品的工程师来说,这是最低限度的可行 AI 知识储备。 **如何衔接:** 直接为我专注于 LLM、RAG、向量数据库和 AI agent 的 Phase 3(AI Engineering)做准备。 #### 2. CSC4181 — 高级数据库管理系统 **课程内容:** 查询优化、索引策略、事务管理、数据库复制、分片、NoSQL 模式、性能调优。 **选课原因:** 我构建的每一个应用程序都要与数据库打交道。如果我无法设计高效的 schema、优化缓慢的查询,并对数据库架构做出明智的决策,那我一开始就会陷入瓶颈。“看不见的”技能,它区分了优秀的后端工程师和卓越的后端工程师。招聘人员可能不会直接问这方面的问题,但当你正在调试一个需要 30 秒而不是 30 毫秒的生产环境查询时,这项知识的价值就体现出来了。 **如何衔接:** 这是我作为后端工程师核心定位的关键。直接融入 Phase 5(Advanced Engineering),并且是我 2030 目标定位中“高级数据库知识”的核心要求。 ## 毕业后路线图 2028 年毕业后,真正的工作才刚刚开始。这是我制定的五个阶段的自学和认证计划。这些阶段大致是按顺序进行的,但在实践中它们会有重叠——在这个过程中我会不断构建项目。 ### 阶段 1 — 云计算与基础设施 **我将学习:** - **AWS** — 计算、存储、网络、serverless、IAM - **Docker** — 容器化、多阶段构建、Docker Compose - **Kubernetes** — 编排、部署、扩展、service mesh 基础 - **Terraform** — 基础设施即代码、预配、状态管理 - **CI/CD** — GitHub Actions、自动化测试 pipeline、部署策略 **目标认证:** AWS Certified Solutions Architect — Associate **为什么把这个放在首位:** 因为从“我能在笔记本电脑上构建应用”到“我能将其部署到生产环境并进行运维”之间,存在着巨大的鸿沟。云计算与基础设施技能是让开发者具备大规模就业能力的关键。我想成为那种不只是写代码的工程师——我还要清楚代码在哪里运行、如何扩展以及为什么会有这样的成本。 **学习方法:** 动手实践项目。我会拿现有的应用程序并进行正确的部署——容器化、编排,结合 CI/CD pipeline 和用代码定义的基础设施。绝不看只说不练的教程。 ### 阶段 2 — 网络技术 **目标认证:** Cisco Certified Network Associate (CCNA) **我将学习:** - 路由和交换基础 - TCP/IP 深入剖析 - 网络故障排除和诊断 - 子网划分、VLAN、ACL - 网络架构与设计 **为什么将此纳入计划:** 我之前就说过——网络是网络安全的血液。大多数软件工程师对网络的理解只停留在表面(“HTTP 跑在上面,对吧?”)。我想更深入地探索。理解数据包是如何在网络中传输的、路由决策是如何做出的、以及网络分段是如何工作的,能从根本上让我成为更好的安全思考者和更强大的基础设施工程师。 **学习方法:** 思科官方课程 + 实验模拟(Packet Tracer、GNS3)。我将结合已经在安全工作中使用的 Wireshark 和 Nmap 进行真实网络分析。 ### 阶段 3 — AI 工程 **我将重点关注:** - **LLM API** — OpenAI、Anthropic、Groq、本地模型 - **RAG (Retrieval-Augmented Generation)** — 构建将 LLM 与领域特定数据相结合的系统 - **Vector databases** — Pinecone、Weaviate、pgvector - **AI agents** — 自动化工作流、工具调用、多步推理 - **AI 应用架构** — 如何构建生产级 AI 系统 - **模型评估** — 基准测试、测试、安全评估 **为什么这很重要:** 我已经构建过 AI 驱动的工具——聊天助手、语音助手、具备 AI 分类功能的安全扫描器。Phase 3 旨在实现从“我会使用 API”到“我能架构生产级 AI 系统”的跨越。到 2030 年,市场对能够构建可靠、可扩展的 AI 应用(而不仅仅是原型演示)的工程师的需求将会非常巨大。 **学习方法:** 通过构建来学习。每个概念都会对应一个项目。为我的网络安全笔记构建 RAG 系统。为安全评估自动化构建 AI agent。将生产级的 AI 功能集成到我的 SaaS 项目中。 ### 阶段 4 — 安全工程 **我将学习:** - **OWASP Top 10** — 深入掌握,而不仅仅是了解概念(我已经有了扎实的基础) - **安全编码实践** — 特定语言的安全模式、输入验证、输出编码 - **威胁建模** — STRIDE、攻击树、安全架构审查 - **应用安全 (AppSec)** — SAST、DAST、依赖扫描、CI/CD 中的安全 - **Web 安全测试** — 高级渗透测试、API 安全、身份验证绕过 **可选认证:** - eLearnSecurity Junior Penetration Tester (eJPT) - CompTIA Security+ **为什么这是 Phase 4 而不是 Phase 1:** 因为从一开始我就一直在_非正式地_做安全工作——它已经融入到了我构建的所有东西中。这个阶段旨在将这些知识正规化、填补空白并获取认证。到这个时候,我将具备云基础设施知识(Phase 1)、深厚的网络功底(Phase 2)和 AI 素养(Phase 3)——这意味着我的安全思维将变得非常全面,而不仅仅是停留在“检查是否存在 XSS”。 **学习方法:** 使用 PortSwigger Web Security Academy、TryHackMe 和 Hack The Box 等平台进行实践练习。进行真实的安全评估(需获得许可)。构建安全工具并参与开源安全项目。 ### 阶段 5 — 高级工程 **我将精通:** - **分布式系统** — 一致性模型、共识算法、分区容错性 - **Microservices** — 服务边界、服务间通信、数据所有权 - **事件驱动架构** — 消息代理、事件溯源、CQRS - **消息队列** — Kafka、RabbitMQ、SQS — 知道该在什么场景使用什么 - **缓存** — Redis、CDN 策略、缓存失效模式 - **可观测性** — 日志、指标、追踪、告警(“三大支柱”) - **性能工程** — 性能分析、负载测试、大规模优化 **推荐阅读:** Martin Kleppmann 著的 _Designing Data-Intensive Applications_ — 被公认为现代后端工程的圣经。 **为什么这是最终阶段:** 因为只有当你具备了现实世界的实战经验,这些主题才真正说得通。除非你曾在云端部署过应用、处理过网络分区、排查过生产环境故障,否则你无法真正理解分布式系统的权衡。这个阶段旨在实现从“高级工程师”向“Staff 级别思维”的跨越。 **学习方法:** 深入阅读(DDIA、系统设计案例研究),构建日益复杂的分布式系统,并从届时我所就职的公司的生产环境中汲取经验。 ## 2030 年的目标定位 到 2030 年,这就是我努力追求的定位——我相信它在就业需求、薪资潜力、远程办公灵活性、创业机会以及长期价值方面,能提供最强的综合优势。
| 能力 | 深度 | | -------------------------- | ------------------------------------------------------ | | **System Design** | 能够从零开始设计可扩展的分布式系统 | | **Backend Engineering** | 在 API、数据库、服务器架构方面具备深厚专长 | | **Cloud & DevOps** | 获得 AWS 认证,熟练掌握容器、IaC、CI/CD | | **AI Product Engineering** | 能够架构并交付生产环境的 AI 功能 | | **Security Awareness** | 像攻击者一样思考,像防御者一样构建 | | **Networking** | 具备 CCNA 级别的基础设施理解力 |
这不是为了考取一堆证书或者走过场。这是为了成为那种在面对复杂问题时——一个崩溃的系统、一个新产品点子、或者一次安全事件——能够_知道该怎么做_的工程师。 ## 我的构建准则 这不是我背诵下来的公司价值观。这是我通过构建 90 多个项目总结出的血泪教训: 1. **安全绝不是事后补充。** 我从第一次提交代码起就在编写安全的代码,而不是等到发布前才打补丁。如果你理解攻击者的思维方式,你的构建方式就会截然不同。 2. **构建有用的东西,而不是华而不实的东西。** 一个拥有 100 个用户的已上线产品,比一个永远无法交付的完美原型教给你的东西要多得多。 3. **通过构建来学习,而不是通过观看。** 我路线图中的每一个概念都会对应一个实际项目。拒绝陷入只看不练的“教程地狱”。拒绝被动消费。 4. **理解全栈。** 即使作为一名以后端为主的工程师,我也希望了解从浏览器到数据库再到网络数据包之间到底发生了什么。认知上的盲区最终都会变成安全上的漏洞。 5. **分享你学到的知识。** 我编写了 20 多本教学笔记,运营着一个社区群组,并公开发布安全研究。教导别人会倒逼你真正理解你自以为已经掌握的东西。 ## 找到我
| 平台 | 链接 | | ------------- | ------------------------------------------------------------------------------------------------------------------ | | **Portfolio** | [sagarbiswas-multihat.github.io](https://sagarbiswas-multihat.github.io/) | | **GitHub** | [SagarBiswas-MultiHAT](https://github.com/SagarBiswas-MultiHAT) | | **LinkedIn** | [sagarbiswas-multihat](https://www.linkedin.com/in/sagarbiswas-multihat/) | | **YouTube** | [Sagar-MultiHAT](https://www.youtube.com/@Sagar-MultiHAT) | | **Community** | [AIUB CyberSecurity & Programming Society](https://www.facebook.com/groups/aiubcybersecurityandprogrammingsociety) | | **Email** | eng.sagarbiswas.aiub@gmail.com |
_这份文档是一份不断更新的路线图。随着我的成长、学习和调整,我会对其进行更新。如果你是一名正在探索自己道路的学生——取其精华,去其糟粕,制定属于你自己的计划。最好的路线图,就是那条你真正坚持走下去的路。_ _最后更新:2026 年 6 月_
标签:CTI, UML, 云计算, 人工智能, 学习路线, 数据可视化, 数据管道, 测试用例, 用户模式Hook绕过, 网络安全, 职业规划, 规则引擎, 请求拦截, 软件工程, 逆向工具, 隐私保护