初级开发人员的缺点
Life as a junior developer is exciting but can be challenging at the same time. There are many bumps in the road on the way to become a more seasoned developer. Many of these bumps which you could have avoided if only you knew what was waiting for you along the road.
初级开发人员的生活令人兴奋,但同时也可能充满挑战。 成为经验丰富的开发人员的道路上有很多坎bump。 如果您只知道沿路等待着您的事情,则可以避免许多这样的颠簸。
This article is a piece of advice to all junior developers that want to grow as a developer and want to learn more about the challenges that they’ll be facing. Most junior developers only find out about the pieces of advice on this list the hard way. You can avoid a lot of this hassle by creating awareness and learning more about the obstacles that most junior developers face — which starts right now.
本文为所有希望成长为一名开发人员并希望了解更多有关他们将面临的挑战的初级开发人员提供建议。 大多数初级开发人员只能通过困难的方式找到此列表中的建议。 您可以通过提高意识并更多地了解大多数初级开发人员面临的障碍(现在就开始)来避免很多麻烦。
提出问题和帮助 (Ask, both for questions and help)
There are a lot of new things coming your way as a junior developer. You’re working with a tech stack that you don’t master which leaves plenty of room for improvement. Chances are that you haven’t gone through an entire development cycle yet. There are a lot of things that you haven’t done and haven’t seen. And that’s totally fine.
作为初级开发人员,会有许多新事物出现。 您正在使用的技术堆栈不是您所掌握的,因此有很大的改进空间。 您可能还没有经历整个开发周期。 很多事情您还没有做过,也没有看到过。 那完全没问题。
This means you’re going to spend a lot of time being stuck, not knowing where to look and what to do, and not wanting to bother the other people on the team.
这意味着您将花费大量时间被困,不知道去哪里看和做什么,也不希望打扰团队中的其他人。
You need to figure out when you should ask for help.
您需要弄清楚何时应该寻求帮助。
Since you’re a junior developer you’re not supposed to know everything. It’s totally fine to have gaps in your knowledge — and you’re probably expected to have gaps in your knowledge.
由于您是初级开发人员,因此您不应该一无所知。 知识方面的差距是完全可以的,并且可能希望您的知识方面也存在差距。
However, the truth is that the other developers in your team don’t really want to be interrupted to babysit and help you unless you’ve tried everything you possibly know.
但是,事实是,您团队中的其他开发人员并不真正希望被打扰以照顾孩子并为您提供帮助,除非您尝试了所有可能的知识。
This means that you should check all resources that you’ve access to find the solution to your problem. Resources that you could use are the codebase, documentation, logs, chats, and the issue tracker that your team uses.
这意味着您应该检查所有可访问的资源以找到解决问题的方法。 您可以使用的资源包括代码库,文档,日志,聊天以及团队使用的问题跟踪器。
Once you checked all of these resources and you still have no clue what to do it’s time to ask for help. Your team members will be happy to help you out when they realize you did everything in your power to find the solution. On the other hand, when your team members feel like you didn’t do proper research on your own they’ll be less happy to help.
检查完所有这些资源后,您仍然不知道该怎么做,该寻求帮助了。 当您的团队成员意识到您竭尽所能找到解决方案时,他们将很乐意为您提供帮助。 另一方面,当您的团队成员觉得您自己没有进行适当的研究时,他们会很乐于提供帮助。
Please ask questions along the way when a team member is helping you or whenever you don’t understand something. Why are things done in the way they are done? Ask questions that will give you a better understanding of the project or situation.
当团队成员为您提供帮助或您不了解任何内容时,请一路上提出问题。 为什么事情以完成的方式完成? 提出问题以使您更好地了解项目或情况。
说到代码要务实 (When it comes to code be pragmatic)
When you’re learning how to code you’re used to working on projects from scratch. The same applies when you’re working on a passion project. This means that you have to come up with all of the code yourself.
当您学习如何编码时,便习惯于从头开始处理项目。 当您从事激情项目时,也是如此。 这意味着您必须自己编写所有代码。
Once you start working in a team you’ll realize that a large part of your job is focused on the maintenance of projects. You’ll find yourself fixing bugs or making little tweaks to features a large percentage of your time. This means that you’ll have to understand and touch the code that was written by some other developer.
一旦开始团队合作,您将意识到您的大部分工作都集中在项目维护上。 您会发现自己修复了错误或进行了一些小的调整以增加功能的大部分时间。 这意味着您必须理解并触摸其他开发人员编写的代码。
But you’re not the only one that has to read the code of other developers. Other developers need to be able to read and understand your code as well. The biggest piece of advice I have for junior developers is: keep your code readable and easy to understand.
但是您并不是唯一需要阅读其他开发人员代码的人。 其他开发人员也需要能够阅读和理解您的代码。 对于初级开发人员,我最大的建议是:保持代码可读性和易懂性。
There’s no need for quirky one-liners to show how good of a programmer you are. Instead, go for three lines of code that do the exact same and that every developer can understand the first time they read it.
不需要古怪的一线人来证明你是一名程序员的好人。 取而代之的是,编写三行代码,它们完全一样,并且每个开发人员都可以在第一次阅读时就能理解。
A great quote from Robert C. Martin learns that the ratio of time spent reading versus writing is well over 10 to 1. We are constantly reading old code as part of the effort to write new code.
罗伯特·C·马丁(Robert C. Martin)的一句名言说,阅读与写作所花费的时间之比远超过10:1。作为编写新代码的努力之一,我们一直在阅读旧代码。
你会犯错误 (You’re going to make mistakes)
Mistakes are inevitable, that’s for sure. This doesn’t solely apply to junior developers. Therefore there’s no reason to be insecure. All the senior developers in your team had to go through the same process you’re going through right now. One day you’ll be just as good as them. Or maybe even better.
错误是不可避免的,这是肯定的。 这不仅仅适用于初级开发人员。 因此,没有理由不安全。 您团队中的所有高级开发人员都必须经历与您现在正在经历的相同过程。 有一天,你会和他们一样出色。 甚至更好。
Just know that there are no shortcuts when it comes to becoming a great developer. The only way to get better is by getting your hands dirty and never stop learning. You’ll make mistakes in the process and that’s fine. As long as you learn from these mistakes.
只是知道,成为一名优秀的开发人员没有捷径可走。 变得更好的唯一方法是弄脏双手,永不停止学习。 您会在此过程中犯错,这很好。 只要您从这些错误中学习。
During the process of becoming a better developer, you’ll hopefully be experimenting a lot with different frameworks, tools, and coding techniques. Don’t let the fear of making mistakes hold you back when it comes to trying these new things. Experimenting with new things will give you valuable insights that you might be able to use on a daily basis.
在成为一名更好的开发人员的过程中,希望您会尝试各种不同的框架,工具和编码技术。 尝试这些新事物时,不要让犯错误的恐惧使您退缩。 尝试新事物将为您提供宝贵的见解,您也许可以每天使用这些见解。
The true method of knowledge is experiment — William Blake
真正的知识方法是实验—威廉·布莱克
像海绵一样吸收知识(Absorb knowledge like a sponge)
As a junior developer, you’re dealing with a knowledge gap. It all comes down to you when it comes to closing the knowledge gap. This means you should put in some time and effort to educate yourself.
作为初级开发人员,您正在解决知识鸿沟。 在缩小知识鸿沟方面,一切都取决于您。 这意味着您应该花一些时间和精力进行自我教育。
There are a lot of different resources where you could learn new things from. First of all your team members. It can be insightful to take a look at how they solve certain problems. A very easy way you can do this is by taking a look at all the merge requests that come along. See if the solution that’s provided by one of your team members matches the way you would solve the problem. If your solution differs from the solution of the other developer you should ask why this is the solution that was chosen — just like I described earlier on in this article.
您可以从许多不同的资源中学习新知识。 首先,您的团队成员。 看看它们如何解决某些问题可能很有见识。 一种很简单的方法是查看所有随之而来的合并请求。 查看您的团队成员之一提供的解决方案是否与您解决问题的方式匹配。 如果您的解决方案与其他开发人员的解决方案不同,则应询问为什么选择了这种解决方案-就像我在本文前面所述。
The second resource could be a training website, YouTube videos, or an old-fashioned book. As a junior developer, you should be constantly looking to expand your knowledge. It doesn’t matter whether you learn via video or a book. Just make sure you choose a method that works for you.
第二个资源可能是培训网站,YouTube视频或老式书籍。 作为初级开发人员,您应该不断寻求扩展知识。 通过视频或书籍学习都没关系。 只要确保您选择一种适合您的方法即可。
Last, but not least, you learn by gettings your hands dirty. This is what you do at your daily job. By putting in the hard work you’ll eventually get better. Working on a side project you’re passionate about also helps you improve. This way you put in more hours while working on something you really like.
最后但并非最不重要的一点是,您可以通过弄脏双手来学习。 这就是您日常工作。 通过努力,您最终会变得更好。 在您热衷的辅助项目上工作还可以帮助您改进。 这样,您就可以花更多的时间处理真正喜欢的事情。
Take the time to analyze your work and reflect on it. What are the things that you could have done better or slightly different? On top of that, if you want to grow faster as a developer you shouldn’t hesitate to ask for feedback.
花时间分析您的工作并反思一下。 您可以做得更好或稍有不同的是什么? 最重要的是,如果您想以一名开发人员的身份快速成长,请随时征求反馈。
翻译自: https://levelup.gitconnected.com/4-valuable-pieces-of-advice-for-junior-developers-669f190ee9f4
初级开发人员的缺点