I've been working in the industry as a Ruby on Rails Developer for four years. I've worked on four different companies and I met a bunch of excellent developers who taught me a lot.
I went from Junior to Senior and the key to improving my skills came from never hesitating to asking for help when I’m stuck in a problem or trying to find the best approach for a solution. This behavior is something that I keep doing and it keeps giving me useful lessons to me or my co-workers.
In the last month, I've worked a lot on new features and I've pushed many PR's - a nice practice for every company is that you need at least two checks to merge your PR. So, in the review process, I chat a lot with my partners.
And I've realized that there is a skill which is very important to have in your team: asking questions.
Question everything, is always useful
I really like when my co-workers make questions about my code, even if I think that is good as it is. The questions are always good. They help you to catch up on bugs/scenarios that you didn’t think of or reinforce the understanding of your solution with your team.
As a developer, you should always embrace the questions (or suggestions) with open arms. Because there you can not only learn but also discuss them. A discussion must be always respectful and the feedback between you and your partners will truly contribute to growing up professionally not only as a developer but also as a team.
I always liked the humble developer that questions everything because that is the way to do understandable, stable, and good quality applications.
I will never consider myself the best programmer in the world, even a question of a trainee could give me the insight to make the solution better. That is the mindset that we have to encourage as senior devs because we have the responsibility to give the newcomers the best place to enjoy and keep learning.
How we can stimulate these scenarios
Having good, readable, and accessible code review guidelines and always require at least two checks to merge a pull request.
Avoid developments that encourage lonewolf programmers. A developer working alone is not healthy in the long term.
Empower the team by giving them independence and comfort areas in retros or lighting talks to share their experiences and give feedback about the last features.
There are more things that we can do, let me know in the comments section what you're doing to improve the code review/development process.
Thanks for reading!
Top comments (1)
Loved it. I think questions are powerful tools, and being able to ask more and better questions has a compounding effect on how well we consolidate our understanding about anything over time.