I am engaged in automotive electronic software “target=”_blank”> automotive Electronic software development, and have several years of experience in embedded software development. And I am a major in vehicle engineering, which is not a promising major at the moment. Software development is divided into Application layer software development and low-level software development, the following content will start with application layer software development.
What is the work content of automotive electronic software development?
First of all, automotive software belongs to embedded software development, which is very different from software development in the Internet industry. If you use a simple sentence to summarize it is: design the code of the controller to achieve the functions required by the car. For example, the automatic sensor wiper, on-board steering headlights. Don’t be afraid to see the word code, don’t imagine the scene of being a code farmer.
Most of the codes are based on graphical design, and codes are automatically generated. Then integrate the generated code with the underlying software and other codes. Compile and download to the controller to realize the desired car function.
Let’s start with the introduction. The core element of this is what kind of function needs to be implemented, that is, the specific development requirements. Then it is to build logic according to requirements, use simulink or targetlink to graphically design and automatically generate code in accordance with the corresponding standards and specifications, and set the relevant optimization parameters. The automatically generated code is more standardized than handwriting to a certain extent. Then integrate the automatically generated code into the entire software project. One of the difficulties is the realization of logic, which is your algorithm.
Take the simplest example: control the delay of turning off the headlights of a car, when it is detected that the key leaves the car, and the headlights are in the on state. After the door is closed, the headlights turn off with a delay of 30 seconds. Think about it yourself, how to achieve it with simulink.
The above is a more popular understanding. There are many specifications and processes that need to be learned. The process is a standard V process (self-Baidu). The development of V process is inseparable from choosing a variety of development tools to combine to achieve the requirements of each link. There are many types of development tools that overlap or complement each other. Good opportunities, such as newly developed ECU software work.
The moment is a rare opportunity for those who are just entering the industry. Because the software architecture needs to be built a little bit from scratch, you can be familiar with the entire software project when you participate. But for most of the work content may be maintenance (the entire software project has been established in the early stage, you only need to modify the related functions), what you need to do is to familiarize yourself with the structure of the entire existing software, and understand each function according to the requirements. The realization. Then according to the specific needs to maintain and modify.
Why recommend automotive electronics software development?
Although the automotive industry is currently in recession, the automotive industry is still relatively good in the manufacturing industry. For students in vehicle engineering or mechanical engineering, if they do not have the ability to transform, it is still recommended to choose the automotive industry. How to choose a specific direction?
The automotive industry continues to be hot with smart driving, connected cars and new energy related BMS, which have driven it, but as far as I know, most of the domestic OEM (independent + joint venture) business of these two parts are in the form of outsourcing. What OEM does is to provide specific functional requirements and test samples. The rest of the concrete realization and the solution of various problems are all done by the suppliers. Fortunately, many suppliers are now domestic technology companies. Therefore, engaging in these two directions in OEM is responsible for demand management or testing, or the arrangement of components. Compared with these two directions, the technical content of automotive electronic software development is not low, which is better than other traditional directions. The above is one of the aspects.
On the other hand, for traditional electronic software development, some of the best independent R&D centers in the north and south of the country, and some major software departments have only been established in recent years or have been separated from other departments. Because in the past, the main software was monopolized by a few suppliers, not only from the technical monopoly, but also from the standardization and development process experience. In order to reduce costs and improve competitiveness under the new trend, the world has begun to engage in independent research and development, and the number of people needs to rise exponentially. There are only a few carrots. Regardless of the scale of many software R&D departments with hundreds of people, more than 80% are fresh graduates or previous fresh graduates. From another point of view, there will undoubtedly be more and more controllers in cars, so the gap is much larger than the traditional direction (chassis, body, interior and exterior). It is precisely because of the large gap that the salary should be higher.
Career choice in the direction of automotive electronics software
OEM:
Work as an electronic software engineer in an OEM, whether it is a vehicle controller or a body controller. On the surface, the nature of software development and OEM work is a bit far behind. In fact, it is not. As mentioned above, the world has begun to engage in independent research and development. Its status is extremely important. In car companies, some people need to truly understand automotive electronic software to develop and enhance their own autonomous capabilities, so that they will not be led by suppliers. In particular, the relevant departments have stipulated the necessary indicators for the autonomy rate of the controller software of some enterprises, which must meet the requirements of the autonomy rate.
Compared with other automotive engineers, the electronic software engineers of OEMs are more irreplaceable. For example, the production site needs software engineers, wiring harness design engineers, body design engineers, chassis design engineers, etc. to deal with loading problems. If it is a mechanical structure problem, the car body can be solved on site on behalf of the chassis engineer. However, if there is an electronic control software problem, automotive engineers in other directions do not understand software, and only software engineers can solve the problem. But electronic software engineers can help solve the wiring harness problem. At the same time, what you see in the OEM is the entire car, and the problems you encounter will also be system problems. So what you know is the whole vehicle. Your future career path will not be very narrow.
Supplier Tier:
When working in a supplier, what you know very well is the part you are responsible for, and its design will be more standardized and detailed, but it lacks the overall system thinking of the car. A OEM and a supplier have their own advantages and disadvantages. OEMs are more extensive and have a deeper understanding of automobiles. There will be more opportunities for job-hopping. The supplier is more sophisticated, and the road is relatively narrow, and you may not be able to take charge of the core work. Therefore, it is recommended that fresh graduates first work in OEM and then switch to suppliers. Those with more than five years of service can even be directly supervisors. Above, what everyone is most concerned about is…not even talking about money. You can find out if you just go to hunt and hire soso, the career limit is generally higher than 350,000 annual salary.
Which majors can be done, how to study by yourself, can you be recognized after self-study, and which companies can you go to? In fact, there are many majors in this direction: computer, automation, vehicles, electronic information, control engineering, etc.
Regarding the self-study method, from the perspective of the vehicle, it is similar to the professional. First of all, you have to learn it, and it is recommended to study the single-chip microcomputer: 51 single-chip microcomputer. Learning language: “C language programming”. MATLAB learning: “simulink simulation and code generation technology introduction to proficiency”. The important thing above is to practice more. You can also take a moment to download network resources or courses.
What kind of companies can you find?
Entering the automotive industry, most of the selection of resumes is for school degrees and the other for majors. If the school passes the customs, the vehicle engineering must not be the reason for your removal (except for FAW-Volkswagen this year). Rely on your charisma and the ink in your stomach during the interview. In fact, under the premise of seeking transformation, these later issues are irrelevant. If you don’t learn, you won’t have a chance. If you do, chances are naturally there. It may not be your starting point. Maybe you will have the opportunity after two or three years. Anyway, if you don’t prepare, you will be completely out of the picture.
Then will it be recognized?
As long as you understand it, there will be goods in your mind. If the recruiter is technically involved, he is likely to recognize you. If you don’t understand, when you confidently introduce your personal strengths, you will actually be exposed. Moreover, because you not only understand the structure of the car, but also the electronic control, you will be recognized by the company and colleagues-the electronic software engineer who knows the car best, haha.