That will depend pretty much on the setting when the person needs to move on. We know people who have been here for 20 years, have jobs, and function perfectly on the job, but when they have to go to a hospital for a cardiac interaction, they cannot function in the language.
There are different levels of language. Everyday language definitely can be acquired sometimes in a couple of years, a year. It really depends on the community, the person, and their accessibility to lessons. However, you cannot really state that within this period of time, this person should know English at any level. If you're going to court, even though you may not need interpretation services to work, you may need them at the court level. Or, if you have mental health issues, you may not be comfortable communicating in the language.