In an era where graduation often leads to unemployment, let’s take a look at how a friend navigated embedded development, dedicated to those who feel lost.
Unfavorable Start
When I graduated with a bachelor’s degree, I held honors such as three provincial first prizes in the electronics competition, a first-class scholarship, and recognition as an outstanding student and intern. For students, these accolades are enough to boast about.
However, in reality, my foundation was not solid enough, and I was unprepared for job hunting. Unfortunately, I missed the autumn recruitment and couldn’t land a position at a major company like Huawei. By the time I graduated, I had to settle for a job at a state-owned enterprise during the spring recruitment. After a year in software there, I realized something was off. Although I was in a software development position, I found myself not writing code for extended periods?!
Comfort is appealing, who doesn’t like it? But after a long time without progress, as an ambitious young person, I felt increasingly anxious. Even more frightening was the unfamiliarity with things I once knew well; I was genuinely scared—eventually, I resigned without another job lined up.
Life must go on; I still needed to eat, and I urgently required a job to support my family.
Given my lack of experience at the time, I hastily joined a chip company in Shenzhen, where their chip development was a new business. I thought I would settle down, learn something, accumulate experience, and then plan my next steps.
However, after a few months, I felt something was wrong; it was not what I had imagined!
Clearly, it was a development position, but how did I gradually become a test engineer?

Helpless, I tried every means to squeeze out time to recharge and prepare for a job change…
Unexpectedly, this year brought the pandemic; it was hard to let go of a job I had fought to keep.
It wasn’t until six months later that I dared to change jobs. This time, I didn’t make a hasty choice but compared many options and found a relatively satisfactory job.
I must mention that every job change is a risky leap, with significant costs. Changing industries is equivalent to starting over!
To summarize why my first job after graduation was unsatisfactory:
-
I did not prepare well for campus recruitment. Campus recruitment is a rare opportunity; students should cherish it and practice the necessary questions.
-
Lack of interview experience. I had too few interviews during my first two job hunts, leading to insufficient information for decision-making and a hasty choice.
About Technology
I believe the best opportunity for embedded development is right after graduation. Microcontrollers and embedded systems can be seen as two subfields. After graduation, transitioning from microcontrollers to embedded systems is quite a leap. For instance, after working with STM32 microcontrollers for a while, finding a position related to embedded Linux can lead to numerous rejections—don’t ask me how I know…
It’s essential to accumulate skills in microcontrollers and learn Linux well, as opportunities are always reserved for those who are prepared. I learned Linux in my spare time, starting around March, following the development board materials. After spending some time, I completed the content and made some summary notes.
Although I tend to develop in application areas, I am also interested in other aspects; having some breadth is necessary to deepen our overall understanding.
How to Find a Job
Regarding job hunting, my thought is: accurately understand and position oneself within the industry.
To understand the embedded industry in detail, you can refer to this article: Is the embedded industry really without prospects? For those of us who have only worked with microcontrollers before, if the job requirements are related to microcontrollers and familiar with Linux, there are many opportunities; seek out such positions.
I found such a position, requiring STM32, RTOS, and Linux. During the interview, I was asked about all of these. However, I ended up working on Linux-related tasks, which was unexpected but suited me well. Although I am still at the beginner level with Linux, I have at least crossed the threshold and can gradually catch up.
As fresh graduates, we often pursue technical growth, such as learning STM32 and embedded Linux. Since I am involved in application development, I will focus on this aspect; other positions may not apply as much. We need to clarify that from a product perspective, STM32 and embedded Linux are just tools. If we only know how to use tools, our value may not be that significant. For example, in consumer electronics, we need to think about how to design our functions, applications, and business logic to enhance user experience.
Identify a focal point and continuously deepen your expertise, accumulating industry experience. Even if we only know STM32, if we can find a promising industry, that can also be very rewarding.
Conclusion
Knowing there is no remedy for regret, I still want to say: if I could start over, I would pursue a master’s degree and then focus on algorithms. After graduating with a master’s, if I could work in algorithms, I would; if not, I could return to embedded systems. In my spare time, I would try to explore and broaden my horizons, whether in work skills or life philosophy.