Introduction

A few days ago, I saw a guy online who was about to graduate complaining that university is meaningless. I think that’s too one-sided. Also, my high school classmates always believed that studying computer science guarantees a high-paying job, thinking they could do it too.

Just half a year ago, during an interview, I talked with the interviewer about my experience of getting into a big company from a third-tier university. The interviewer instinctively thought I must have gotten there by grinding through coding problems. I didn’t elaborate at the time.

So, I wanted to write this article as a response to that complaint and to share my real experiences. I’m not claiming to be exceptional or highly successful now—far from it. I just want to share some of my experiences and thoughts from university, especially for those who might be as confused as I once was.

This article is not intended to boast about the computer science major; it’s just a personal university memoir. Please don’t impulsively change your major because of this article; choose your major carefully.

I don’t like writing diaries, so many things are recalled from memory, and the timeline might be a bit jumbled. I’ll just talk about whatever comes to mind.

High School and Admission: A Rough Start

My high school grades were quite poor. I attended a very ordinary school in Zhejiang, and I barely studied in my first two years. It wasn’t until the third year that I started working hard, but my foundation was too weak. I remember very clearly that in the midterm exam of the first semester of my third year, I scored only 260 points in total for Chinese, Math, English, and Science.

In the end, my college entrance exam scores were just enough to get into a bachelor’s program at a private third-tier university.

Choosing a major was even more confusing. At that time, my family heard from friends that “male nurses have good job prospects” and wanted me to study nursing at a vocational college. But I felt that since I managed to get into a bachelor’s program, I should at least pursue that. As for what to study, I had no idea and just randomly filled out my application, with Japanese as my first choice and Electrical Engineering as a backup.

In short, that’s how my university journey began: poor grades, an average school, and no clear idea of what I wanted to do.

Freshman Year: Confusion, Setbacks, and an Important Decision

At the start of my freshman year, I was quite motivated, talking with classmates on the balcony about studying hard together. But reality quickly taught me a lesson.

In calculus, I listened attentively in class, but I only scored 26 on the midterm. This score was a big blow to me, making me feel like I wasn’t cut out for math. It was partly my fault for not having a solid foundation in high school. Back then, whenever the math teacher started lecturing, I’d get sleepy within five minutes, and I couldn’t control it.

Later, a helpful senior noticed that a few of us freshmen were eager to improve and suggested we self-study microcontrollers, even providing a lot of materials. I looked into it and found that it required buying development boards and connecting to a computer, which seemed quite complex and costly to get started, so I didn’t pursue it further.

Throughout my freshman year, I often found myself in a state of wanting to work hard but not knowing where to focus my efforts, feeling quite lost.

The real turning point came during the second semester of my freshman year with the major selection process. Students in our Electrical Engineering College could choose to stay in electrical engineering or switch to the computer science major.

This choice was very important to me. I went on Zhihu to see what people were saying, and the general consensus was that studying electrical engineering heavily depends on the school’s reputation and family background. If you want to work for the State Grid Corporation after graduation, you need at least one of these. I weighed my situation and realized that my school wasn’t prestigious, and I didn’t have any family connections.

Looking at computer science, Zhihu mentioned that this field is relatively fair, not caring much about your background. As long as you are willing to put in the effort to learn, you have a chance. I had also learned a bit of C language in my freshman year. Although I wasn’t particularly good at it, I managed to pass the exams and felt it was something I could understand. Moreover, Python was already quite popular at the time, and I was very interested in it.

So, I decided to switch to the computer science major.

Sophomore Year: Earning Money, Heartbreak, and My Own Laboratory

Entering my sophomore year, I officially became a computer science student. The school taught Java in a structured manner, but I was captivated by Python.

I still remember that feeling. I found some videos online to learn Python and clicked on a course from a training class. After watching a few lessons, one thought kept running through my mind:

“Wow, I can’t believe the lessons can be explained so clearly?!"

This discovery was shocking. It made me realize that programming wasn’t something dull or incomprehensible, but rather something very straightforward and interesting.

Achieving financial independence was another important beginning.

My university tuition was quite expensive, about 30,000 yuan a year, which was a heavy burden for an ordinary working-class family like ours. So, I told my family early on that I didn’t want to rely on them financially anymore. I received 1,500 yuan a month from home for living expenses, but it was far from enough, especially since I had a long-distance girlfriend at the time, which was also costly.

To earn money, I did all sorts of jobs. I delivered food on campus and worked as a stock clerk at a small supermarket in the school. The stock clerk job was very repetitive, involving pulling drinks like Master Kong from the warehouse and stocking the shelves bottle by bottle. Although tiring, it earned me about 800 yuan a month. These jobs gave me my first exposure to the world outside the campus.

