我为何成为开发者(以及为何我仍在这里,已过去17年)
Source: Dev.to
早期起点
我曾是个 MySpace 小孩 😬,玩转动图、背景图片,还有那首几分钟内几乎概括了我整个人格的自动播放歌曲。每周更新,当然。只要有人打开我的页面,我就立刻播放——不做任何提示,也不道歉。
如果你是那种真的会钻进代码里,让自己的个人主页看起来与众不同的人……我也是。我们本可以成为好朋友。那段时期是我第一次真正体会到在屏幕上构建东西,让其他人能够实际体验的感觉。我没有给这种感觉起名字;我只知道我爱它。
高中竞赛
高中时我加入了 FBLA(美国未来商业领袖协会),参加了一个网站设计比赛,并获得了第二名。不是第一名并不重要,重要的是看到自己搭建的东西坐在那里,被人观看、被人单独评判。我是从零开始做的。它之所以存在,是因为我让它存在。那种感觉深入我的系统,老实说,从未离开过。
职业旅程
从“高中网站比赛获得第二名的女孩”到高级软件工程师的道路并不是一段高光集锦。期间充满了冒名顶替综合症、打开代码库后立刻想关掉的冲动、在 Google 上搜索本该已经知道的东西,以及因为最蠢的错误导致的部署失败。
有时我真的怀疑自己是否真的属于这个领域。我仍在学习,仍在摸索。任何告诉你这种阶段会在某个点停止的人,要么在撒谎,要么没有足够逼迫自己。跌倒并不意味着你在错误的地方——它只是说明你真的在做事。
我在 The Weather Company 工作了 16 年,构建了每天被数千万用户使用的产品。这会改变你对自己所做事情的看法。你不再把代码当作检查清单,而是把它当作真正重要的东西——因为它真的重要。当这么多人依赖你的代码正常运行时,性能不是可选项,可访问性不是附加功能,你写的代码是为真实的人、真实的设备、真实的生活服务的。
技术从未停止演进。我从 HTML 表格到 Flexbox 再到 Grid,从原生 JS 到 jQuery 再到 Angular 再到 React,从 spaghetti 代码和“只要能跑起来”到 TypeScript、组件库以及必须在大规模下保持可靠的设计系统。我不得不一次又一次地学习、重新学习,甚至彻底忘记以前的东西,次数多得数不清。
学到的教训
- 热爱这份工作: 我大多数日子真的很爱这份工作,即使在那些我绝对不爱的时候(如果这说得通的话)。
- 逻辑 + 创意: 我可以同时保持逻辑性和创造性,编写既整洁又结构化、同时好看好用的代码,有时甚至还要参与设计。
- 可访问性很重要: “好看好用”必须包括所有人。如果只有部分人能使用,那就算不上真正完成。
- 持续学习: 每个项目仍然教会我新东西——不同的问题、不同的挑战、需要解决的新事物。
那个在还不知道 CSS 是什么之前就花了太久时间完美化 MySpace 布局的女孩,如今每当组件完美呈现为原型图、每当控制台干净无误、每当她构建的东西正常工作、每当她的 PR 获得 “LGTM” 时,仍会出现。
结束语
在高中比赛中获得第二名开启了这一切。我接受它。