All of us at some point were completely new to what we do. And we were not quite sure how to better develop as a programmer. Since experience comes with years of practice, I would like to share some ideas to explore and try mastering to develop faster as programmers and produce more value to the community and to your software development team.

Code something real and applicable

Writing code as exercise is great, yet, a real, applicable project is always a better choice. Write some useful code for someone. When others start using code the project and expectations immediately change. So, a developer ends up with a lot of comments, remarks, wishes, and claims of “customers” which is what happens in real life and is an absolutely amazing experience for growth. After all, we all write code to help someone.

Share your code with other developers

Make sure your code is accessible to other developers, so, store it in repositories, not your laptop. Also, always write documentation (even at simple README.md file) with explanations of what your code does, how to use it, and how to run it. Read info about commit messages and become experts at committing your code with descriptive comments. This will increase the readability of your code and thus more people would be interested in reading, sharing, modifying, and reviewing it.

Habits of pushing your code, keeping documentation up-to-date, and maintaining clear commit history will bring you a lot of benefits as soon as you start working in a team.

Containerize your code

Start learning and using [Docker](https://www.docker.com/) so that your code can be run from any computer with any operating system and regardless of programs installed. This helps other developers to use your code without spending time to install all the additional software needed to run it.

Learn how to write tests

Testing your code is great. This helps you to minimize the risks of breaking the code after it gets bigger. Also, tests show other developers how code works. With good testing skills, you will create a lot of value for your team since first tasks for newcomers are usually related to writing tests.

Master monitoring tools

The speed with which you can detect any errors that your code produces is quite important. No code is ideal, and to see how well it performs and identify bugs, crashes, and misbehavior is crucial. Learn tools to monitor your code and take actions when something bad happens.

Be brave to get review and feedback for your code

No surprise your code is not perfect. And it is always easy to search for mistakes in others’ projects, so you will have feedback that points out mistakes and problems of the code. Yet, use it to your benefit, learn from it, and try to apply it in your future projects.

***

To summarize: choose a project which has a purpose and will be used by someone. Make sure that your project is possible to run on other machines. Take care of the documentation and tools that will save your time while you write code. Communicate with other developers, show your code, and ask for comments and evaluations. All these will help you grow much faster into a pro developer with high value to the world.

Add your ideas in comments.