Welcome to the world of software development in corporations. I have been working in that world for more than 25 years and I can assure you that the chances of improving any of the conditions you describe are almost zero. However, you can gradually change your attitude and expectations so that you experience less and less misery in it.
I shall address your points in a different order from how you listed them to make the solutions easier to understand.
the code base is a complete mess that requires a lot of re-factoring
The code bases of almost all software developed in corporations are a mess. This is because human thinking process is not crisp and clear as it is usually considered to be, but it is quite muddled most of the time. The clarity of the thought process is easily degraded by emotions and moods distinct from the thinking process itself. For example, the code developed by someone after an argument with the boss will invariably be worse than the code s/he develops when in a good mood. The attitude of management and therefore the environment in most corporations is such that it puts the people who have the actual skills to develop any product in a bad mood a lot of the time. Thus most code is developed when in a not so good mood and so it is messy. In fact, as a software developer you can expect yourself to be stuck neck deep in messy code most of your time. Being a software engineer is not very different from being a sanitation engineer.
Do not start your day with the expectation of dealing with clean, sensible code. Repeat in your mind several times the following before you start your work day:
software engineer == sanitation engineer; I get paid for it.
Learn the code base in small chunks, that is, do not expect to be able to understand the entire code base in a short time. Try to understand small parts of it, such as all the code for a few relatively simple features of the application. This can be made easier by working on bug investigation and fixing for the first few weeks in a large project rather than jumping into developing new code right away. You may want to talk to your team lead or manager about this.
too many meetings like 5 hrs a week are getting in the way of me doing much.
This is a bad habit that is spread by management. Keep in mind that most managers do not have any skills needed to actually contribute to product development. However, they have the desire to maintain as much power and control over as many things as possible and also show to their own managers how crucial their contribution is. The brilliant solution that managers and executives have come up with is meetings. It is not really a solution, but in their minds it is and in corporations what a manager assumes, feels or thinks always overrides reality. After a few years, the meeting habit also spreads to developers. You can expect to waste a lot of time in meetings, especially when working in large corporations.
You must regard meetings the same way as you would regard commute problems in the city you live in. It is just something you have to live with. Keep in mind that you get paid to waste time in meetings unlike in commute.
the lead developer is kind of rude and curt sometimes
Team leads in software development in corporations are invariably like that. Team leads tend to be relatively young and therefore have not had the time to mature in their roles. They tend to be caught between the manager(s) and the other team members, and combined with their own ambition, their stress levels are high. They are effectively new to their roles and are in a condition very similar to your own.
Depend less on the team lead and approach the other developers in your team as much as possible for help.
because my tasks take a while to do because I'm new to the job and no expectations for speed were communicated to me I feel very uncomfortable
Set your own pace. Do not worry about not meeting the expectations of your manager or colleagues. Work at a pace where you do not feel stressed out but at the same time you do not slack and waste time. This is something that comes with practice. Do not be afraid that sometime in the future you may get a feedback that your pace of work does not live up to their expectations, which they have not bothered to communicate to you. If and when that happens, tell your manager that no expectation was communicated to you before that time, you need more help with locating code and any other help you need.
Always follow the middle way between slacking off and stressing out when determining your pace of work. Following this middle way is much more important in the long run than any rewards you expect from working, such as praise, status, promotion, power or higher salary. Doing otherwise is like putting the cart in front of the horse; such a contraption will just become a problem for others on the road with their horses and carts in the right order.
new to ReactJS and the concept of it
As you change your approach in the way described for the previous point and your stress levels become lower, it will become easier to learn new technologies. Look for online resources about ReactJS or purchase some good books. Spend some time every day just on learning ReactJS rather than working on the project. You can also try working through some free tutorials. However, do not overwork or stay too late in the office for this. Again, do not expect to become an expert in a short time. Learning is a gradual process.