如何成长为一名开发人员
成为一名全面发展的开发人员并不断进步
简介
今年,我与几位初级开发者进行了交流,他们需要一些关于如何提升技能和职业发展的建议。以下是我在最近的交流中提出的一些建议。
这些技巧面向初学者,但对于那些有经验、正在寻找全面提升自我或尝试不同方向(例如兴趣爱好项目、开源项目或学习一门新语言)的人来说,也同样适用。我打算以此为参考,在遇到瓶颈时不断挑战自己、激励自己。
背景是,我是一名高级软件工程师,自 2017 年以来一直在 Python 和 JavaScript 上进行专业开发。这里的提示是我在旅途中发现的,它们对我有所帮助。
保持好奇心
从技术方面来说,作为一名开发人员,你必须在职业或业余爱好中不断学习。
有许多免费的在线课程和网站提供资料供您使用。
不要被教程束缚——将你学到的概念和语法付诸实践。构建一些东西,进行实验。扔掉你的代码,或者把它留作你作品的纪念。不要觉得你必须对某个主题或工具有很深的了解才能使用它——你只需要掌握足够的知识来开始,然后慢慢摸索。
在编码之前,先在纸上画出你的应用程序。需要哪些组件?它们之间如何关联?决策的机会和成本是什么?其他开发人员或最终用户将如何使用你的应用程序?
目标
一开始就将目标定得小而可实现,这样你就能建立信心,专注于一些明确的问题,并避免在感到陷入困境或不知所措时感到气馁。
不要执着于完美,也不要试图理解一切。对自己要有耐心。作为一名开发人员,有时需要接受不确定性,或者在工作中保持耐心。
不要被bikeshedding之类的话题分心。诸如制表符还是空格、哪种语言或工具“最好”之类的争论,会让你无法编写出更好的软件。随着你编写代码、向其他代码库和专家学习,你的开发风格会随着时间而改变。力求改进,但不要指望随着实际应用的变化而达到完美。当应用程序不再符合你个人项目或最终用户的需求时,你必须调整部分代码,甚至重写或删除它们。
与人联系
参加您所在地区的编程聚会活动。AWS 每月还会举办几场在线会议供您参加,内容包括演示以及通过聊天室或视频与他人交流的机会。
与朋友、同事以及一些公共空间(例如 GitHub 或博客)分享你的学习成果和成果。积极的反馈会鼓舞你。你会得到一些反馈,学习如何以意想不到的方式完善你的代码或应用。你还会发现人们在安装或使用你的应用时遇到的错误或障碍。
从开源社区获取帮助
如果幸运的话,你会收到来自 GitHub 社区的贡献,例如问题或拉取请求。前往你的代码库的“设置”部分。禁用此选项:仅限协作者编辑。这样,当有人 fork 你的代码库时,他们就可以提交拉取请求。此外,此选项还允许任何人向你的代码库添加问题。
友善地进行代码审查。并非每个人都像你一样精通编程语言、工具和项目。他们的想法或代码风格可能与你不同。在评判他人及其意见或代码之前,请先学习、理解并提出问题。
为开源社区做出贡献
寻找为开源项目做贡献的方法——例如你喜欢的仓库或你使用的软件包。我不建议初学者过早地专注于为开源项目做贡献。从你自己的项目开始,这样你会有很大的自由发挥空间。
随着时间的推移,您将找到对您来说重要的公共项目,并且您将能够运用您的技能来解决所遇到的问题。
但是,当您确实将存储库上的 Pull 请求合并时,您会感到非常满意。
你还将学习很多关于 CI(自动化测试和部署)、代码审查以及熟悉其他代码库的知识。这些技能对于开发者来说非常宝贵,而利用开源代码库进行实践是磨练这些技能的绝佳途径。此外,你正在让科技世界变得更美好。
结论
我希望这些想法能引起您的共鸣,并且您可以选择至少一个想法并付诸实践。
有关的
这是我博客上的转帖GitHub.io
。我在那里列出了一些类似的旧帖,希望您感兴趣。
- 代码挑战和选择要构建的项目的资源。
- 如何成为一名具备技术和非技术技能的开发人员
- 如何寻找灵感——作为一名开发人员,保持有大大小小的目标和项目的动力。
- 如何选择科技项目——关于如何找到值得构建的项目创意的一些建议
致谢
照片由 Unsplash 上的@yogendras31拍摄。
文章来源:https://dev.to/michaelcurrin/how-to-grow-as-a-developer-4oln