文科生一年转码拿到大厂ssp-全经历纪实
文科生纯自学转码,一年拿到大厂 SSP(全经历纪实)
笔者在研二的时候突发奇想做了转码的决定,花了一年时间最后上岸某大厂。尽管我个人觉得自己的速度确实不算慢了,但是也还是走了非常多的弯路,有非常庞大的信息差。所以我想借本篇文章,梳理一下这段经历,这对身处专业困境或打算转码的朋友——尤其信息差很大的文科生——或许能有些帮助。
第一阶段:无头苍蝇,囫囵吞枣
7月–10月
这一阶段主要是囫囵吞枣、像无头苍蝇一样乱撞,应该跟很多初学或者转码的朋友比较像,我的学习大致顺序是这样的:
- Python:看视频两周,没学好,但理解了基本语法。
- Java:三周,B 站各种课程,没学好,只是能部署一个后端服务,此时还非常蒙,不知道这有什么用。
- html / css / js:两周,因为学 java 的时候有某课程会让你弄一个外卖项目,然后给你个前端页面,当时我感觉很困惑,于是又去学习了这个机构的前端课程
- 计算机算法:受各个讲师和懂王蛊惑去学的,之前学语法的时候断断续续学过;两周密集地刷题,但后面发现真的一点用没有。我最后来解释为什么。这个过程非常痛苦,密集刷题的过程也在密集地摸鱼、密集地睡觉,没有沉浸感。
- sql:两周,因为学 Java 要弄数据库就学了 sql 语法,依然不知道怎么用,很懵逼,只了解了基本语法。
- linux:一周,最有用的基础知识,其实很简单:按教程部署虚拟机,用命令行操作,学基本命令即可;自此之后有一种顿悟,终于进了计算机的语境。
- git:三天。我这时才开始学——笨蛋文科生绕完所有弯路,才想起来该专门学这个,结果发现又特别简单。之前写 Java、Python 做项目根本用不上 git,但不用它就进入不了「计算机的语境」,连拉别人代码都不会……回想起来真的无语。
第一阶段小结
做个小结。我为什么学习各种东西,因为市面上的转码课程都是这么教你的,学语法、再学算法沉淀一下,然后去做项目。但这段如无头苍蝇乱撞中,对我之后真正有用的知识只有:基础语法、git、linux。同样,如果你打算提前学习基础知识的话,我建议就是 linux、git、基本语法(任何一门语言都行),语法能理解面向对象即可(虽然我现在都不用面向对象了……)。总之基础语法就是 if else、while 循环、for 循环、函数、变量、对象,所有语言都一样,只是书写规范略有不同。
第二阶段:蝶变
10月-11月
前面的学习经历让我挺痛苦的:我本来就不爱被人按着学,那些庞杂的知识在脑子里只是走过场,没有真正内化成自己的东西。痛苦归痛苦,却催生了一个后来看很对的想法——得自己做一款软件才行。B 站很多课也会让你「做项目」,但那是人家给你现成的项目、配好环境,你照着做,这不是真正做项目。当时前端、后端、数据库都碰过,知识却全是散的;更关键的是,你不会从零立项、不依赖别人的脚手架自己搞出一个东西——这种自己探索的能力才是后面一切的基础。
于是,第一次蝶变开始了。当时和文科生小伙伴每周读书会,用 notability,觉得不好用,想能在某一页插入音频(我们是逐页、自上而下读)。于是突发奇想:要不要自己做一个新 notability,满足自己的需求,还能在 macOS、Windows 上多端使用。
于是开始了一个月的硬搞:首先就是技术选型,考虑到需要多端,于是选择了 flutter,然后 flutter 这个技术需要使用 dart 语言,于是就去学习了 dart。后续要用到很多的 dart 生态的技术栈,比如渲染 pdf 的,比如音频的。但是,真的很难用而且丑,如果要做得好用,工作量真的太大了,当时还没有 vibecoding,于是就放弃了。

