【年终总结】从非科班无实习到准字节前端:我始终相信,开发之外的事,才是破局关键

【年终总结】从非科班无实习到准字节前端:我始终相信,开发之外的事,才是破局关键

目录

【年终总结】从非科班无实习到准字节前端:我始终相信,开发之外的事,才是破局关键

一、求其外,善其内

1、坚持出发点正确的博文写作

2、博文更新对我心态的淬炼

3、社区交流对我视野的启发

4、向外拓展,反哺内修

二、陷入前端则前端死,跳出前端则前端活

1、从不务正业到泛前端

2、从泛前端到大前端,从有形到无形

三、秋招多少事

四、结语


        作者:watermelo37

        ZEEKLOG优质创作者、华为云云享专家、阿里云专家博主、腾讯云“创作之星”特邀作者、火山KOL、支付宝合作作者,全平台博客昵称watermelo37。

        一个假装是giser的coder,做不只专注于业务逻辑的前端工程师,Java、Docker、Python、LLM均有涉猎。



---------------------------------------------------------------------

温柔地对待温柔的人,包容的三观就是最大的温柔。

---------------------------------------------------------------------

【年终总结】从非科班无实习到准字节前端:我始终相信,开发之外的事,才是破局关键

        这年头,非科班、无实习、学历没优势,想进互联网大厂,听起来近乎天方夜谭——人才过剩、赛道内卷、AI横行,前端首当其冲。社区里“前端已死”的论调年年翻新,岗位缩减也是事实,如何在这种囹圄之下突出重围?

        我的答案是:开发之外的事,才是破局关键。

        回顾我的秋招:我聚焦头部大厂,多数面试流程顺利推进至终面,并有幸获得多个公司认可,最终均给出 SP/SSP 级别的offer,最终选择字节。其中一家公司在得知我已有三方后,仍多次主动沟通,表达了强烈意愿。

        如果你有兴趣或者未来有求职需求,不妨听我絮叨几句,或许能给你一点启发。

一、求其外,善其内

        “求其上,得其中”的道理人尽皆知,我将其改为“求其外,善其内”——意指向外拓展,反哺内修

1、坚持出发点正确的博文写作

        24年的3月,我开发一个用户上传 PDF 并识别文本的功能时,发现某 python OCR 库在上传特定文件下执行会报错,深入排查源码后,发现其错误处理逻辑仅用 if 跳过异常,未考虑连续错误场景——改为 while 后问题解决。这件事花了我大量时间调试,于是我在 ZEEKLOG 写下第一篇技术博文,记录这一发现。

        没想到,这一写便停不下来。从 bug 排查、基础 API 梳理,到前沿技术解析、前端实战复盘……我逐渐摸索出适合自己的节奏,随后便坚持至今。

        回首望去,除了满足不了博客之星评选的年度文章发布总量(该维度100篇满分,一年100篇也太多了)外,我的收获极大,我抱着基础坚实与实战至上的双重策略,持续寻找可以归纳总结的博文内容。为了能把一个问题讲清楚,我需要吃透官方文档、读懂底层代码、理解团队里那些精妙的实现,我看懂学懂才敢动笔分享——而受益最多的,其实是我自己。

        此外,在我每次遇到新鲜的问题,我往往会更加跃跃欲试,新鲜的问题意味着有更多意外的收获,能产出更多有价值的博文内容,我融会贯通的能力也会随之加强,形成良性循环。遇到重复的工作或者问题,我又能第一时间想到我的博文,能把它当做字典迅速回忆和复用。秋招期间,在同门之间讨论面试官提出的犀利问题时,我经常能发现这就是我历史博文中涉及到的一个知识点或者场景。

        过去我用 ProcessOn 做思维导图搭建个人知识库(如下图,如果没有AI这就是最好的个人知识数据库,随时一键唤醒记忆),但在今天这个 AI 泛滥的时代,持续输出的博文反而成了更鲜活实用的个人技术资产。

曾经的思维导图,如果没有AI这就是最好的个人知识数据库,随时一键唤醒记忆

        所以说,坚持出发点正确的博文写作,是工作之余的锦上添花,也是我技术堡垒的坚实基础,更是我技术自信的根本底气。

