There are indeed significant differences between PLC development and embedded development, mainly in terms of the skills required, the development language used, the way of working, and the skill progression path.
PLC development is mainly concerned with industrial automation control, which requires mastering the basic principles of PLC, ladder programming skills, configuration software development process, and certain electrical knowledge. Its development language is mainly ladder diagram language, and the working environment is often on-site development and debugging, and it requires frequent communication with customers. In terms of skill advancement, PLC development may involve the development of a variety of PLC and configuration software, as well as a deeper understanding of industrial control business processes.
Embedded development mainly focuses on software development on embedded systems such as microprocessors and microcontrollers, and requires mastering the basic principles of MCU and SOC, the basics of C language programming, the use of Linux systems, and the principles of Linux and RTOS. It is mainly developed in C, and assembly language may be used in some scenarios. In terms of skill advancement, embedded development may involve MCU development, embedded Linux application development, and embedded Linux BSP development.
If you want to change careers to embedded development, you really need to start from the basics, master the basic principles and skills of MCU and embedded development, and then continuously improve your abilities through practical projects. It is recommended to start with simple MCU development, gradually accumulate experience and skills, and then move on to more complex embedded Linux application development and driver development. This process takes a lot of time and effort, but with determination and patience, it is completely manageable. As for whether it is timely, it mainly depends on the individual's learning speed and practice opportunities, as well as the needs and competition of the industry. If you can find a suitable practical project or mentor, it will greatly speed up the learning process.
29 is not too late, but it is also necessary to assess your ability to learn and adapt, as well as the needs and competition of the new industry. At the same time, you emphasized the love for the industry and the importance of paying enough costs, which is very accurate. Only those who truly love and are willing to put in the time and effort can succeed in a new industry.
As for whether to abandon the original accumulation of many years, this is indeed a question that needs to be carefully considered. Years of accumulation and precipitation may not be directly applicable after changing careers, but that doesn't mean they're completely worthless. These experiences can play an indirect role in new areas, such as providing a different perspective on thinking and problem-solving. Therefore, zeroing everything out is not the only option.
Your suggestion to develop along the path of PLC technology improvement on the existing basis is also very interesting. On the basis of maintaining the accumulation of existing technology, the development of upper-level design, especially the direction of configuration, can make full use of the existing knowledge and experience, and at the same time, we can also seek breakthroughs and development in new fields. This is an option worth considering to make the path to changing careers smoother and smoother.
In general, there is no definite answer to whether it is too late to change careers, and it needs to be comprehensively evaluated according to personal circumstances and industry conditions. But in any case, maintaining the love of the industry and paying enough costs is the key. At the same time, it is also necessary to comprehensively consider whether to give up the original years of accumulation, and how to give full play to their advantages and value in new fields.