After taking a school exam, how do you measure your score? The professor will do that, usually with a numerical score that (ideally) represents how well you know the material. But what about after you graduate? How do you know you are doing well? If you aren’t completely missing deadlines or producing horrible code, chances are your managers are not breathing down your back. The first year or so into a new job should be extensively monitored for performance, but there won’t always be a professor to grade your work for you. You must take it upon your workmates and yourself to judge how well you are performing, in order to become the best employee you can be.
Here are three things to help you take those first steps toward professional advancement. I am writing this as a guide for myself as well, so if you have anything to add please feel free to comment below.
- Ask for reviews often.
If you want to improve your work, this will be the most important factor in establishing a metric for your performance. Getting constructive feedback on your work will help fine-tune your ability to recognize common pitfalls in future problems, and will give other team members an idea of how you solve problems. This makes it easier for them to integrate with your work, and helps everyone understand the system better. It is extremely important to have an open mind when receiving criticism; those familiar to academia might consider reviews akin to grading a paper or project in school. You must always be asking yourself, “Is this an appropriate way to solve this problem?” In the software development world code reviews should be performed, wherein other developers within the same team meet with you and go over your code section by section (or even better, line by line!). During this process, it is beneficial to explain your reasoning behind solving each problem the way you did – sometimes you can even catch some logic problems just by reading the code to others! Consider this time a bonding experience with your team. Code reviews don’t have to be formal – any review is better than no review.
- Don’t be afraid to ask for help.
There is nothing fun about being stuck on a problem for an extended period of time. Sometimes it really feels like a dead-end. You must remember that other people around you have a stake in your work (ultimately), so they will most likely be more than happy to help you! Before you ask for help, make sure you are really stuck. Sometimes all it takes is a bit of staring at your problem to see the solution. If you still can’t solve the problem after self-reviewing your work a couple times, it might be time to ask a senior coworker for input. Take some extra time to figure out exactly what is going on, so you can relay your trouble to others appropriately. If you ask a confusing question, your coworkers won’t be able to help you much at all. It is suprising how fast some problems can be solved simply by getting another pair of eyes to look at them (like code reviews).
- Take your time (within limits).
There is no need to show off how fast you can perform by zipping though problems left and right. Most of the time someone rushes on a project it leads to messy work quality and can lead to problems that are hard to debug. Take your time on tasks; I am sure your employer will favor quality work over fast work any day of the week (okay, maybe not when rapidly approaching release dates!). Sometimes it can even help to research your problem before you even start on a solution. Has anyone else had this problem before? How did they solve it? What other problems did those people come across while creating a solution? If you can get a clear idea in your head of how to solve your problem, that idea will translate nicely into actual work. I have even had cases where I jump into something and realize that I should have researched more, so it ended up taking more time anyway!
The caveat to this point is, “within reason”. It should go without saying that you shouldn’t be spending so much time on a problem that it becomes “slacking”. Your employer will be able to tell the difference between being unrealistically slow and taking your time to maintain quality work. If you remain calm and take your time when solving a problem you will be a lot less stressed in the long run, and the deliverables you produce will be of higher quality.
And remember… learn as much as you can! Use these tips to get as much feedback on your work as possible, because that is the best way to develop good habits and produce great work.