2、博文更新对我心态的淬炼

        记得今年春,我参加一个从零到一的国产化项目,一边是陌生的业务逻辑和数据结构,一边是国家级关注与高压交付——那段时间,我经常干到凌晨两三点,睡四五小时又爬起来继续干。即便如此,我依然能依靠自己的存稿和挤出来的时间保持着一定的更新频率。

        这种压力下的坚持,不是自我感动,而是一种对失控的抵抗。在我项目交付后或者手上只有长期开发项目的时候,博文更新的压力又能督促我保持学习节奏的底线,我会在稍微轻松的日子里大量存稿,总结前段时间的优质代码和技术发现,为后面可能到来的高强度周期留出缓冲。

        这就是我持续写博文最初的原因:我需要在我不想或不用写代码的时候,给自己找点有意义的事情做,在我着急忙慌赶进度追进展的时候,又能插入一个“暂停符”让我回头看。我深知按部就班地完成任务无法带来真正的成长,经验在思考和总结的过程中才会大量积累。

3、社区交流对我视野的启发

        除此之外,社区也让我认识了很多志同道合的朋友,他们热衷追求的技术,时下讨论高涨的热点,为我的技术视野带来了不少的启发。

        不止局限于前端,后端、python服务、亦或其他语言和框架,我渐渐意识到:所有的语言都只是手段,而并非目的,它们只有效率高低之分,却没有等级高下之别,解决问题的思维是所有语言通用的,在寻求解决方案,解决实际需求的道路上,语言只是载体,思想才是驱动力。

        前不久我写了一篇封装 try-catch 的文章,提出用线性范式替代 try-catch 嵌套异常处理的思路,就是从node.js、go开发的错误优先风格而来的。这种跨语言的迁移能力,远比死守某个框架重要。

4、向外拓展,反哺内修

        正因如此,我始终相信:只把本职开发工作做好,结果只有“好”或“不好”两种;但如果坚持在完成工作的基础上,持续向外拓展,也就是我“求其外善其内”的“外”,为了把“外”做得有型有质,我不得不把“内”做得更深、更善、更美。这种内外互促的闭环终有一天又能为我的本职工作添砖加瓦,成长就在这个过程中悄然发生。

二、陷入前端则前端死,跳出前端则前端活

1、从不务正业到泛前端

        跳出前端那不是不务正业吗,不务正业又如何活?事实上,我认为纯前端正逐渐式微,泛前端正在逐渐成为必然。

        今年某大厂面试官提到他们部门需要的是能熟练运用 js 解决各类问题的人,但面试的时候很多应聘者只会处理前端问题,这样无法解决搜广推的具体业务,自然也就胜任不了这份工作。

        自从前后端分离后,联调常陷入相互甩锅的状态,尤其是版本更迭的前后——问题出在哪?双方都说不清。根源在于技术栈割裂。如果前端懂一点服务端逻辑,不仅能减少沟通成本,甚至能帮后端定位问题。

        而随着 AI 的持续发展,前端基础技术壁垒会越来越薄,如果不补全泛前端知识,最后只能固守日益狭窄的技术边界,这路就越走越窄了。

2、从泛前端到大前端,从有形到无形

        我“跳出前端”的尝试不止于此:除了做过后端,我还做过 python 服务层,比如 OCR 识别、RAG增强检索;用 Docker 容器化环境实现在线编程;做过简单的协作式组件,可回溯可共享的在线文档;做过低代码可执行工作流;还做过可迭代交互的多模态产出 AI 助手工具等等,这些严格来说都不属于基础前端开发,但是它们的产出最终都服务于更好的前端体验,这些经历也让我在实际工作中,能更高效地与后端、算法、运维等人员沟通。

        前端也好,测试也罢,哪怕是后端,都会逐渐走向自动化、低代码化,AI 替代是不可逆的趋势。唯有拥抱新技术,才不会被它淘汰。就像早年 Docker 兴起的时候,所有留守虚拟机和不重视容器化运维思想的团队都吃了大亏。AI 时代亦是如此,非技术人员用 AI 做全套自由开发,在现有框架下几乎不可能;但技术人员若不懂 AI,将很快失去不可替代性。要找准 AI 做不到的地方,深挖、夯实,才能求得一处安稳之地。

        放开手脚,大胆去做,不要被技术领域限制了自己的兴趣和追求,打破有形的技术边界,追求无形的技术深度与广度,将技术回归到实践本身。一切能让用户感受更好,交互体验更自由,突破性能瓶颈的技术,都是好技术,也是泛前端所需要接纳的技术。

        开发之外,是更多的开发视角,前端之外,是更广阔的前端领域。