Later, as I became more proficient in Python, especially in web scraping, I started taking on small freelance jobs online. When I’m interested in something, I try to find all the related resources to learn from. I bought three books on web scraping and typed out the code word by word from start to finish.

Gradually, I began to work on real projects. For example, helping people scrape data from foreign websites and organizing it into Excel; or assisting seniors from other schools with their graduation projects, where they needed user data from Zhihu for AI analysis, and I would help them scrape it. I remember using the DFS (Depth-First Search) algorithm to traverse the network structure of Zhihu users' followers and followings, which was particularly interesting. A single job could earn me five to six hundred yuan. The first time I earned money from code I wrote myself, it felt truly different. I felt like I could support myself with this skill.

It was around that time that many things happened in my life.

I broke up with my long-distance girlfriend of a year and a half. According to her, her mother disapproved, thinking my family wasn’t wealthy enough and that I wasn’t tall enough. I didn’t dwell on it too much; she might have been a bit of a “mama’s girl,” listening to her family. But this incident did hit me hard, giving me a strong “underdog” feeling, a sense of being looked down upon. Strangely, I actually enjoyed this feeling; it fueled a desire to prove myself, to “prove them wrong.” This drive made me focus more intently on my studies.

Another thing that bothered me was the school’s organized study tour to Japan, where the school would cover half the cost, and we had to pay the other half. Due to my family’s financial situation and my dad’s conservative nature, I couldn’t go. This became a thorn in my side, and watching my classmates enjoy themselves in Japan left me feeling quite bitter.

But that’s how fate works; when one door closes, another one opens.

During the seven days my classmates were in Japan, the school arranged for those of us who stayed behind to study in the lab. Many classmates didn’t show up, so it was just me, spending time with the seniors working on their graduation projects. Although their technical skills weren’t particularly advanced, for a sophomore just getting into computers, I learned quite a bit.

More importantly, my diligence during those days caught the attention of the teacher in charge of the lab. I mustered the courage to ask the teacher if I could have a lab to myself, as I didn’t want to study in the dorm. To my surprise, the teacher readily agreed and granted access to my campus card.

That lab was a human-computer UI interaction lab, filled with old iMacs with outdated systems that weren’t very user-friendly. But it had air conditioning and was a quiet space entirely my own for studying.

From that day on, this lab essentially became my home for the remaining years of university. I’m truly grateful to that teacher for giving a student like me, eager to learn, such an opportunity. It was far more important to me than the study tour to Japan.

Days and Nights in the Lab

After returning to school, my life basically revolved around three places: the dorm, the cafeteria, and the lab.

My roommate, who was also a good friend, and I spent every day in the lab studying. We had a healthy competition, which I think is great in college, much better than everyone just playing games together. We would usually arrive at the lab by noon and stay until the teaching building closed. Around ten at night, when the entire building’s lights were turned off, the security guard would come up to urge us to leave.

I was truly immersed in the sea of programming, not for any competition, just for the pure love of it, just wanting to learn. Studying felt as refreshing as taking a deep breath after surfacing from underwater. I remember several times, after a night out with friends, returning to school drunk and dizzy, the first thing I did wasn’t to go back to the dorm to sleep but to head to the lab and write some more code. At that time, I was also watching Andrew Ng’s machine learning course. Although I was still confused about the future, unsure whether to pursue web scraping or AI, I just couldn’t stop.

During that time, I read a lot of books. I remember reading “Algorithms (4th Edition)”, “Grokking Algorithms”, and “The Pragmatic Programmer”. I also went through the official Django tutorial from start to finish and wrote my first backend website using Python.

Junior Year: Transition, Doubt, and Finding a Sense of Belonging in a Small Company {/examples/}

In my junior year, I began to seriously consider my career direction. A classmate who studied with me in the lab was always focused on Java. Influenced by him, I started to feel that Python might not have as broad a job market, so I decided to shift to backend development, focusing on Java.

Later, I received an internship offer from iQIYI, working on L4 gateway-related tasks. The interview process was very challenging. I remember I had already gone through two or three rounds. Once, while we were out for social practice, I was on a bus when I received a call from the interviewer saying they wanted to add another interview round. I guessed it might be because they usually only hire graduate students as interns, and hiring me was an exception, so they needed an additional interview for confirmation. I completed that interview in the shaky back seat of the bus, which was particularly awkward. Whatever the interviewer asked, I answered over the phone. After getting off the bus, my face was red. But in any case, they eventually hired me.

