Good advice in other comments. If you are looking two years out you have a lot of time to get experience. The summary here is write code, learn about some existing open source projects, try to make some contributions, and work on your English communication skills.
1. Higher level English skills are really important, for both understanding the requirements and getting work. If you can read and write well enough to be on hacker news that might be a good indicator.
2. I have an impression that some frontend jobs are in higher demand in terms of numbers of jobs and maybe less technically demanding, might be better for beginner jobs. But frontend (ui) and backend are pretty different. I imagine frontend could take more personal interaction to adjust things, which emphasizes English skills even more.
3. Backend jobs are going to require more understanding of systems concepts (like OS, C++ and Java concepts); this is not a knock on UI, it's just different things are emphasized. There may be more opportunity to do longer duration work on backend.
4. You've got two years to build up your experience and resume. Programming contests look nice on a resume, try creative problem solving (i.e. maybe do a coding problem a day (or 2-3 a week), start on easy ones.
5. A lot of programming is looking at existing old and giant ugly code bases. Finding an existing open source project or two and making some pull requests to add new things is a great resume & experience building. This can be hard and time consuming though.
6. Your resume and experience will be crucial, that first job can be hard to get. Especially at the beginning think about what you get out of a job in terms of resume building, it's not just money and experience.
7. Ultimately, your ability to write code and read the code in existing systems are the things that will power your career.
8. Be professional. Don't get in flame wars on your public profile or github account, don't attack people's religion, race, ideology, country, gender, etc. If you don't understand something, ask questions, don't flame people. "Can you explain this (whatever thing), I don't understand the problem" goes a long way to establishing you will be a good person to work with.
Good luck! This is a lot of stuff, but you have two years, just work toward these things.
(edit - formatting)