When the idea to become a programmer came into being for the first time, I wasn’t quite aware of what I should expect. I had gained some basic programming experience at university, and this was a very archaic fraction that after all appealed to me. I had always wanted to do a job that would give me pleasure, so I became a programmer.
Programming is a very broad issue, and mastering just the area necessary to undertake a commercial job turns out to be a real test. This article presents my subjective ruminations and key tips for anyone wishing to become a front-end developer.
Learning programming is a long-term process. Apart from some extreme cases, I estimate that it takes between 6 months and 2 years. Of course, this is not a fixed time frame as a lot depends on engagement, consistency and individual predispositions. Being a programmer means a continual improvement of skills. It is simply impossible to fully learn programming because a huge amount of knowledge lies behind this name. If you really want to become a programmer and you are ready for learning, and programming gives you pleasure, then this is a positive signal.
It is no secret that consistency is of utmost importance in mastering any activity. My experience shows that learning for two hours a day is more effective than learning for the whole weekend. During a week a lot of information can evaporate, and your mind can find it difficult to assimilate the knowledge you have acquired throughout the day. Yet, this does not mean that you have to limit yourself to these two hours. Just the opposite, if you are passionate about programming, it is even better. The most important thing is to learn regularly and avoid several-week-long breaks.
Own knowledge base
Building your own knowledge base from the very beginning is beneficial. Of course, writing down everything you read can be quickly abandoned as too time-consuming. Besides, such a dynamically expanding knowledge base can lose quality and clarity. When I consider something important, I make a brief summary with a reference to a source of information. I keep these notes grouped in a document. I regularly come back to them and I often explore a given issue thoroughly, discovering more and more advanced concepts. One interesting idea is a map of thoughts with issues grouped into categories. Miro is a great tool for that, and an example of a map is a roadmap, quite a general yet very universal map consisting of the most significant chronologically ordered issues. All these will help you understand programming from a theoretical point of view.
Searching for information
The ability to look for answers to questions is one of the most important features programmers should possess. I think that the Internet contains answers to practically every question regarding the issues typical for aficionados of programming. All you need is a correctly made question. At the same time you will stay up to date with industry trends. The world of front-end development is constantly evolving, with new technologies and approaches emerging all the time. To stay competitive in the field, it’s important to keep learning and staying up to date with the latest trends and best practices. This can be done through online resources such as blogs, newsletters, and online courses.
Front-end society is very extensive. There are regular (very often online) conferences and meetups, some of them designed also for beginner programmers. Obviously, you will not be interested in all the topics, but it is worth knowing what is going on in this society to be up to date with the latest trends. A list of the upcoming events is available e.g. on dev.events. I also recommend trade-specific blogs from time to time (here). It’s worth it. Connecting with other developers and getting involved in the community can be a great way to learn and grow as a front-end developer. Attend events, join online forums and groups, and contribute to open-source projects to build your skills and make connections in the industry.
Quality > quantity
I have often heard opinions that a Junior can write several dozen, or sometimes even several hundred lines of code, while a Senior only a few. One conclusion is that statistically, the quantity of code is inversely proportional to its quality. A larger quantity also makes the code less clear, which is extremely important.
Developing your own projects is one of the most interesting things, especially at the initial stage of a programmer career. You can choose any topic and technology. This is a kind of a test in battle conditions and an opportunity to present your skills to a potential employer, which should be borne in mind when making repositories public. You need to take care of the highest standard possible as this is your flagship. When looking for your first job, 1-2 projects should be sufficient to present your skills and apply. I think that a larger number of projects at a similar level of advancement is a waste of time. It is better to continue learning and possibly make a more advanced project after some time. I recommend listing the projects you are satisfied with in your CV. Add a short description, technologies used, and a link to the source code and demo.
As a front-end developer you should build a portfolio. Strong portfolio of work to showcase your skills and experience. Start by building small projects and websites, and add them to your portfolio as you progress. This will help you to demonstrate your abilities to potential employers and clients.
To speed up your development and improve the quality of assimilated knowledge, it is worth finding an experienced mentor who will pay attention to the things that a beginner programmer may not take into account, and will tell you which issues you should keep learning and which you have mastered at a sufficient level. Mentors are usually an extra expense, but if you dig deep enough, it is possible to get mentoring free of charge. It is however impossible to unequivocally indicate where you can obtain this mentoring as these are individual cases. From time to time this support is offered on Facebook groups or LinkedIn. If not, you can take the initiative and publish a request for mentoring.
Learning programming is a long-term process and it is impossible to skip this mentoring stage. Every aficionado of programming should find their own way of learning and array of good habits. In this way, your skills will improve proportionally to the hours devoted to learning.
Overall, becoming a front-end developer requires a combination of technical skills, creativity, and a willingness to work, learn and stay up to date with industry trends. By remembering this not only at the beginning but also during your way, you will build a strong foundation and develop the skills you need to pursue a successful career in front-end development.