总结前端三年 理想滚烫与现实的冰冷碰撞

总结前端三年 理想滚烫与现实的冰冷碰撞

大家好,我是500佰,技术宅男 目前正在前往独立开发路线,我会在这里分享关于编程技术独立开发技术资讯以及编程感悟等内容

6月3日的一篇《一个普通人的30岁 他经历了什么》介绍一篇自己的碎碎念、即回顾自己以前的成长经历,那么再接着说下这3年来的工作经历,2022年1月,我以一名前端新人的身份开始了职业生涯。每当看到浏览器中运行的网站、手机里流畅的APP,或是点击按钮后转动的loading图标,都会想到这些产品背后凝聚着无数开发者的心血。我既期待能成为这个创造数字世界的一员,又难免担心:自己的技术储备是否足够?会不会被身边优秀的同事远远甩在身后?
怀揣着对未来的憧憬与一丝忐忑,我正式踏入了职业生涯的第一站。

不断尝试和调整的前两年(2022 ~ 2024)

我的职业生涯始于一家颇具特色的企业。原本以为会从事移动应用或网站开发,没想到公司专注于打造一款独特产品——我们开发了一系列可复用组件,配合自主研发的拖拽式平台,能够快速搭建Web站点。这种模式与后来流行的低代码平台颇有相似之处。
作为一名Java工程师加入公司后,却发现实际工作内容与预期有较大差异。当时还不了解’前端开发’这个概念,只是困惑于为何很少接触Java开发,反而需要维护各种组件。初期内心十分抗拒–既没有相关技术储备,又担心长期从事前端工作会导致Java技能生疏,更忧虑职业发展路径的偏离。

随着对前端技术的深入探索,我逐渐发现了这个领域的魅力所在。Chrome浏览器提供的强大调试工具、SublimeVs Code等现代化编辑器的流畅体验,与Java开发中IDEA那种修改代码后需要漫长重启的繁琐流程形成鲜明对比,更加轻量。这种高效愉悦的开发体验,让我逐渐转变了最初对前端工作的抵触情绪,最终不仅接受了这个方向,更开始享受其中的乐趣。

这是一家规模很小的创业公司,办公环境简单明了:公司高管和技术经理、PM等各自有独立办公室,其余员工则集中在一个大开间的办公桌,按职能划分为Tech Team 研发和质量保证团队。由于公司产品以客户端软件为主,版本发布节奏稳定规律,员工们保持着朝九晚六的规律作息。印象中,整个任职期间仅有一次加班到晚上10点,工作氛围轻松,鲜少感受到压力。

在这里插入图片描述

小黄牛总认为安逸是种罪过(总会有种莫名的焦虑感),朝九晚六的稳定工作会让人失去竞争力。在这种想法的驱使下,我开始考虑跳槽。通过梳理日常工作内容,我发现自己从事的工作其实有个专业名称——前端工程师,于是便将这个职位作为新的职业目标。

第一次内推机会来自一家名为鱼无极的公司。面试经历让我记忆犹新:原本以为日常工作涉及的技术已经覆盖前端领域,我信心十足地前去面试,却遭遇了滑铁卢。面试官提出的CSS布局问题让我措手不及——需要在纸上画出一个圆形图片和右侧文字排版的实现方案。由于平时工作中主要使用现成组件,通过组件API来调整样式,这种需要手写CSS解决实际问题的场景完全超出了我的经验范围。

不出所料,这次面试以"回去等通知"告终,但也让我清楚地认识到自身技术上的不足。

这次面试失利让我意识到自己在前端领域的知识储备严重不足,于是决定暂缓求职,转而开始系统性自学。我采取了多种学习方式:研读前端专业书籍、分析H5模板站的实现原理、在博客园研读技术大牛的文章。

在学习过程中,我发现一位博主的前端技术文章质量极高,恰好他的签名栏附有一个vx号。大佬带我入圈,为了达到入群要求,我专门注册了GitHub账号并撰写了几篇技术博客,最终成功加入该群。这个技术交流群后来成为了我学习成长的重要资源库,为后续的进步提供了关键支持。

