2019 年给软件工程师的 19 条建议
1. 不要灰心
2. 学习阅读和破译代码
3. 找到你的学习方法
4. 参与社区活动
5. 理论与实践的平衡
6. 不要拿自己和别人比较
7. 参与开源
8. 适应不适
9. 不要害怕提问
10. 和那些能帮助你成长的人在一起
11. 一次只专注于一件事
12. 放眼全局——所有这些技术如何协同工作
13. 找到您的工具箱——哪些工具最适合这项工作?
14. 保持良好的工作与生活平衡
15.学习设计基础知识
16. 寻找导师
17. 打造出色的作品集和简历
18.快速失败,经常失败
19. 继续前行
2019年即将到来,编程世界里涌现出许多令人惊喜的事物。但对于许多新开发者来说,投身编程事业的前景可能令人望而生畏。
有太多技术需要学习,有太多语言可供选择。因此,我整理了一份清单(无意双关),列出了 2019 年软件工程师的 19 条建议。
编码愉快🤩💻
1. 不要灰心
科技行业是目前最紧张、最动荡的行业之一,想要进入这个行业可能会让人不知所措。我每天都努力记住,每个人在编程生涯的某个阶段,都曾和我一样起步。所有科技行业的领军人物都曾是新手。
有些人学得比其他人快吗?是的。但你不能因此而放弃学习。
编程职业之所以受欢迎,原因很简单:你可以在互联网上自学任何东西……而且完全免费!而且,科技行业的生活方式通常比其他职业舒适得多。
重要的是要记住,虽然有大量的资源,但你不需要学习所有内容。从基础开始。
第一步是确定你是想从前端(与你交互的应用程序的用户界面)还是后端(处理数据)开始你的职业生涯。一旦你选定了你的领域,就从基础开始吧。
如果您选择了前端开发,请专注于 HTML、CSS 和 JavaScript。不要将这些技能视为理所当然。虽然乍一看可能很简单,但扎实的 Web 开发基础知识将帮助您获得软件工程师的第一个职位。大多数公司更愿意看到候选人拥有扎实的“基础”技能,而不是对流行框架/库有相当深入的理解。
如果你决定走后端开发路线,可以尝试 Python 或 Java 之类的语言。这些都是科技行业非常抢手的技能。
但不要灰心。你会有感到彻底不知所措的日子。每个人都和你一样,都是从哪里开始的。一切都会变得更容易。
2. 学习阅读和破译代码
当我开始编程之旅时,我认为阅读其他开发人员代码的能力是理所当然的。这项技能非常重要,因为它能让你在许多不同的代码库中高效工作。
您不需要了解编程语言的所有细微差别就可以理解代码的作用。
学习阅读代码的方法有很多。看看一些开源项目。通读文档和源代码,看看你能不能理解其中的含义。你会慢慢意识到可以改进的地方,甚至可能还会发起 PR!
学习分析代码并确定它是否以最有效的方式编写。
学习阅读和审查代码是一项需要时间的技能,但值得付出努力。
3. 找到你的学习方法
人类的学习方式各不相同。有些人在编写代码时记忆信息最有效。而另一些人则通过阅读或观看视频获得最佳学习效果。
我更喜欢观看在线教程和阅读文档以填补空白。
我不是那种能直接启动沙盒应用程序然后开始写代码的人。我喜欢先按照教程进行操作,然后再根据想法进行扩展。
找到适合自己的学习方法。尝试不同的资源和平台。
一旦找到了学习方法,你就会发现学习效率更高了。
4. 参与社区活动
直到我编程生涯开始三年左右,我才加入在线技术社区。这让我处于极大的劣势。
我曾饱受“冒名顶替综合症”的困扰,很难保持动力。但自从我在Twitter和博客平台上找到了一个开发者社区后,我的学习热情就大大提升了。
寻找一个开源项目。在推特上发布你的编程项目。将你的项目推送到 GitHub。找到一种参与的方式,你就能很快与编程建立更亲密的关系。
5. 理论与实践的平衡
为了成为一名高效的程序员,您必须(在一定程度上)理解某些范式背后的理论。
例如,如果您想了解为什么嵌套 for 循环的性能不如同一范围内的两个 for 循环,则需要了解 Big-O 符号。
我们生活在一个无需计算机科学学位也能在科技行业取得成功的时代。话虽如此,计算机科学学位中教授的一些概念仍然非常有价值(例如算法、运行时分析等)。
您不需要学习所有的计算机科学理论,但您应该了解为什么一个解决方案比另一个解决方案更好的理论。
6. 不要拿自己和别人比较
你的职业生涯永远不会与其他开发人员走完全相同的道路。你不应该将自己与他人进行比较。
您是独一无二的,我们将会为您量身定制您所提供的技能。
即使行业领袖正在学习 Ruby on Rails,你也不必效仿。找到让你对编程充满热情的技能,并尽你所能地学习它们。
学习一门技术没有固定的时间框架。正如我在技巧3中提到的,人们学习的方法各不相同,因此学习速度也各有不同。
仅仅因为你花了三个月的时间来学习 JavaScript,并不意味着你比一个月就学会它的女孩更糟糕。
7. 参与开源
开源社区蓬勃发展,何不参与其中?如果你想提升代码阅读能力,那就找个开源项目吧!
您可以查看GitHub 开源社区来开始吧!
你甚至可以创建自己的开源项目!去年九月,我创建了自己的开源项目Coding Coach,这真是一段令人大开眼界的经历。
如果您想参与并向一些优秀的开发人员学习,请随时查看!
8. 适应不适
科技行业在不断变化,这意味着总有新的技能需要学习。
虽然乍一看这可能令人生畏,但它也提供了许多寻找新技术来学习的机会(你怎么会感到无聊?!)。
提升编程技能的最佳方法是挑战那些让你感到恐惧的任务。你可以在工作中主动承担一项具有挑战性的任务,也可以在业余时间利用新技术来实现这一点。
你必须习惯于不舒服的感觉。你不必知道所有答案。
9. 不要害怕提问
最终你会遇到一个你不知道如何解决的问题。Stack Overflow 根本没法解决这个问题!
认清何时需要寻求帮助至关重要。如果你已经尝试解决问题,并尝试了所有可行的方法,那么是时候寻求帮助了。
寻求帮助并不会让你显得软弱;这是我仍在努力解决的问题。
如果您花费数小时试图弄清楚为什么变量会引发 ReferenceError,请寻求帮助。
10. 和那些能帮助你成长的人在一起
编码很难。总有一天你会觉得自己不适合做软件工程师。
因此,你必须让那些相信你的人围绕在你身边。找到一群能够帮助你建立自尊的家人或朋友,告别那些不相信你的人。
11. 一次只专注于一件事
多任务处理是导致平庸的最快方法。人类无法有效地同时处理多个任务。
每次专注于一件事。尽你所能,学习它,或者完成它。完成后,再去做下一件事。
不要试图同时处理多个话题。
12. 放眼全局——所有这些技术如何协同工作
在你的编程生涯中,你将学习许多不同的技术。而确定哪些技术能够解决哪些任务可能会令人非常困惑。
我喜欢绘制复杂问题的图表。如果我负责构建一个应用程序,我喜欢将其分解成不同的领域。例如,我知道前端需要 HTML、CSS 和 JavaScript。也许我会决定使用 React 作为 JS 库。也许,如果我需要这个应用程序扩展,我会选择 Redux 进行状态管理。
了解不同技术的最佳用例。什么时候你会选择其中一种?它们如何相互配合?
这些都是您应该学会回答的重要问题。
13. 找到您的工具箱——哪些工具最适合这项工作?
如今,开发人员可用的工具种类繁多。我能说出至少五个我过去使用过的 IDE。
市面上可用的工具数量可能非常多。不妨先做些调查,确定哪种工具最适合你。以下是一些你可能想问的问题:
- 这个工具是否正在被积极维护?
- 是否有一个蓬勃发展的开发者社区使用它(如果您需要帮助)?
- 配置起来有多难?
- 集成此工具会对性能产生负面影响吗?
- 我可以不用工具解决这个任务吗?
仅仅因为工具存在并不意味着您需要使用它。
14. 保持良好的工作与生活平衡
你不需要把一天的所有时间都花在编程上。事实上,这样做对健康有害。
您必须保持健康的工作/生活平衡,否则您可能会遭受倦怠的后果。
如果你从起床到晚上睡觉都做某件事,你很快就会开始怨恨它。
通过为自己和其他爱好留出时间,您将与编码保持健康的关系。
15.学习设计基础知识
如果你正在构建一个面向用户的应用程序,你应该了解一些设计基础知识。我并不是说你需要学习如何使用 Sketch 或 Adobe Illustrator,但学习用户体验设计的基础知识将对你的应用程序产生积极的影响。
你不能假设用户会以和你一样的方式使用你的应用程序。事实上,你根本不应该对用户行为做任何假设。
了解某些 UI 原则背后的原因,以便确定适合您应用程序的最佳解决方案。
例如,研究发现,对于用户来说,方形边缘的按钮实际上比圆边按钮更好,因为它们包含更多的像素。
学习这些基础知识,您就可以确保您的网络应用程序将会大放异彩。
16. 寻找导师
找一位导师很难,但却是必要的。你可以从中学习到宝贵的技能,从职业建议到最佳编程实践。
向你敬佩的领域人士寻求指导绝对不会错。他们最不想听到的回答就是“不”!
并且记住随着时间的推移重新评估你的指导,以确保它对你们双方都有利。
17. 打造出色的作品集和简历
作品集和简历是你在面试过程中给雇主的第一印象。展现你最好的一面至关重要。
修改拼写和语法错误。确保所有内容格式一致且恰当。
如果您想了解有关撰写出色简历的更多详细信息,请随时查看我之前的博客文章。
18.快速失败,经常失败
失败是主观的。如果你犯了错误,就从中吸取教训。不要犯同样的错误两次。仅仅因为某件事“失败”并不意味着它没有价值。
历史上最成功的人物做出了大量的工作,但他们却只得到少数人的认可。
您无需为每个开发的项目从头到尾编写精美的网站代码。只需专注于底层技术,之后再考虑如何让网站看起来更美观。
19. 继续前行
或许有一天你会想放弃编程。别这么做。这是一个艰难的职业,每个人都会患上“冒名顶替综合症”。
你并不孤单。随着时间的推移,编码会变得越来越容易。
一天天坚持下去,你就会没事的。
继续前进。
文章来源:https://dev.to/emmabostian/19-tips-for-software-engineers-in-2019-4okm