三、秋招多少事

        囿于篇幅原因,这部分简单提一提,有兴趣的朋友欢迎与我展开讨论。

        对于我来说,秋招更像是秋收,结合组里的历史,我知道进大厂是大概率事件,关键是具体平台和业务上的选择。

        比如我中断了京东的面试流程,是因为听说午休普遍只有 1-1.5 小时。而我是个不午睡就没精力的“懒人”,这点时间根本不够恢复饱满的精力投入工作。又比如我明确不想加入拼多多,因为实验室长期单休已让我感到疲惫,随着年龄增长,我更需要可持续的生活节奏。

        这些看似琐碎的考量,其实是长期主义的坚守,是我能够胜任工作的基础前提。

        有位面试官在面试尾声打趣:“写博文是个好习惯,但等你上班忙起来恐怕就没时间写了。”我笑着应和,表示会努力坚持下去,我自己也会集中写存稿,积极应对突发压力。

        但若不是面试环节,我也许会更直白些:“不必考虑人生新阶段的变数,我现在还在写,能把这周的份额写完,这就够了。技术探索本无止境,正如胡适先生所言,怕什么真理无穷?进一寸有一寸的欢喜。

        秋招过程中,我整理了近两万字的面试复盘,并在结束后写了一篇两万九千字的《秋招多少事,归来知不知》,算是为这段人生节点留下一份完整的记忆。

        这些看似与技术无关的生活节奏选择,这些看似与未来开发工作无关的文字积累,其实是我对“开发之外的事”思考与突破的不断尝试。套用鲁迅先生的一句话:哪有什么正确的选择,合适的尝试做得多了,慢慢就会成为正确的选择。

四、结语

        这些年的选择与努力让我深深地明白一个道理:没有什么是做不成的,只有时间是不可逆的。只要有意识的持续思考,在基础开发工作之外选择一个合适的方向,养成奔跑的习惯,剩下的,就交给时间。

        谨以此文,作为我技术追求角度出发的年终总结,愿与诸君共勉。

        愿我们都能在技术路上保持清醒与热情,所选无悔,所得无愧;生活明朗,未来可期!

        只有锻炼思维才能可持续地解决问题,只有思维才是真正值得学习和分享的核心要素。如果这篇博客能给您带来一点帮助,麻烦您点个赞支持一下,还可以收藏起来以备不时之需,有疑问和错误欢迎在评论区指出~

        其他热门文章,请关注:

        极致的灵活度满足工程美学:用Vue Flow绘制一个完美流程图

        你真的会使用Vue3的onMounted钩子函数吗?Vue3中onMounted的用法详解

        Web Worker:让前端飞起来的隐形引擎

        测评:这B班上的值不值?在不同城市过上同等生活水平到底需要多少钱?

        通过array.filter()实现数组的数据筛选、数据清洗和链式调用

        DeepSeek:全栈开发者视角下的AI革命者

        TreeSize:免费的磁盘清理与管理神器,解决C盘爆满的燃眉之急

        通过Array.sort() 实现多字段排序、排序稳定性、随机排序洗牌算法、优化排序性能

        高效工作流:用Mermaid绘制你的专属流程图;如何在Vue3中导入mermaid绘制流程图

        通过MongoDB Atlas 实现语义搜索与 RAG——迈向AI的搜索机制

      【前端实战】如何让用户回到上次阅读的位置?

        前端实战:基于Vue3与免费满血版DeepSeek实现无限滚动+懒加载+瀑布流模块及优化策略

        深入理解 JavaScript 中的 Array.find() 方法:原理、性能优势与实用案例详解

        el-table实现动态数据的实时排序,一篇文章讲清楚elementui的表格排序功能

        JavaScript双问号操作符(??)详解,解决使用 || 时因类型转换带来的问题

        内存泄漏——海量数据背后隐藏的项目生产环境崩溃风险!如何避免内存泄漏

        MutationObserver详解+案例——深入理解 JavaScript 中的 MutationObserver

        JavaScript中通过array.map()实现数据转换、创建派生数组、异步数据流处理、DOM操作等

Read more

Flutter 三方库 opml 的鸿蒙化适配指南 - 支持大容量订阅源解析、符合 OPML 2.0 规范与 RSS 管理器核心适配

Flutter 三方库 opml 的鸿蒙化适配指南 - 支持大容量订阅源解析、符合 OPML 2.0 规范与 RSS 管理器核心适配

欢迎加入开源鸿蒙跨平台社区:https://openharmonycrossplatform.ZEEKLOG.net Flutter 三方库 opml 的鸿蒙化适配指南 - 支持大容量订阅源解析、符合 OPML 2.0 规范与 RSS 管理器核心适配 前言 在进行 Flutter for OpenHarmony 的阅读类、播客类或 RSS 订阅类应用开发时,支持标准的 OPML(Outline Processor Markup Language)导入与导出是必选功能。opml 库是一个专门用于解析和生成 OPML 文件的 Dart 库。本文将探讨如何在鸿蒙系统下,利用该库高效管理用户的订阅树结构。 一、原理解析 / 概念介绍 1.1 基础原理 OPML 本质上是一种基于