经过几个月的刻苦自学,我自认为已经掌握了前端开发的基础技能,于是开始在智联\BOSS招聘上投递简历。很快,我收到了一家公司的面试邀请。这次面试过程异常顺利,我成功以前端工程师的职位加入了这家公司。

然而命运似乎总爱开玩笑。入职后我才了解到,公司之所以招聘前端开发,是因为原先的前端工程师突然离职,留下了一堆未完成的项目和一个只有美工背景的同事。这个出人意料的局面,成为了我职业生涯中又一个意想不到的转折点。 还记得入职第一天,用card:nth-of-type(3n+1) 选择器精确控制特定位置的元素样式,避免了使用额外的类名或复杂的JavaScript操作 ,在内心安慰自己:可以了,至少你现在在做正常的前端工作了。

在接下来的几个月里,我逐渐意识到公司对前端工程师的定位与我的预期相去甚远。除了常规开发工作外,我甚至需要协助客户端开发同事完成从Adobe Photoshop软件将设计稿中的元素切割导出为可用于网页或App开发的图片资源切图这样的基础工作。不过值得庆幸的是,公司保持着9:00-18:00的稳定工作时间,这让我有充足精力投入到技术研究中。在这段时期,我成功将LessReduxaxios请求库引入老旧项目,显著提升了开发效率。更令人欣喜的是,我业余开发的一个图片旋转小游戏意外获得了公司的认可,被采纳为公众号的日常互动小游戏。这些小小的成就让我一度觉得工作还算顺心。

然而好景不长,当我在技术方案上与担任Java开发的老板产生分歧时,一句"这是最佳实践方案"的武断决策,彻底浇灭了我的工作热情。这种缺乏技术依据的专断让我倍感无力,也再次萌生了寻找新机会的念头。

职业发展的重要转折出现在一次偶然的社群招聘中。从传统IT企业到互联网公司的面试经历形成了鲜明对比:开放式办公环境、创意装饰、完善的休闲设施展现了完全不同的企业文化。技术面试环节,当被问及技术愿景时,我提出了云端同步工具的开发构想。这次成功的面试使我顺利加入,完成了从传统软件到互联网行业的关键转型。

互联网大潮中的探索与突破 (2025)

入职前已通过技术预研和作业考核(涉及Nodejs、React、nextjs、Koa、Express、Redis、MySQL、RocketMQ、RabbitMQ等技术栈),为后续工作打下坚实基础,使得入职后能够快速适应互联网开发节奏。

“我们不是在建造流水线,而是在培育热带雨林。”–产品的团队leader力还是可以的,业余时产品经理从零食柜能掏出两打啤酒,入职互联网公司后的氛围感让我一个从传统软件行业过来的人觉得非常棒,虽说互联网公司的工作氛围是非常轻松愉快的,但工作内容实打实的带给我了压力,App 功能的迭代是非常迅速的,从项目需求介绍,产品设计、技术选型、技术架构图、业务流程设计这些工程工作量是非常大的,第一次接触到了工程化,当时工程内处于 grunt、gulp 并存的状态,工程又被构建升级为了 webpack,也是经由这些工程能够有场景实际使用 React 来进行开发,在这里第一次接触到了工程上线,H5 也都是采用的 SSR,因此工作中不可避免的接触到了 Node。非常感谢这份工作带给我的成长。在机缘巧合下,总是有机会出现在自己的眼前,每次也都能比较好的抓住,每当重要机会出现时总能及时把握,加上领导的信任,让我的工作成果始终保持在第一梯队,很幸运在职业发展关键节点遇到重要机会。

总结

回顾来看这3年:

  • 记得最初两年就像在迷雾中摸索前行,每次尝试都带着不确定
  • 踏入互联网领域,那些熬夜啃文档、周末泡技术文章的日子,硬生生逼自己一把

我是500佰,技术宅男 目前正在前往独立开发路线,我会在这里分享关于编程技术独立开发技术资讯以及编程感悟等内容给500佰点个赞吧 ~

#前端 #程序员 #编程 #经验

往期推荐

< 上一篇· 程序员都知道日志记录重要,为何还有人在这基本功上栽跟头?

Read more

AI大模型学习和八股文资料合集

AI大模型学习和八股文资料合集

