What can be done better

A Bug Maker
3 min readOct 13, 2020

My very first Medium post about engineering :D.

*all images in this post are credited to me.

1. Choosing between Windows, Mac, and Linux

If you already had MacOS, so just continue, you have a powerful workplace for coding and design.

But if you are using Windows...hmm,

I would prefer Linux for better performance, ease of use (not always), and supports almost development environments. Believe me or not, I took the first 2 weeks to suffer installing all the necessary stuff for my project on Windows but it was the most idiot thing of me.

And if you are drowned in many publishing of Linux, I would prefer you to use Ubuntu - modernized, up-to-date and beautiful UI.

2. Useful Github commands

One thing you have to keep in mind: "Don't lose your and other codes".

git pull --rebase origin master

This one will update your codes with the latest changes from the master branch without overriding anything, and then you have to resolve conflicts (if exist).

git stash / git stash list / git stash apply stash{index}

These commands will help you to save your works locally when you have to switch to another branch and don't want or cannot make a commit.

git rebase -i origin/{branch_name}~{number_of_commits} {branch_name}

The above magical command will help you to squash pushed commits, you just have to decide how many commits you want to merge into 1 or all. And then right after this, you have to force push to make things change.

3. Never make the assumption

One of my biggest mistakes during my engineering life is sometimes I assume a requirement without clarifying, without coming directly to PO (product owner), etc. And in a consequence, I have to rework or do a big change in my codebase most of the time.

4. Trace and track

"It is better to do it carefully but right than to do it quickly and you have to get
back".

Documentation:

I understand documenting is something boring and hard to execute by our engineers but it is the only way to make your works well-ordered, also proof when you have to argue with your manager and clients (not recommended).

Sample tools: Postman, Swagger (supported by AWS), Confluences

Logging:

Always make logs for important information and differentiate them between info and error (even warning)

5. Code review

Not an expert on this kind of task but i believe code-reviewing will help you a lot while doing tasks: aware of what is happening, even you are informed about your friend's work during daily standup, but it's not enough. Aware of other teams' progress. And one of the most important things is: help your code better while trying to find someone's mistakes - you have to do it first before asking someone to follow !!

One tip: do every code-review in the morning, when your mind is fresh and not being rushed with any task.

6. There is a chance in risk

Never limit your abilities, have a try on anything that you think you can learn from it. Staying in a safe zone like: do the tasks that you are familiar with, enjoy a comfortable time while coding...oh, that's not the way which will endorse you. You only work, but also learn: instead of spending some money on online courses, you can experience directly inside your company. But be careful, you have to take responsibility and know what is your limit.

Tips: communication and always back up your works, spend extra time to finish the tasks you are not good with, finally - document it and congrats: you learned something and scored a big point in your manager's eyes.

--

--

A Bug Maker

A coder who loves photography. Follow me on Instagram: @fatboyntv