自从我上一篇文章以来,有了更多的进步,我每天都更加意识到不做假设并始终验证信息的重要性。在我的承包商工作中,我们正在开发两个单元。根据我所听到的信息,我认为其中一个功能齐全。然而,我了解到亲自进行事实检查和验证至关重要。虽然我以为这些项目已经接近终点线,但我发现还有很多工作要做。
代码库很乱,我们一直在反编译状态下逐段调试。尽管面临挑战,但仍在取得进展。正如我的一位同事所指出的,这是很棒的现实世界体验。许多公司都是这样运作的:他们拥有庞大、错综复杂的代码库,而你的工作就是找出它们、修复错误并添加功能。
今天,我还学习了一个新的Git命令:git stash。它允许您暂时保存暂存或未暂存的更改,并且您可以稍后使用 git stash apply 应用它们。当我需要使用项目的最新更改创建一个新分支时,这派上了用场。
最近,我不再转移注意力了。在开始涉及 C 的新工作后,我发现自己涉足游戏开发和嵌入式系统。然而,我意识到不断跳入新的语言和技术并没有帮助。我真正需要关注的是解决问题。
在获得目前的工作之前,我已经启动了 Odin 项目,但我暂停了,因为我听说 Web 开发已经饱和,并被建议探索其他利基市场。虽然网络开发可能具有竞争力,但我了解到,深入掌握一个领域并对其进行迭代比追逐下一个闪亮的对象要高效得多。
有趣的是,我现在的两个职位都要求我学习ReactJS,而且我下周面试的工作也提到了它。这让我意识到坚持网络开发和利用我已有的基础知识的价值。我通过奥丁计划学到的技能将转移到其他领域,所以我在那里恢复了我的进步。
我一直在复习 HTML、CSS 和 JavaScript 语法和概念。当然,我并不记得所有的事情,但我的工作不是记忆,而是知道如何在需要时查找内容并理解文档。我也一直在探索现代前端工具,包括:
• 使用节点包管理器 (npm)
• 使用 Webpack 设置模块捆绑
• 使用 npm 脚本配置我的开发环境
• 使用 ESLint 进行样式强制和错误捕获
• 使用 Prettier
虽然 ESLint 和 Prettier 具有方便的 VS Code 扩展,但我了解到通过 npm 安装它们很重要,因为并非所有开发人员都使用相同的工具。为了简化我的工作流程,我创建了一个 Webpack 模板,并将其上传到 GitHub 以供将来的项目使用。
我不会急于求成,而是专注于巩固基础知识并有条不紊地前进。当我到达 Odin 项目中的 React 部分时,我将准备好快速学习它。
明天,我将在办公室继续测试这两个单元。我会做笔记并帮助更换物理组件,例如一个单元内的电子调节器,以确保我们的软件在两个系统上表现一致(或尽可能接近)。
我还开始使用 CodeWars 来磨练我的 Python 基础知识,并在随意申请工作的同时解决 LeetCode 问题。我使用 NeetCode 来跟踪我的进度并努力保持一致,这有助于我保留解决方案并解决更具挑战性的问题。
我的首要目标是成为一名全栈软件工程师。我计划通过以下方式实现这一目标:
1) 继续并完成 Odin 项目来构建项目并加强我的基础知识。
2) 练习 LeetCode 来准备面试并提高我的 DSA 技能。
3)使用 Pramp 等平台进行模拟面试,并学习破解编码面试来磨练我的面试准备。
旅程继续!
P.S.我把我的 Raspberry Pi 5 变成了 RetroPi!我还没有玩过游戏,但我打算很快尝试一下......
以上是我的软件工程之旅#Shiny Object Syndrome的详细内容。更多信息请关注PHP中文网其他相关文章!