Lack of experience at the beginning
At any job, a worker must have some experience. And IT is not an inclusion. If you look at job boards, you'll see different experience requirements such as Middle+ or Senior+ in most cases. Because of that, working in IT for beginners can be difficult and unpleasant to do, and someone can even abandon entering IT due to it. That is, in order to get a job, a programmer must have experience in writing real programs, at least small and non-commercial ones. Tester - proven experience in application testing.
So we see: the requirements have increased by an order of magnitude. What follows from this: study, study, and study again! Every day, for three or four hours, at least a year. After that, you need to gain experience and create programs for free. So from the beginning of training to employment, at best, two years will pass. Do you have the opportunity and motivation to work hard (in fact, half a day) for two years after work? If there is, amazing, but here's one thing: no one guarantees that you will last more than a week at your first job! Juniors, especially trainees, are in the most vulnerable positions. High entry threshold
, who are ready to help and give you advice. Lack of English
For the last decade or even more, this cannot be a big problem, but there are still a lot of people with low English levels. Because of that, communication with clients can be extremely difficult, especially when you meet life or have phone calls. Choose a valid role for yourself
Newcomers who're entering IT, are frequently unsure of what to do and what they actually CAN do. Here's the list of the most popular and demanded roles in IT.