So you've just accepted the job offer or the intern position as a developer?
But how will you deal with the codebase on your first day?
How do you understand the work that's been done to start contributing ASAP?
Here's how you can do it.
As a developer, you write software to resolve a problem.
These problems will come from the business and you'll have to implement the business logic of the solution (software) by coding.
Gathering the use cases will help you dive better into the codebase.
A use case (sending money) requires the user to be able to enter receiver details and the amount to be sent.
Knowing this, you just have to find the portion of the code which handles this.
You can then read it and test it.
If the team you are joining has the habit to write software tests, then it's definitely a facilitator for you.
Tests, if well written can describe the business logic as well.
Run the tests, feel free to modify the code to crash it.
If you don't understand a portion of the code, comment/remove this portion and run the code to see how the whole application behaves.
If you are used to a debugger, it'll definitely help you understand how things work in the background.
During the first days of work, your questions will be very well welcomed.
After all, you've just started. Everyone on the team has the duty to help you get on track as soon as possible.
Use this period of time to ask a lot of questions.
If you don't understand a part of the code, feel free to reach your peers or the seniors in your team.
Read everything you can find useful.
Unit tests, documentation, and the code itself. Read it slowly, line by line, and figure out what it’s doing.
Read as much of it as you can, as often as you can.
Don't be afraid to add new features to the codebase.
Of course, you should review your code and make sure it works.
And if your team have unit tests implemented, you can be confident your code won't go to production if there is an issue.
In this article, I gave you 5 tips you can use to quickly get familiar with a new codebase.
And as every article can be made better so your suggestion or questions are welcome in the comment section. 😉