Later, I received an internship offer from iQIYI. But this internship was a big blow to me.

I interned at iQIYI with a graduate student from Wuhan University whom I met on Niuke. To save money, we rented a very shabby single room in Shanghai for 2000 yuan, with two beds, and that’s how we spent the internship period. I still remember those 1200 yuan attic rooms we saw when house hunting, which were as small as pigeon cages and not fit for human habitation.

I was not happy at iQIYI. My mentor seemed to look down on me from the bottom of his heart, possibly because I was from a third-tier university. During the First Day Orientation, everyone else listed schools like Fudan, Zhejiang University, and Wuhan University, while I was the only one from a third-tier school, which was very conspicuous. I didn’t understand much about what I was doing, and my output was poor, which made my mentor very disappointed. During that time, I felt like I was being manipulated and fell into deep self-doubt.

After returning from iQIYI, I started the fall recruitment early. Because I couldn’t say much about my internship experience, I failed the interviews with Tencent and Alibaba. Especially with Alibaba, the interview pressure was immense, and the interviewer even started to manipulate me during the interview. After the interview, I had a stomach spasm, and the feeling was so bad that I developed a mutual dislike for Alibaba.

Eventually, I received an offer from a small company during the fall recruitment. This company worked with Scala. To be honest, those who can write Scala well are basically in the top 30% of Java programmers, so there were many technical experts in the company. There were tech nomads, famous bloggers, and even a CEO who returned from the US. My mentor at the time was from Zhejiang University and valued me greatly. Here, I finally found a sense of belonging. We learned and progressed together. I felt very frustrated, seeing people around me interning at big companies like Didi, feeling like I was falling behind, so I was determined to learn Scala diligently after work, reading the famous “Functional Programming in Scala” (the red book) and taking courses by the author of Scala on Coursera.

Throughout my junior year, I consistently engaged in one activity: 100 Days of Code. I coded every day to ensure my GitHub remained active, a habit I maintained for over a year. During this time, I also achieved financial independence and no longer needed to ask my family for money. I participated in a big data competition and won second prize. Although the competition itself was somewhat trivial, mainly testing operational proficiency, it gave me my first opportunity to fly to Beijing and boosted my confidence.

Senior Year: Harvest and New Beginnings

At the start of my senior year, I was still interning at a small company. Due to the COVID-19 pandemic, the company rescinded many job offers for new graduates. However, I performed well, and my boss asked if I wanted to stay after graduation. I declined because I felt the company’s credibility was lacking, and I wanted to explore opportunities at larger platforms, having already gained substantial internship experience.

I am someone who likes to “find a better opportunity while holding onto the current one,” so I prepared for the spring recruitment while interning.

Thanks to my solid experience with Scala and functional programming projects, the spring recruitment went exceptionally smoothly. I could clearly articulate my internship experiences during interviews, and with a strong foundation, I passed interviews with ease. I received numerous offers, including from ByteDance, two mid-sized companies, and several small companies. This experience taught me: When you can clearly tell your story and have a substantial internship or work experience, companies are less concerned about your academic background.

In the second half of my senior year, everyone went their separate ways. Some, like me, interned outside, while others spent four years playing games in the dormitory. Observing them reinforced my belief: The greatest value of university is the freedom to choose. You can choose to work hard or take it easy. It offers you great freedom, unlike high school, which is filled with rote memorization. Complaining about university just before graduation is essentially avoiding responsibility for your initial choices.

In the two months before reporting to ByteDance, I did nothing and completely relaxed at home. I was so comfortable that I woke up at 2 PM every day. With the pandemic being severe at the time, I even suspected I had contracted COVID-19, feeling chest tightness and fearing for my life. Later, I realized it was simply because I was lying under a thick blanket with the air conditioning on, pressing down on myself.

Conclusion

During my university years, unlike many guys, I didn’t have multiple girlfriends or lead a colorful life. But I never felt my university experience was meaningless.

The most important thing it taught me was the ability to self-learn.

I believe a university degree is valuable; it serves as a stepping stone, allowing you to reach higher thresholds. I recommend that even students in vocational colleges find a way to upgrade to a bachelor’s degree. With it, combined with your solid skills, you can navigate many jobs in society with ease.

However, a degree is just the starting point. What truly takes you further is the ability to self-learn and the willingness to keep learning. This learning must stem from your own passion.

Only with passion can you withstand the long passage of time.

I found my direction and fought for it, eventually achieving a relatively good result. For me, that’s enough. This is my university story, a tale of a lucky ordinary person growing wildly.