关于 随着人工智能技术的飞速发展,AI大模型(如GPT、LLaMA、ChatGLM)已成为推动行业变革的核心力量。无论是开发者、研究者,还是产品经理,掌握大模型的核心技术与应用方法都至关重要。然而,面对海量学习资源,如何高效入门并深入实践,往往令人感到无从下手。为此,企鹅整理了这份AI大模型相关资料合集,涵盖从理论到实践、从入门到进阶的全方位学习资源,助你快速提升大模型领域的知识与技能! 0.资源分类介绍 1. AI产品经理书籍与面试 * 核心内容:AI产品经理的必备知识,包括系统化思维、数据标注、语音识别、数据挖掘等。 * 亮点资源: 《AI产品经理入门手册》(上下册):快速掌握AI产品设计方法论。 《AI产品经理面试高频100题》:助力面试准备,提升求职竞争力。 * 适用人群:AI产品经理、技术转产品岗的开发者。 2. 各种报告 * 核心内容:大模型行业的最新动态、技术趋势与应用案例。 * 亮点资源: 《2023大模型落地应用案例集》:深度解析大模型在政务、金融、教育等领域的成功实践。

llama-cpp-python上下文窗口扩展:突破长度限制技巧

llama-cpp-python上下文窗口扩展:突破长度限制技巧 【免费下载链接】llama-cpp-pythonPython bindings for llama.cpp 项目地址: https://gitcode.com/gh_mirrors/ll/llama-cpp-python 在处理长文档、多轮对话或复杂任务时,你是否经常遇到模型上下文窗口不足的问题?本文将介绍三种实用方法,帮助你突破llama-cpp-python的长度限制,轻松处理超长文本。读完本文,你将掌握:基础参数调优、滑动窗口实现和智能文本分块的完整解决方案。 核心参数解析:n_ctx与RoPE缩放 llama-cpp-python的上下文窗口大小主要由n_ctx参数控制,默认值为512 tokens。通过修改这个参数,可以直接调整模型能处理的最大上下文长度。以下是关键参数说明: 参数名类型描述默认值n_ctxint上下文窗口大小(tokens)512rope_scaling_typeintRoPE缩放类型LLAMA_ROPE_SCALING_TYPE_UNSPECIFIEDrope_freq_ba

Core ML Stable Diffusion调度器终极指南:DPM-Solver与PNDM深度解析

Core ML Stable Diffusion调度器终极指南:DPM-Solver与PNDM深度解析 【免费下载链接】ml-stable-diffusionStable Diffusion with Core ML on Apple Silicon 项目地址: https://gitcode.com/gh_mirrors/ml/ml-stable-diffusion 还在为图像生成速度慢而烦恼?想要在Apple设备上快速获得高质量AI图像?本文将从实战角度为你深度解析Core ML Stable Diffusion中两大主流调度器——DPM-Solver与PNDM的核心差异,帮助你在速度与质量间找到最佳平衡点。 从用户痛点出发:为什么调度器如此重要? 当你使用Stable Diffusion生成图片时,是否遇到过这些问题: * 生成一张512×512的图片需要等待几分钟 * 增加迭代步数后质量提升不明显,但耗时却大幅增加 * 在iPhone或MacBook上运行时内存占用过高 这些问题的根源往往在于调度器的选择。调度器就像是AI绘画的"导演",负责控制从随机噪声到

node-llama-cpp错误处理与调试:解决本地AI开发常见问题

node-llama-cpp错误处理与调试:解决本地AI开发常见问题 【免费下载链接】node-llama-cppRun AI models locally on your machine with node.js bindings for llama.cpp. Force a JSON schema on the model output on the generation level 项目地址: https://gitcode.com/gh_mirrors/no/node-llama-cpp node-llama-cpp是一款强大的工具,它提供了llama.cpp的node.js绑定,让你能够在本地机器上运行AI模型,并在生成级别强制模型输出JSON模式。对于新手和普通用户来说,在使用过程中可能会遇到各种错误和问题,本文将详细介绍常见错误的处理方法和调试技巧,帮助你顺利进行本地AI开发。 常见错误类型及解决方法 二进制文件未找到错误(NoBinaryFoundError)