Beyond the success of Kotlin: a documentary about how and why Kotlin succeeded in the world of Android development.

Alexandr Gabdrafikov: Expert Advice for How to Break into the Profession of a Web Developer

How to take a path to a modern programming language, what you need to know and learn, what prospects open up for a programming expert — Lead Software Engineer Aleksandr Gabdrafikov answers your questions

Lead Software Engineer Aleksandr Gabdrafikov


The role of a JS specialist

— I have been in the profession for more than 7 years. I am a Lead Software Engineer and I develop interfaces and client applications in EPAM Anywhere.

Basically, a JavaScript Developer JS expert makes websites and front-end applications. A JS professional can, however, create almost anything: server infrastructure, mobile development, coding software for working with 3D graphics, and Machine Learning.

Essential knowledge for web experts

— In my opinion, the first things worth studying are the basics of Computer Science. To be a software engineer — no matter what language — you need to understand how the computer as a whole works: processor, memory, synchronous or asynchronous operations, etc. This is the foundation on which everything is built.

You also need to understand how the platform you are working with actually works. Whether it's a browser, server, mobile platform, desktop, etc.

The JavaScript expert needs to know the JS language itself: its basics, scopes, closures, how synchronous and asynchronous operations work, event loops, etc. Additional elements you need to know depend on the direction in which you are working:

  • If it is the Front-End, then you need to know the browser APIs, what DOM is, and the manipulations that go along with it.
  • If it is a framework, then you need to figure out how it works, and understand its basics.
  • If it is the Back-End, then you need to understand how the framework you interact with works (Node.js, Express, Nest.js, Deno, etc.). Also, for a Back-End Developer, you need to be able to work with other components of the system, such as databases.

Pathways to mastery in JavaScript

— Of course, having an education in the field of IT is a big plus. In this case, to resolve basic questions with an understanding of computer science. But this is more of a should-have than a must-have. Education will simply accelerate the growth of a specialist.

There are many resources on the Internet on all kinds of topics in programming. Starting from the basics and ending with the nuances. Of course, you need to start with the basics: take the Harvard CS50 course. Then start learning the language. The Book You Don't Know JS Yet takes a deeper look at how it works. See the list of good books to learn JavaScript created by Anywhere Club.

8 useful sources for learning JavaScript

I recommend that everyone attend IT conferences or watch relevant recordings on YouTube. A lot of new and interesting things can be learned there.

An internship in an IT company is a good option to help you quickly grow into a novice programmer. But to do this, you’ll need to have some experience or at least know the basics.

And do not forget about the English language. This is a must-have skill. There is a lot of translated information, but basically all the new developments taking place in the IT world are in English. And to keep up with the times, and consume new content, you need to know English at least at the reading level.

Discover your English level

How long does the training take

— How much time does it take to study? It's different for everyone. It depends on how much time you devote to your training and what kind of background you have. In general, it takes six months to a year to start solving basic tasks. This time is needed to sort out the systems, experiment with them, and try to accomplish some introductory tasks. But this timeframe is based on the expectation that you already have a base.

Of course, the training does not end there. Working as a programmer means constant growth. The industry does not stand still, new technologies and approaches to development are being introduced all the time. We all need to keep up.

Career Prospects for JS Experts

— From the information that I provided above, you can conclude that JS is a general-purpose language. Accordingly, the coder who writes with it can do almost anything. It follows logically that there are many prospects.

A good coder always keeps an eye on areas other than what they are doing day-to-day. If you are developing in JS, it is useful to see how other languages work — for example, those that are not dynamically typed, such as C# or any other statically-typed language.

Conclusions

— Dig deep and figure out how the tools you use work. Read the source code of the libraries you use, and carefully study the documentation for them. This will enable you to broaden your horizons, gain more insight into solving problems, and see how large systems work under the hood.

Discover IT professions
Related posts
Get the latest updates on the platforms you love