来自高级工程师的 37 个 Tips
1. 掌握基础知识
建立在不稳定基础上的房子会在最小的问题上崩溃。 同样,如果你没有扎实的基础:
- 你将难以应对 JavaScript 框架
- 你会在遇到第一个不熟悉的问题时陷入困境
- 你无法把握一些问题之间的共同主题
所以,如果你想作为一名前端开发者进步,首先要掌握 HTML、CSS 和 JavaScript。
2. 理解网络是如何工作的
过去的十年时间里,前端开发变得日益复杂————使用了众多工具(打包器、转译器等)。
如果你不理解网络是如何工作的,(例如仅限于了解 HTML(用于结构)、CSS(用于样式)和 JavaScript(用于交互)),你将难以理解为什么需要这么多工具来运行你的代码。
3. 熟悉数据结构和算法
在前端面试过程中,数据结构和算法的占比并不是最重的 🤦♀️。
然而,理解关键的数据结构和它们的复杂性至关重要。没有这些知识,你将无法编写复杂的程序或评估你的代码效率。
以下是一些需要了解的非详尽数据结构/算法列表:
-
数据结构:栈、队列、哈希映射、集合、图等
-
算法:动态规划、贪心算法、递归等
这需要通过实践而不仅仅是阅读/观看视频来学习,教程会让你感觉像是在取得进步。
它们让你相信你在学习和提高,但你并没有向前迈进。真正的学习发生在实践或教学中。
所以,大量练习,避免陷入教程的困境 🔥。
4. 遇到问题时寻求帮助
你不是一个人在战斗!大概率情况下,就有一名高级开发者在你身边,你可以向他们寻求帮助。
所以,不要浪费时间去钻牛角尖。你的目标是提供价值,如果你浪费时间去解决别人已经解决的问题,你就没有实现这个目标。
5. 正确地寻求帮助
在寻求帮助之前,确保你已经做了最基本的事情。你应该首先:
- 在 搜索引擎/Stack Overflow/ChatGPT 上搜索解决方案
- 理解你的最终目的以及问题是什么
- 清楚自己所有失败的尝试
另外,不要重复为同一个问题寻求帮助。当你得到帮助时,记在某个地方,这样你就不会忘记了 😉。
6. 不要复制/粘贴你不理解的代码
这非常糟糕,原因有很多:
- 可能会得到不安全的代码,暴露敏感信息,如令牌
- 无法轻松调试代码
- 无法向你的同事讲述
这在 ChatGPT 中尤其令人担忧,因为它有时只能提供准确度为 80% 的答案。
7. 不要盲目应用你在网上找到的每条建议
刚开始时也犯过这样的错误。我看到有文章说 React 中的 memoization 是不好的,所以我没在使用过它。
结果,我的代码在预生产中崩溃了 😅。
8. 当你在网上看到建议时,首先问自己以下问题:
这条建议适用于我吗? 给出建议的人是否处于与我类似的情境?
TLDR:要知道运用常识 🫠。
9. 假设好意:人们希望你成功 ❤️
当你是新人时,很常见的想法是人们在等待抓住你的错误并解雇你。
至少,我脑海中是这样对我耳语的。
但 实际恰恰相反。
当公司雇佣你时,它非常希望你成功。否则,他们前期投入于招聘和入职培训的时间和资源就等于浪费。
所以,相信公司希望你做得好,不要犹豫向你的同事寻求支持。
10. 完成比完美更好
追求完美通常会导致以下结果:
- 拖延
- 浪费时间
- 过度复杂等
因此,目标是在追求更多之前先发布并验证。
11. 总是将任务分解为可管理的部分
感到不知所措的最简单的方法是什么?
👉 试图承担超出你能力范围的任务。
总是将项目分解为更小的任务。
这将:
- 避免你感到不知所措
- 使你的 PR(拉取请求)更容易审查
- 提供一种进展感
12. 值得信赖地在需要时寻求帮助
刚开始时,你的首要任务是赢得汇报人的信任。
他们应该在想到你时感到安心。
他们应该相信:
- 你对简单任务是可靠的
- 你会在必要时寻求帮助
- 你会沟通任何问题
你不应成为一个他们必须不断关注你,才能获得价值的人 🔎。
13. 对工作表现出热情
你可以用热情弥补很多不足 🤪。
当你是新人时,要渴望和兴奋。
只有经验丰富的开发者才能负担得起缺乏热情。
没有人想不断地推动某人工作。指导已经够难的了;必须激励某人使它更具挑战性。
14. 对学习新事物/工具/方法持开放态度
前端开发不断发展。 所以,你需要对尝试新技术持开放态度。
不要过于坚持你当前的工具。相反,展示你对学习的渴望 😋。
15. 掌握你的开发工具 🛠️
想要加快你的开发时间吗?
熟练掌握你的开发工具:
- 你的 IDE(例如,VSCode)
- 你的源代码控制系统(例如,Github)
- 你的浏览器和Dev Tools(例如,Chrome Dev Tools)
16. 专注于提供价值
不要在真空中编写代码。你编写的每行代码都应该为你的:
- 客户
- 公司
- 利益相关者
提供价值。
你的薪酬与你提供的价值挂钩,而不是你编写的代码。
所以,优先编写有效的代码,服务于一个目的 🥅。
17. 为你的工作辩护:它不会为自己说话
这可能是新开发者最常犯的错误之一(特别是如果你来自一个重视谦逊的文化)。
你做了一些非凡的事情,但是如果没有人知道,👉 那这项工作就不重要了。
所以,通过写作、演示等方式分享你的工作。
18. 宁愿写简单的代码而不是聪明的代码
代码被阅读的频率远高于编写的频率 📝。
所以,避免写只有你自己能理解的“聪明”代码。
可读性 > 性能 > 聪明。
你希望你的同事能够高效地使用你的代码,必要时协助你等等。
19. 你的汇报人是你最好的盟友
除非你特别不幸,你的汇报人一定会支持你的成长 📈。
他们通常希望你快速发展,为团队做出贡献,并留在公司而不是寻求其他地方的机会。
所以,可以让他们帮助你实现你的目标。
分享你的胜利、挫折(以积极的态度),而不是独自挣扎。
20. 让你的汇报人更轻松
这一点很容易做到,但经常被忽视。
你的汇报人可能有一些你可以协助的问题:
- 他们可能需要添加文档但缺乏时间;
- 他们的工作量可能巨大,需要支持;
这可能是赢得你汇报人支持(晋升、加薪等)的最简单方式。他们已经意识到这些任务,并且可以直接看到它们的影响(至少对他们来说)。
21. 理解你任务背后的目标
不要做一个“码农” 🐒。
开始时,这可能会对你有所帮助。
但要达到更高的水平,你需要了解你任务背后的上下文:
- 为什么它们有价值
- 为什么你被分配这些任务
- 它们如何适应公司的整体战略
这种理解对于你职业生涯的下一个水平至关重要。
22. 为团队做出贡献(文档、技术讲座、演示等)
这不仅有利于公司,也有利于你。
通过进行演示、分享文档等,你展示了你的技能并提高了团队的生产力。
始终力求尽可能提高团队的表现:这是愉快和有益的 😊。
23. 成为特定领域的“首选人”
如果我只有一个建议,那就是这个。
在职业生涯的开始,探索各种领域是可以的。
然而,要晋升到中高级水平,专注于在一个领域建立专业知识。这比在多个领域都表现平平更有说服力。
所以,最终目标应该是 T 型技能:广泛的知识,和在特定领域有自己深入独到的理解。
24. 磨炼你的沟通技巧
这是必须做的 😀。
沟通对开发人员至关重要。我们经常不得不做以下事情:
- RFC(意见征求稿)
- 演示
- 演讲
所以,确保你至少有基本的沟通能力。
25. 当你陷入问题时休息一下
当你深入到某一问题时,停下来是很难的。 即使拥有 5 年以上的经验后,仍然可能陷入困境 🥹。
然而,新奇的想法💡,总能在休息后不期而至。 所以,如果你被困住太久了,就暂时把它搁置一下。
26. 从你的优势出发,而不是弱点
停止浪费时间,尝试补足明显的缺点。
如果一项任务始终需要你超过 1 小时的时间,而你的同龄人在不到 5 分钟内就能完成,那就避开那个任务。
很可能,投入更多的精力不会让你在这方面变得卓越。
相反,做必要的工作,集中精力最大化你的优势。如果某件事对你来说自然且有价值,就多做 🚀。
27. 对你的职业道路负责
没有人会为你规划你的职业生涯。
没有计划,你将为别人的计划工作。
所以,确保你为自己想要在 1/2/5 年内实现的目标制定计划 💪。
28. 与其他开发人员交往
你目前正在经历“冒名顶替综合症”吗?
如果是这样,花时间与其他开发人员在一起。
你很快就会意识到你并不孤单。
与其他开发人员建立联系还有额外的好处:
- 学到新的技巧
- 讨论沟通彼此的经验
- 互补彼此的工作
29. 指导初级的开发人员
这是治疗“冒名顶替综合症”的顶级方法。
一旦你开始指导年轻的开发人员:
- 你会发现你没意识到的那些事情
- 确立自己作为中高级开发人员的地位
30. 尝试处理不同的问题
如果你一直在处理相同的问题,你的进步将会停滞。
确保你能有机会处理多种场景下的问题,这样你可以:
- 对比各种问题的解决方法
- 开发解决问题的工具箱
31. 寻找导师
遇到一名极度优秀的导师是我职业生涯的亮点 🥰。
导师能让你脚踏实地,因为他们理解你的旅程。他们指导你避免他们曾经犯过的错误。
如何找到导师?
与你互动的更有经验开发者建立联系,提问,讨论他们的经验等。
如果你没有接触到高级开发人员,可以在社交或博客平台上尝试与个人建立联系,与他们建立关系,然后向他们请教 😉。
32. 致力于一个 JavaScript 框架并掌握它
最好的框架是帮助你最快实现目标的那个。
所以,不要太在意网络上大部分无意义的争辩。
选择你最舒适的框架或需要学习的框架,并掌握它。这就足够了。
有了扎实的 JavaScript 基础,当切换到其它框架时,不会太困难。
33. 关注用户体验
作为一名前端开发者,你应该更关注用户。
虽然已经有产品经理或设计师,但前端研发也应确保产品具有良好的用户体验 😌。
- 必要时使用loading状态
- 在用户界面中,显示当前进度
- 操作要给用户反馈
等等。
34. 要习惯说不
特别是你对每个项目都感到心动💓,很难拒绝时。
但作为一名开发者,你经常会有比你能够胜任的更多的请求。
所以,优先考虑最符合你目标的那些 🥅。
35. 不断投资你的技能
成为一名前端开发者,就等于选择了一种必须不断学习的职业。
因此,通过获取新语言、掌握新技术等方式不断建设你的能力。
36. 面对过多工作时,减少功能而不是代码质量。
你的应用功能应该越多越好?
初步看来,这似乎是正确的,但额外的功能会导致更多的代码。而更多的代码意味着更多的问题(维护、漏洞等)。
所以,当时间紧迫时,拆分上线计划而不要牺牲代码质量。
37. 努力理解你的合作者(设计师、后端开发者等)
始终对你的合作者(后端开发者、设计师、产品经理等)表示尊重。
应用开发是团队努力的结果。
团队成员之间的协同作用越多,环境就会越快乐和有效 🥰。
感谢你阅读这篇文章 🙏。
留下评论 📩 分享一个技巧。
别忘了点一个 ”💖🦄🔥“。