In four years, twenty people began to learn English at our office, and only two reached the advanced level. For a thousand academic hours, they tried group lessons, individual consultations, Oxford textbooks, podcasts, articles on Medium, and even watched Silicon Valley in the original. Was it worth the effort? Everything is very ambiguous. Here I will give thoughts about what level it is useful for a programmer to master, and when it is worth stopping a focused study.
The international classification distinguishes six levels of English proficiency. As in programming, it is difficult to draw a clear line between the upper-junior and pre-middle - the boundaries are very arbitrary. However, most courses build the curriculum precisely on the basis of these levels. Take a look at each stage in the context of development:
A1 (elementary)
The fastest and easiest level. Here you get acquainted with basic phonetics, learn to read and pronounce words correctly. Closed-open syllable and all that. For some reason, many programmers neglect this, confusing accent and correct pronunciation.
Developers like to distort words . Listen to your colleagues and immediately understand that all professional jargon is based on the distorted pronunciation of English words.
At this stage, make an effort on yourself and learn to share the correct pronunciation and accepted among colleagues.
- key
- e-kay!A2 (beginner)
This introduces you to the basic constructions and word order.
Make sure all interfaces and development environment are switched to English. Then you will cease to feel discomfort, mastering new interfaces, you will understand what the menu items are responsible for and what the system notifications mean.
You will begin to master compound nouns, this will help to correctly name variables . Your code will become more readable, it will not be so embarrassing to show it to someone.

B1 (intermediate)
English is a “proxy language” that is used for communication between people for whom it is not native. Therefore, in English you will communicate not only with the machine, but also with the entire world IT community.
Here you will begin to read the documentation in the source, because no matter where the technology came from (Ruby, for example, invented in Japan), the documentation will be in English. In this difficult matter, you will have to rely on electronic translators, but at least you will learn how to use them effectively.
At this point, you can write a coherent message or instruction on how your code works, or how to use the software. Learn to make relevant searches not only for keywords, but also in human language. You can post the issue on github, ask a question on stackoverflow, write a vendor technical support.
You can stop there, seriously
When you reach the last page in the Inetrmediate tutorial, close it and don’t take the next one. At first glance, there is no logic in this, since only half the course has been completed, but let's face it.
Firstly, if you work in a Russian company, then you don’t need English to communicate with your colleagues, and you’re unlikely to be invited to negotiate with foreign customers. There is nothing wrong with working in the domestic market.
Secondly, at this point you will have mastered all the necessary grammar and earn a normal fireproof supply of words and phrases. This will be enough for what I described above. In other cases, there is Google translate. By the way, the skill of using electronic translators is greatly underestimated. To understand where the program gives you get along, it is advisable to know English at the intermediate level.
The main reason is that you are inevitably stuck at this level. For this, there is even a name - Intermediate Plato. The effect of the plateau is observed at all, and its units overcome that lack motivation and will. Fighting this is almost useless.
The thing is that up to this point you have raised awareness - you listened to something, read, learned, remembered, but this did not lead to the desired result. As you progress, your actions are less and less useful, because the skill is not being developed.
The development of a skill requires a constant repetition of the same actions. There are exercises in English for this, but their effectiveness is limited. You can persistently open brackets and substitute words in the gaps, but this has nothing to do with live communication between people.
It turns out that you are constantly being sold content, a lot of different information, how to do something. This does not help to pump skill. To feel this moment, let's take the popular New English File series of textbooks - more than half of the books have the word intermediate in their title (Pre-intermediate, Intermediate, Intermediate Plus, Upper-intermediate). Each subsequent textbook contains less and less new information. Publishers sell you the illusion that repeating the material four times, you will miraculously find yourself at the advanced level. In fact, textbooks and courses help few to get out of the plateau state. It’s beneficial for publishers to teach you inefficiently, creating the feeling that just a little more - and you will speak no worse than the speaker’s native.
And last but not least, if you don’t have time to perfect the skill, or if you don’t manage to figure out how to do it, then you don’t need English. Do not torture yourself just because your friends, colleagues or relatives signed up for courses. Without English, you can build an excellent career, become a technical director, or open a successful business. If there is no time for English, it means that your life suits you. Spend your money on something else.