High-Pressure Moments in Embedded Development

Introduction:

Today, let’s briefly discuss how to solve problems encountered during the embedded development process.

Because in the development process, it is impossible to have everything go smoothly, especially when dealing with hardware, this really tests an engineer’s comprehensive ability, particularly in some company positions where one is expected to be a full-stack engineer!

This article is mainly for beginners or friends with about 1-3 years of work experience. If you are an experienced engineer, you will surely have rich experience and can respond calmly to problems! However, for beginners, due to a lack of practical experience, especially in corporate real-world development, it can be very challenging when encountering difficult issues!

Below are some very tricky problems that I encountered during my own development experience in a company:

  • 1. Sometimes a functional requirement is quite difficult, or during the development process, one might get stuck on a certain technical point; at this point, if the leader or client is pressing for results, the pressure can be quite high; or getting stuck on debugging.

  • 2. The software version has already been released and is on the production line; at this point, if a bug is found during the final inspection on the production line, it really tests one’s ability to respond quickly!

Personal Views:

Regarding the first situation: Sometimes during the development process, we indeed encounter situations where we get stuck on a technical point, or we might not be clear whether it’s a software issue or a hardware issue, which can lead to such scenarios:

  • The software engineer checks the software and rules out that it is not a software issue; then possibly due to some factors of the product, it could be a hardware issue, so the hardware engineer goes to check if there is a hardware problem, but the hardware engineer finds no issues with the hardware!

When this situation arises, as a software engineer, you need to carefully check the software multiple times while also having the hardware engineer assist you; for example, sometimes you need to use an oscilloscope to measure whether the signals on the pins are correct!

Another scenario is when you are stuck on a software technical point and are under pressure to resolve it quickly; at this point, it can be quite stressful; you must calm down and for debugging, you need to clarify the code flow. Personally, I believe a good habit is to timely draw the flowchart to clarify things, making debugging smoother. Of course, sometimes bugs are difficult technical points, which requires you to have the ability to quickly learn new technologies; this ability does not come overnight but is accumulated over time!

Simply encountering technical problems while developing new features also requires the ability to quickly learn new knowledge!

To summarize: In such cases, the pressure can be quite high, but from another perspective, this is an opportunity for rapid improvement because, as mentioned earlier, encountering new technical points during development or debugging will prompt you to think critically and encourage you to learn the relevant technical knowledge independently!

During the development process, it is important not to just complete the tasks assigned by the leaders; after finishing the task, you should also learn to summarize, think, and reflect; reflecting on your shortcomings is how we truly improve!

Regarding the second situation: This actually tests your adaptability and communication skills; because this situation occurs just before shipping, the pressure may be even greater than that described in the previous development process; because at this point, the leader will be paying close attention!

In such cases, you need to calm down even more, carefully listen to the feedback from the production line, and thoroughly investigate the issues; generally speaking, at this point, it is unlikely to be a significant technical point issue, but rather software instability, with a bug appearing just as it is being tested by colleagues on the production line!

To summarize: This situation mainly tests personal adaptability to unexpected circumstances and problem-solving abilities; these moments can be more stressful and tense, so you need to gradually develop the ability to handle and solve unexpected issues!

In Conclusion:

In summary, during the embedded development process, we will encounter various bizarre problems. When faced with problems, we must calm down and respond; being impulsive will only hinder problem-solving!

So, what other moments in embedded development cause you great pressure? Feel free to leave a comment and share~

High-Pressure Moments in Embedded Development

END

Source: txp plays Linux
Copyright belongs to the original author. If there is any infringement, please contact for deletion.
Recommended Reading
How many ways do you know to use STM32’s ADC?
Do you need to understand both software and hardware when going in the embedded direction?
Memory-saving methods in microcontroller development (C language version)

→ Follow to stay updated ←

Leave a Comment