Hi, Alex. Thank you for agreeing to an interview. First of all, I would like to know where you studied JS, where you worked and how did you get into IT in general?
I can’t say that I’ve learned a lot about coding at university. It all started with studying a book on Java for beginners. But at that time I had to look for a temporary job and postpone “getting into IT” because I haven’t found any applicat
ion to the knowledge I had received. Later working in tech support for an Internet service provider, I started studying HTML and CSS. The first project was a simple web page with little functionality. Most of the knowledge and experience came, of course, at the first job, which I was lucky enough to get.
Why did you choose JS?
Many people say that JS has a low entry threshold and that you can start programming even in notepad. Do you consider it a JS problem?
I don’t think it’s a problem, it is the language’s advantage.
JS has many frameworks. There’s even a joke that “name any word combination in English, google it and find a JS framework”. What can you tell us about them? Can you compare them, which is easier to learn and code in, which is more complicated, which is more convenient? And what do you use yourself?
Is the lack of strict typing a plus or minus for JS?
It’s both a plus and a minus: for something simple, it’s convenient, it saves a lot of time but for large projects or large teams it’s better to use, for example, TypeScript which is not difficult for a JS developer to master.
What advantages and disadvantages can you highlight in JS?
To answer this question well you need to know other programming languages so my answer is hardly exhaustive as I only write code in JS. Among the pros and cons, I’d like to mention the scope of application, popularity, support (JS is actively developing), community. The downsides are security problems and browser support.
Tell me about your ideal stack of technology that you would work with day and night?
Well, of course, it’s MEAN. It’s a full-stack framework that uses JS at each level, which greatly simplifies the task, allowing you to pay more attention to solving the problem, and speeding up development.
There are many more, I once got a book that described web specializations. A web developer is a developer of web sites, web applications. JS developer is a developer who uses JS to develop web, desktop, or mobile applications. A full-stack developer is a developer who can write both client and server parts of an application using various technologies.
What tips can you give to a beginner JS developer?
Check twice, push once. But on a serious note, use the tools, do not try to do all at once, do not immerse yourself in literature too much, but also do not forget to write code: do your own projects, solve problems or peruse the code of other developers who are more experienced. The development of so-called soft skills is no less important. And the most important thing is not to lose heart because you can manage it all!
Read also: Eight Small Habits That Make a Great Software Engineer