1. For projects with strong engineering properties, the algorithm is a secondary problem; On the contrary, practical ability and management ability are very important.
Learning mathematics requires considerable determination and patience, and it is easy to stick to it.
If there is no foundation of software engineering before, it is recommended to study software engineering. However, if you have some basic/project experience, don't study soft workers. Generally speaking, soft workers are relatively poor, so it is recommended to study computer science and technology (although there will be some hardware-related content).
As for electronic information, don't learn it, it is not easy to learn, and it is mainly hardware.