By Ne0inhk
【高级终端Termux】在安卓手机/平板上使用Termux 搭建 Debian 环境并运行 PC 级 Linux 应用教程(含安装WPS,VS Code)

【高级终端Termux】在安卓手机/平板上使用Termux 搭建 Debian 环境并运行 PC 级 Linux 应用教程(含安装WPS,VS Code)

Termux 搭建 Debian 环境并运行 PC 级 Linux 应用教程 一、前言 1. 背景 众所周知,最新搭载澎湃OS和鸿蒙OS的平板都内置了PC级WPS,办公效率直接拉满(板子终于从“泡面盖”升级为“生产力”了)。但问题来了:如果不是这两个系统,难道我们只能继续用平板盖泡面吗?当然不是!折腾了很长时间后,总算找到了一个好玩的东西:高级终端Termux 。现在,不仅能随时随地用WPS改文档,还能VSCode优雅地敲代码,再也不用背着电脑乱跑了。 由于每次搭建环境时都要去不同的平台找不同功能,有时还找不到,所以我决定自己写一篇博客,方便自己以后再搭建时直接“Ctrl C + Ctrl V”,顺便分享给有同样需求的小伙伴们。话不多说,直接开整! 2. 准备工作 * 一部安卓手机:性能越好,折腾起来越顺畅。 * Termux 应用: 不想去F-droid下载的看过来

By Ne0inhk
Flutter 三方库 filterator 的鸿蒙化适配指南 - 掌握声明式数据流过滤技术、助力鸿蒙应用构建极速且易维护的复杂列表筛选逻辑

Flutter 三方库 filterator 的鸿蒙化适配指南 - 掌握声明式数据流过滤技术、助力鸿蒙应用构建极速且易维护的复杂列表筛选逻辑

欢迎加入开源鸿蒙跨平台社区:https://openharmonycrossplatform.ZEEKLOG.net Flutter 三方库 filterator 的鸿蒙化适配指南 - 掌握声明式数据流过滤技术、助力鸿蒙应用构建极速且易维护的复杂列表筛选逻辑 前言 在 OpenHarmony 鸿蒙应用全场景信息交互的开发中,“数据清洗与过滤(Data Filtering)”是提升用户体验的关键环。当你需要在一个包含上万件商品的电商列表中,同时根据“价格区间”、“用户评分”、“物流时效”以及“是否有货”进行复合筛选时,嵌套的 if-else 或繁琐的迭代逻辑会让代码迅速变得臃肿且难以调试。filterator 作为一个专为 Dart 集合设计的声明式过滤利器,旨在通过链式调用与逻辑组合,将复杂的数据筛选过程转化为语义清晰、模块化的流式配置。本文将介绍如何在鸿蒙端利用 filterator 打造极致的数据交互体验。 一、原原理分析 / 概念介绍 1.1 基础原理 filterator 的核心逻辑是 基于谓词逻辑的集合管道过滤器

By Ne0inhk
Flutter 三方库 vendure 的适配鸿蒙实战 - 驾驭核心电商交易总网,实现 OpenHarmony 下的大并发 GraphQL 无头电商网关与数据强防腐

Flutter 三方库 vendure 的适配鸿蒙实战 - 驾驭核心电商交易总网,实现 OpenHarmony 下的大并发 GraphQL 无头电商网关与数据强防腐

欢迎加入开源鸿蒙跨平台社区:https://openharmonycrossplatform.ZEEKLOG.net Flutter 三方库 vendure 的适配鸿蒙实战 - 驾驭核心电商交易总网,实现 OpenHarmony 下的大并发 GraphQL 无头电商网关与数据强防腐 前言 随着鸿蒙(OpenHarmony)生态的全球化出海,超级应用与万物互联的电商新纪年已经拉开帷幕。我们在将手机、平板、车载大屏甚至穿戴设备接入商城入口时,必须面对传统 RESTful 接口带来的巨大挑战:接口散乱、冗余数据多、联调效率低。 在处理类似 0308 批次这种千万级大字段的商品详情系统时,如果前端对后端接口的变动缺乏抗崩御能力,一次小小的结构调整就可能导致全链条的业务断裂,直接造成现金流的损失。我们需要一种“逻辑高层编排、数据按需即取、边界强悍防御”的接口总网。vendure 库正是为此而生的 GraphQL 客户端架构重炮。本文将详细揭秘它如何帮助你在鸿蒙端打造一套坚不可摧的交易底盘。 一、原理解析 / 概念介绍 1.

By Ne0inhk