作为软件开发人员开始你的职业生涯既令人兴奋又令人畏惧。回顾我的旅程,有些事情我希望在我刚开始的时候就知道。这里有一系列建议、课程和资源,可帮助您度过职业生涯的早期阶段并加速您作为开发人员的成长。
1. 不知道一切也没关系
刚开始时,我感到有压力要了解一切:框架、编程语言、工具——凡是你能想到的。真相?没有人知道这一切。最重要的技能是知道如何有效学习。
可操作的提示:
- 将问题分解为更小的、可管理的块。
- 学会提出正确的问题(Google 是你的朋友,但你的同事也是)。
- 专注于在数据结构、算法和简洁代码原则等核心概念上建立坚实的基础。
?资源:
- Aditya Bhargava 的 Groking 算法
- 初学者大 O 表示法 (dev.to)
2. 你的第一个代码不会完美,但这没关系
作为一名初级开发人员,我花了太多时间试图编写“完美”代码。事后看来,交付功能性的东西并通过迭代学习更为重要。
可操作的提示:
- 专注于首先编写有效的代码,然后再优化。
- 将代码审查视为学习机会,而不是批评。
?资源:
- 罗伯特·C·马丁 (Robert C. Martin) 的《干净的代码》
- 代码审查的重要性:成长的故事(Dev.to)
- 代码审查的重要性:更好的软件开发 (Dev.to) 指南
3. 沟通是关键
技术技能很重要,但与团队沟通和协作的能力也同样重要。无论您是在开会还是在编写文档,都要学会清楚地解释您的思维过程。
可操作的提示:
- 练习写作简洁、清晰的提交消息。
- 当要求或反馈不清楚时,请随时要求澄清。
- 在讨论过程中始终解释你的决定背后的原因。
?资源:
- 编写有效的提交消息
- 软技能:软件开发人员的生活手册
4. 尽早学会管理技术债务
在急于交付功能的过程中,很容易积累技术债务。在我职业生涯的早期,我忽略了它,认为这不是我的责任。大错误。学习识别和管理它是一项让您与众不同的技能。
可操作的提示:
- 定期重构代码作为工作流程的一部分。
- 了解速度和可维护性之间的权衡。
- 倡导编写测试以尽早发现错误。
?资源:
- 马丁·福勒的重构
- 了解技术债务 (Atlassian)
5. 在工作之外构建项目
您的工作可能并不总是让您接触到尖端工具或给您进行实验的机会。业余项目是成长和展现主动性的好方法。
可操作的提示:
- 打造你热爱的事物——这会让你保持动力。
- 在 GitHub 或个人博客上分享您的作品。
- 尝试为开源项目做出贡献,以获得实际经验。
?资源:
- 构建您自己的 X(资源列表)
- 初学者开源指南
6. 冒名顶替综合症是正常的
作为一名初级开发人员,很容易感觉自己不属于这里。你猜怎么着?即使是高级开发人员也会经历冒名顶替综合症!关键是不要让它阻碍你。
可操作的提示:
- 庆祝小小的胜利——解决的每个问题都是进步。
- 请记住:您被雇用是因为您带来了价值,即使作为学习者也是如此。
- 专注于进步,而不是完美。
?资源:
- 作为开发人员如何克服冒充者综合症
7. 专注于解决问题,而不仅仅是语法
记住语法不是目的;而是目的。理解如何解决问题更为重要。工具和框架会发生变化,但解决问题的技能将始终保持相关性。
可操作的提示:
- 练习解决编码挑战(但要与构建现实世界的应用程序保持平衡)。
- 总是问为什么你以某种方式解决问题。
- 了解不同方法的权衡。
?资源:
- Exercism.io - 练习编码
- LeetCode - 编码挑战
最后的想法
作为开发者的早年是一个探索、犯错误和成长的机会。保持好奇心,坚持不懈,并记住:即使是最有经验的工程师也曾经是初学者。
如果您觉得这篇文章有帮助,请在评论中告诉我!我很想听听你会给年轻的自己什么建议。如果您是初级开发人员,您面临哪些挑战?我们来讨论一下吧! ?
编码愉快!
以上是作为初级开发人员我希望知道什么:高级工程师的建议的详细内容。更多信息请关注PHP中文网其他相关文章!

使用NumPy创建多维数组可以通过以下步骤实现:1)使用numpy.array()函数创建数组,例如np.array([[1,2,3],[4,5,6]])创建2D数组;2)使用np.zeros(),np.ones(),np.random.random()等函数创建特定值填充的数组;3)理解数组的shape和size属性,确保子数组长度一致,避免错误;4)使用np.reshape()函数改变数组形状;5)注意内存使用,确保代码清晰高效。

播放innumpyisamethodtoperformoperationsonArraySofDifferentsHapesbyAutapityallate AligningThem.itSimplifififiesCode,增强可读性,和Boostsperformance.Shere'shore'showitworks:1)较小的ArraySaraySaraysAraySaraySaraySaraySarePaddedDedWiteWithOnestOmatchDimentions.2)

forpythondataTastorage,choselistsforflexibilityWithMixedDatatypes,array.ArrayFormeMory-effficityHomogeneousnumericalData,andnumpyArraysForAdvancedNumericalComputing.listsareversareversareversareversArversatilebutlessEbutlesseftlesseftlesseftlessforefforefforefforefforefforefforefforefforefforlargenumerdataSets; arrayoffray.array.array.array.array.array.ersersamiddreddregro

Pythonlistsarebetterthanarraysformanagingdiversedatatypes.1)Listscanholdelementsofdifferenttypes,2)theyaredynamic,allowingeasyadditionsandremovals,3)theyofferintuitiveoperationslikeslicing,but4)theyarelessmemory-efficientandslowerforlargedatasets.

toAccesselementsInapyThonArray,useIndIndexing:my_array [2] accessEsthethEthErlement,returning.3.pythonosezero opitedEndexing.1)usepositiveandnegativeIndexing:my_list [0] fortefirstElment,fortefirstelement,my_list,my_list [-1] fornelast.2] forselast.2)

文章讨论了由于语法歧义而导致的Python中元组理解的不可能。建议使用tuple()与发电机表达式使用tuple()有效地创建元组。(159个字符)

本文解释了Python中的模块和包装,它们的差异和用法。模块是单个文件,而软件包是带有__init__.py文件的目录,在层次上组织相关模块。

文章讨论了Python中的Docstrings,其用法和收益。主要问题:Docstrings对于代码文档和可访问性的重要性。


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

SublimeText3 Linux新版
SublimeText3 Linux最新版

记事本++7.3.1
好用且免费的代码编辑器

螳螂BT
Mantis是一个易于部署的基于Web的缺陷跟踪工具,用于帮助产品缺陷跟踪。它需要PHP、MySQL和一个Web服务器。请查看我们的演示和托管服务。

SublimeText3汉化版
中文版,非常好用

Dreamweaver CS6
视觉化网页开发工具