java开发第一天上班
One of the many things you might be asking yourself when starting your software development career is:
在开始软件开发职业时,您可能会问自己很多事情之一:
“How do I REALLY contribute to my new team?”
“我如何真正为我的新团队做出贡献?”
This was one of the things that scared me when starting my first job as a junior developer. So I’ve decided to summarise the things I did that earned some praise from my manager and teammates.
当我开始担任初级开发人员的第一份工作时,这是让我感到恐惧的事情之一。 因此,我决定总结自己所做的工作,这些工作赢得了经理和队友的一致好评。
When hiring junior developers, it is expected that there will be some learning and ramping up time. You will have to learn the processes, the codebase, and a bunch of other stuff.
雇用初级开发人员时,预计将需要一些学习和增加时间。 您将必须学习流程,代码库和其他内容。
But that doesn’t mean you can’t hit the ground running and make an impact with your new team from day 1. Follow these tips and you’ll do just that.
但这并不意味着您从第一天开始就不会对新团队产生影响,请遵循这些提示,您将可以做到这一点。
以工作为荣 (Take pride in your work)
Let’s look at a picture.
让我们看一张照片。
Now you’re probably asking, “Why are you showing me a photo of some old Coke-Cola cans?”
现在您可能会问,“为什么要给我看一些可口可乐罐的照片?”
Which is a fair point. But what if I told you that this was actually an oil painting? Yes, this hyper-realistic painting is the work of Pedro Campos (see a link to his site above). You may or may not be into art, but you have to admit this is pretty cool (my phone doesn’t even take pictures this clear).
这是一个公平的观点。 但是,如果我告诉您这实际上是一幅油画呢? 是的,这幅超现实主义绘画是佩德罗·坎波斯(Pedro Campos)的作品(请参见上面指向其网站的链接)。 您可能会也可能不会进入艺术领域,但是您必须承认这很酷(我的手机甚至都无法清晰地拍照)。
But still, what’s the point? My point is you can tell just how much pride Pedro takes in his work. Every intricate little detail is covered. Even though this may only seem like a bunch of old cans, he has turned it into something amazing.
但是,仍然有什么意义呢? 我的意思是,您可以说出佩德罗对他的工作有多自豪。 每个复杂的小细节都被覆盖。 即使这似乎只是一堆旧罐头,他还是把它变成了令人惊奇的东西。
This is the approach you should take with your work. No matter how small or simple a task is, give it your all, and leave no stone unturned.
这是您在工作中应该采取的方法。 不管任务多么小或多么简单,都应全力以赴,绝不遗余力。
This is one of the best ways to make a good impression with your team. Write readable code. Test your code. Leave comments where necessary. Cover all the edge cases. Put 110% into everything you do. Doing this makes your teammates think “Wow, this person knows their stuff and cares about what they are doing”.
这是在团队中留下良好印象的最好方法之一。 编写可读的代码。 测试您的代码。 在必要时发表评论。 覆盖所有边缘情况。 将110%投入到您所做的所有事情中。 这样做会使您的队友认为“哇,这个人知道他们的东西,并在乎他们在做什么”。
知道如何寻求帮助 (Know how to ask for help)
As I mentioned in my article, ace your first year as a junior developer, asking questions when you are stuck is a good habit to get into. Although, knowing how to ask questions can make all the difference. If you say “Hey, I’m stuck can you help me?”, it makes it a bit harder for the seniors in the team to help you. In contrast, saying:
正如我在文章中提到的那样,在您是一名初级开发人员的第一年,当您陷入困境时提出问题是一个养成的好习惯。 虽然,知道如何提出问题可能会有所作为。 如果您说“嘿,我被困住了,您能帮我吗?”,这会使团队中的前辈很难帮助您。 相反,说:
“Hey, I’m working on this task, and I’m trying to do something, but I am getting an error in this function at this line. The error message is confusing, have you any ideas?”
“嘿,我正在执行此任务,并且正在尝试做某事 ,但是在此行此函数出现错误。 错误消息令人困惑,您有任何想法吗?”
The more information you can give, the easier it will be for others to help. You will also show that you understand what you are trying to do, and have simply hit a wall.
您可以提供的信息越多,其他人将越容易获得帮助。 您还将表明您了解自己要做什么,并且碰壁了。
As a side note, make sure to give your best shot at overcoming the issue you have come across. Do a quick Google search and have a look at other parts of the codebase that solves a similar problem. If you still are stuck after doing some investigating, go ahead and ask for help.
作为附带说明,请确保尽最大努力解决遇到的问题。 快速进行Google搜索,并查看可解决类似问题的代码库其他部分。 如果进行了一些调查后您仍然陷入困境,请继续寻求帮助。
听 (Listen)
“The quieter you become, the more you can hear.”
“您变得越安静,听到的声音就越多。”
There is a time to speak, and there is a time to listen. As a junior developer, when a senior developer is explaining something to you, or your team is discussing things, that is the time to listen and take it all in.
有时间说话,有时间倾听。 作为初级开发人员,当高级开发人员向您解释某些内容时,或者您的团队正在讨论这些内容时,就是时候聆听并接受所有内容。
Ask questions if you’re not sure about what is being said, but try to refrain from interrupting or talking over somebody else. Nobody likes that.
如果您不确定所讲的内容,请提出问题,但请尽量避免打扰或与其他人交谈。 没有人喜欢。
If need be, write things down. It leaves a great impression when a junior developer only has to hear things once, without having to be repeatedly given the same information a few times. Plus, it’s one less time you’ll have to ask!
如果需要,写下来。 当初级开发人员只需要听一次,而不必多次重复获得相同的信息时,就会给人留下深刻的印象。 另外,您也不必再问了!
Some great note taking apps I personally use are (all completely free to use):
我个人使用的一些很棒的笔记应用程序都是(完全免费使用):
帮助别人 (Help Others)
Found yourself at a loose end after finishing a task? Or waiting for your code to be reviewed/tested? You could spend that precious downtime scrolling Facebook, or you could find ways to help your team.
完成任务后发现自己处于松懈的境地? 还是等待您的代码被审查/测试? 您可以将宝贵的停机时间花在滚动Facebook上,或者找到帮助团队的方法。
Don’t be afraid to turn to your team and say,
不要害怕转向您的团队并说:
“I have a bit of downtime if anyone needs help with anything?”
“如果有人需要任何帮助,我会有一些停机时间?”
Even if no one needs any help, the team will appreciate that you asked. Now you can browse social media guilt free! Hurray!
即使没有人需要任何帮助,团队也会感谢您的要求。 现在您可以免费浏览社交媒体内了! 欢呼!
善于沟通 (Communicate Well)
Communication is important, which is why I’ve opened this section with a picture of two really stern people sitting at a laptop.
沟通很重要,这就是为什么我在本节中使用两个真的很严厉的人坐在笔记本电脑前的图片的开头。
You’ll be working with managers, teammates (some remote!), end users and the like. So it’s important to be able to communicate well.
您将与经理,队友(有些远程!),最终用户等一起工作。 因此,保持良好的沟通非常重要。
As a junior developer, there is often that thought that speaking more = more information. This, in fact, is not the case. Ask my old team lead. “Chris, you’re waffling again!” felt like his catchphrase at times.
作为初级开发人员,通常会想到说更多=更多信息。 实际上,事实并非如此。 问我的老队长。 “克里斯,你又在胡扯!” 有时感觉就像他的口号。
For example, you will likely have a daily standup or some sort of progress meeting. So instead of waffling, try being as concise as you can:
例如,您可能会每天站立或进行某种进度会议。 因此,不要胡扯,请尽量简洁:
“I am working on some task, so far I have managed to complete this part, so I have to write some tests. I should be finished in by the end of the day.”
“我正在完成一些任务 ,到目前为止,我已经设法完成了这一部分 ,因此我必须编写一些测试。 我应该在一天结束时结束。”
Being able to communicate your progress keeps your team up to date. Not to mention speaking with clarity and confidence will instill a sense of assurance with the rest of your team.
能够交流您的进度使您的团队保持最新状态。 更不用说清晰和自信的讲话将给您团队的其他成员灌输一种保证感。
BONUS TIP: Prepare what you are going to say in advance, and write it down. Don’t be afraid to reference this when you are talking!
奖励提示:事先准备好您要说的话,并写下来。 在讲话时,不要害怕引用此内容!
经常寻求反馈 (Seek feedback often)
Seeking feedback early is a good way to reduce the amount of wasted work you could end up doing.
尽早寻求反馈是减少最终可能浪费的工作量的好方法。
There is nothing wrong with waiting until the code review phase to get feedback on your work. But this may mean you have to go back over and change your hard work (my first code review had me changing my entire solution!).
等待代码审查阶段以获取有关您的工作的反馈没有什么不妥。 但这可能意味着您必须回去并更改您的辛苦工作(我的第一次代码审查使我更改了整个解决方案!)。
A more proactive approach that will allow you to be more efficient in completing tasks, is to get feedback on your code before you even write any code.
一种更主动的方法可以使您更高效地完成任务,甚至可以在编写任何代码之前就获得有关代码的反馈。
Wait, what?
等一下
How do you do this? You create a design first. This can be as simple as writing out the functions you will need, the general flow of the program, or writing out some steps on paper.
你怎么做到这一点? 您首先创建一个设计。 这可以简单地写出所需的功能,程序的一般流程或在纸上写出一些步骤。
You can then ask the senior developers on your team “Can you run over this design with me? to make sure I’m going in the right direction”.
然后,您可以问团队中的高级开发人员:“您可以和我一起使用这个设计吗? 以确保我朝着正确的方向前进”。
This achieves 3 things
这实现了三件事
- You will know early in the process if your thought process is correct 您会在流程的早期知道您的想法是否正确
- You will show that you can think about your code before going in guns blazing and writing code. This is an impressive trait to have. 您将展示出您可以在大胆地编写代码之前考虑一下您的代码。 这是令人印象深刻的特征。
- You can be quite certain that your code will be correct when it comes time for it to be code review. Changes will be minor and it will speed things up. 您可以肯定,当需要进行代码审查时,您的代码将是正确的。 更改将是很小的,它将加快处理速度。
犯错误 (Own up to mistakes)
Let’s face it, everyone makes mistakes. I have many years experience and I still make mistakes. I spoke with a talented guy with 15 years experience recently who had made a bad design decision and it cost his team weeks of rework. So mistakes will happen.
面对现实,每个人都会犯错。 我有多年的经验,但我仍然会犯错误。 最近,我与一个有15年经验的才华横溢的家伙交谈,他做出了错误的设计决定,这花了他团队反复的工作。 所以会发生错误。
The important thing is that we own up to them when it happens.
重要的是,当事情发生时,我们对他们负责。
Why is this important? It’s not so you can be thrown into the town square and egged by your teammates (that would suck). It’s so that the team can rectify any issues and ensure it doesn’t happen again.
为什么这很重要? 并非如此,因此您可以被扔进城镇广场并被队友怂恿(这很烂)。 这样团队就可以纠正任何问题并确保不再发生。
When I was a junior developer I changed a configuration property on the integration environment as part of a task I had. I accidentally got the property name wrong and this caused the environment to down. The team frantically tried to figure out what happened.
当我是一名初级开发人员时,我在集成环境中更改了配置属性,这是我执行的任务的一部分。 我不小心将属性名称弄错了,这导致环境下降。 团队疯狂地试图弄清楚发生了什么。
I felt bad, and thought “damn, they’re going to laugh at me and think I’m a fool!”. But I spoke up and said, “I changed this property on the environment, is that what it could be?”
我感到难过,心想:“该死,他们会嘲笑我,以为我是个傻瓜!”。 但是我大声说:“我改变了环境的这种特性,这是可能的吗?”
The senior developers said, “Ah, possibly, can we get a look at what you did?”
高级开发人员说:“嗯,也许可以看看您的工作吗?”
I showed them the changes I made, and we rectified the problem in no time. In the end, there was no harm done. Sure, I got a bit of playful stick from everyone, but I gained a lot of respect and helped solve the problem by owning up to the error I had made.
我向他们展示了我所做的更改,我们立即纠正了该问题。 最后,没有造成伤害。 当然,每个人都给我一些顽皮的坚持,但是我赢得了很多尊重,并通过承担自己所犯的错误来帮助解决了这个问题。
志愿者 (Volunteer)
I good way to show your proactiveness and willingness to contribute is to volunteer for tasks. When your manager or team lead asks for volunteers to do a task, put your hand up and say you’ll do it, if you think it’s a task you can do it.
显示您的积极主动和乐于奉献的好方法是志愿服务。 当您的经理或团队负责人要求志愿者做某项任务时,举起您的手说要完成,如果您认为这是一项任务,则可以完成。
Not only does this show that you are enthusiastic, but this gives you the opportunity to learn the codebase.
这不仅表明您有热情,而且还使您有机会学习代码库。
For example, if you are investigating a bug, you’ll have to dive into that part of the code and understand how it works before being able to solve the problem at hand.
例如,如果您要研究错误,则必须深入研究代码的这一部分并了解其工作原理,然后才能解决当前的问题。
Not to mention the kudos from team members and management you’ll get for fixing bugs!
更不用说团队成员和管理层的臭名昭著了!
带甜甜圈 (Bring donuts)
Yes, it is a well-known fact that donuts and buns have powered every major software project since the beginning of time. Ok, maybe not, but they taste good and are a nice gesture. If you really want to be an awesome teammate, get to know your team! Be friendly, be positive, and always wear a smile. You’ll be surprised at how the simple things like that can have an effect.
是的,众所周知,自开始以来,甜甜圈和面包就成为每个主要软件项目的动力。 好的,也许不是,但是它们味道很好,是一个很好的手势。 如果您真的想成为一个很棒的队友,请认识您的团队! 要友好,要积极,并且总是要微笑。 您会惊讶于诸如此类的简单事情如何产生影响。
给110% (Give 110%)
Remember to give your all, show how willing you are to learn, and be passionate, and you’ll make a lasting impression on your teammates.
记住要全力以赴,表现出您愿意学习和热情的态度,并且会给队友留下深刻的印象。
Thanks for reading!
谢谢阅读!
I’m currently creating a bunch of guides, articles, and video courses to help you along your journey into web development. If you would like to be a part of it, make sure to join the mailing list over at chrisblakely.dev!
我目前正在创建大量指南,文章和视频课程,以帮助您进行Web开发。 如果您想加入其中,请确保通过chrisblakely.dev加入邮件列表!
java开发第一天上班