thinks
writes code
tests written code
researches other solutions
makes a code review
communicates with other team members
learns from his mistakes
think
write code
test written code
research other solutions
make a code review
communicate with other team members
to learn from your mistakes
Git
GitHub
JUnit