第二阶段小结
这次从零开始的努力和尝试,让我掌握了软件开发最重要的能力,也是码农的日常————寻找积木、理解积木、组合积木,在组合的时候逐渐地深化对积木的理解,然后继续重复。既然明白了这一点,大家应该也就理解为什么我很不提倡大家上来说我应该学些什么,而是我要做什么,我要怎么做到这个。只是为了做一个软件,你绕不开 git、基本语法只是、linux,其他的知识都是在你找到积木后,再去干中学就好了(甚至这三个基础知识也完全可以干中学)。
第三阶段:social + 开摆
11月 - 12月
到了 11 月,本打算做前端后端都有的项目,结果被区块链拐跑了。当时链圈风大,自己又觉得上大厂没戏,想着区块链兴许更接纳跨专业的小白,于是 11 月系统地学了一轮区块链,12 月搞了个小 demo:学 Move、摸 Solidity,把前端 + 钱包支付跑通。还申上了上海的 Move 开发者大会,包酒店那种。现场啥也不懂、纯小透明,周围全是清北复交浙或各种大佬,我就去蹭了趟会。最大的收获是自信:之后更敢报黑客松了。这类活动报名门槛真没想象中高,学了一阵想出去见见世面、找找队友的话,很值得考虑;另外就是,对文科生包容度也很高,会尊重你的背景。挺感谢这些技术社区的,让我一个外来者有一些亲切的感觉。
1月 – 2月
这段时间回家过春节了,然后基本上是在摆,每天都在金铲铲和炒币。不过参与了一个链圈的小社区,进一步了解了区块链的一些技术,然后了解了一下 react,不算系统地学。然后就是炒币……一段不可言说的黑历史,币圈水太深,至今心有余悸。
第四阶段:重新做人
3月
3 月,重新做人。报了场 ETH 的全球黑客松,群里有人发招募我就进了队,我就被拉进去用 Expo 搞了 ios app,团队里还有专业设计师,跟设计对接对我帮助很大。最后,项目没拿奖。就是深化了对前端、移动端开发的理解吧。
4月-5月
4月,已经要准备秋招了,我还没有任何实习,当时打算放弃秋招奔春招,心里半焦虑半懒惰。然后又看到了一个币圈的黑客松。就想着能不能去黑客松找大佬、跟着干。借助之前读书会那个项目,进了一个线下黑客松,全程大概 20 多天。
黑客松期间遇到了微扰和另外两个小伙伴,微扰对我的帮助非常大,是很重要的技术引路人,人也很 nice、愿意带我,转码过程中影响最大的人之一。黑客松期间和他们做了一个 nextjs 项目,这个项目让我真正地深入 react 生态,也系统地明白了做前端开发需要的全部技术栈。
期间,我还面试了很多家公司,这段时间被迫要搞算法和八股了,但我再强调一下,算法和八股是完全没有必要的(不是大模型算法),除非你要面试了。但面试对八股和算法的要求其实晦暗不明,跟面试官本人的关系很大,但总体其实更看重你做了哪些项目、用了哪些技术、做项目时有哪些理解、踩了哪些坑,这才是最重要的。
第五阶段:第二次蝶变
6月-10月
黑客松结束后,我面了一家外企:不考算法八股,只考察 React 和 React 相关的生态,考察你的项目经历。黑客松经历 + 跨专业背景把我送进了这家公司实习————算我目前的职场白月光了,前司的朋友们,个个是人才,说话又好听,我超喜欢这里。要不是未来不打算待在北京,大概率会继续待下去。
我详细描述一下我的工作体验:实习待遇很满意,商科实习很多倒贴钱,懂得都懂,这边月薪大概 7500 左右,氛围极好。公司名就不报了,不想暴露马甲,感兴趣可私聊。这段实习让我真正地摸到了企业级开发该学什么、程序员之间怎么协作,把之前零散的知识都串起来了,成长很大。10 月离职时弄完了一个前端编辑器项目————愿意把这种项目交给当时的我,真的泪目。同事也都很包容,我 mentor 对我无微不至,这个肯定跟 mentor 的性格有关,但也是公司非常地尊重员工的工作体验,对比较社恐、对自己技术也不自信的我帮助特别大。
其实现在想想还有点不好意思:本来说待 6 个月,我 3 个月就跑了。
第六阶段:上岸
11月
期间在业余时间自己和微扰合作的项目参加了很多场黑客松,因为我在实习,其实我没做很多工作,主要是微扰带飞。拿了不少黑客松奖励,感谢微扰。
12月
实习结束回家躺着,开始各种面试,一边继续和微扰合作看有没有创业可能,一边自己面各家大厂、学算法八股。然后拿到了某大厂 offer,其实有几家,最后选了薪资最高的。算是小 ssp 吧,有签字费那种。
总结与反思
至此转码就结束了。总而言之,最重要的是那个没做完的读书会项目,带我入门、开始各种中途而废的技术探索——中途而废可能是 intp 的归宿吧……然后打了黑客松,遇到很好的人帮我,进了一家很好的公司。
当然我知道,转码最难的其实不是过程,其实还是沉没成本:九年义务教育、三年高考、本科四年,选定专业后就很难改了。那时我对计算机其实有企图,但保研压力不小,大一到大三想要业余自学技术还是很困难的。不过研究生遇到一个很好的导师,给了我很多时间和自由去做自己的事情。
想跟有同样想法的文科生朋友说几句:如果真感兴趣,别被沉没成本吓住。我上面写的目标像是冲大厂,但转码之后选择其实很多——独立开发、自媒体、融资创业,进入初创公司等等,上岸大厂只是我当时的其中一条路。文科背景不会因为学了技术、所谓转码就废掉,我至今还受益于和文科生小伙伴一起读过的那些书,也会因为这些被更前沿、开放、有潜力的团队看重。大厂上岸之后,我花了不少时间做独立开发、尝试自己的产品,越来越意识到营销的重要,也发现文科背景在持续帮上忙;独立开发这块目前还是一事无成,但总相信有一天能做出点东西。我始终觉得,我们需要把技术现实引介入文化的人,而对技术的追问里,本身就藏着人自身的“救渡”。
最后,回想起我转码之前的某个夜晚,因为对未来焦虑而失眠的夜晚,一个突如其来的想法,给了我莫大的勇气——假如世界真的是一个草台班子呢?