back to blogs

What I Wish I Knew Before Majoring in Computer Science

Apr 29, 2026

By Mahdi Alsalami, Computer Science Student at CSULB, Class of 2026

An honest guide from my 2022 to 2026 journey about internships, friends, mistakes, networking, and much more on how to actually grow as a computer science student.

As I get ready to graduate in May 2026, I wanted to take the time to reflect on my journey as a computer science major. This is not a perfect success story where I had everything figured out from day one. It is a real story about what I did right, what I did wrong, what I learned late, and what I wish someone told me when I first started.

If you are just starting computer science, thinking about majoring in it, or already in the middle of your degree and trying to figure things out, I hope this helps you. My goal is to share the lessons that helped me grow, so you can avoid some of the mistakes I made and move with more direction. I truly believe that if you take the time to read through my journey, you can learn from both my successes and my mistakes, and hopefully move through your own computer science path with more confidence and direction.

A Little About Me Before Computer Science

Before I became a computer science major, I was still trying to figure out who I wanted to become. I did not come into college with everything planned out perfectly. Like a lot of students, I had questions, doubts, and moments where I was not fully sure if I was choosing the right path.

A huge part of who I am comes from my family. My father is a hardworking man who did everything he could to leave his country and search for a better life. He worked hard to provide for my family, making around $35,000 a year, while still giving everything he had to support my siblings and I. My mother is a stay at home mom who has given her time, energy, and heart to our family every single day. She cooks, cleans, takes care of the house, and does so much that often goes unseen.

They are the reason I wanted to change my life for the better. I would not be where I am today without the sacrifices they made with their bodies, minds, and time. They gave up so much so my siblings and I could have better opportunities. Because of them, I knew I could not take my education lightly.

I was never the smartest kid in the room or some genius who had everything figured out. I did well in high school and never received anything lower than a B, but college was a completely different level. The competition was harder, the classes were more serious, and I quickly realized that being a good student in high school did not automatically mean college would be easy.

Even then, one thing I always knew about myself was that I was a hard worker. My father always made me believe that if I truly put my mind to something, I could become anything. That mindset stayed with me, even during the moments where I felt unsure about my future.

My interest in computers started when I was younger. My dad and I loved playing video games and building PCs for fun. At the time, I did not fully realize it, but those moments slowly built my love for technology. By my senior year of high school, I started thinking more seriously about what I wanted to do with my life. I knew I loved computers, and I knew I wanted to do something with software.

Around that time, I also came across Frank Niu, a computer science and tech content creator who gave a lot of honest insight into the field. His content helped me understand what computer science could lead to and made the major feel more real to me. Like many students, I came into college undeclared, but halfway through my first semester, I decided to take a chance and choose computer science.

Computer science became more than just a major for me. It became a way to challenge myself, build something meaningful, and prove that I could grow into the type of person I wanted to become. Looking back, my journey was not perfect, but every mistake and opportunity helped shape me.

That is why I wanted to write this blog. Not because I have all the answers, but because I know what it feels like to start with uncertainty and slowly figure things out.

My family, the reason I kept going through it all.

Table of Contents

Topic 1: The Reality of Computer Science

Computer science is one of the most exciting majors, but it is also one of the most competitive. I will talk about what I thought computer science would be like, what I quickly realized, and why just going to class is not enough if you want to stand out.

Topic 2: Choosing the Right Friends

The people around you matter more than you think. I will talk about how friendships affected my discipline, motivation, and confidence, and how friends like Noah, Cole, and Albert became a major part of my journey.

Topic 3: Internships Matter Earlier Than You Think

A lot of students wait too long before thinking about internships. I will talk about why experience matters early, what I learned from applying, and why your first tech related opportunity does not have to be perfect.

Topic 4: Networking Changed My College Experience

Networking is not just sending random LinkedIn messages. I will talk about mentors, LinkedIn, content creation, and how putting myself out there helped me meet people and find opportunities.

Topic 5: Your Resume Tells Your Story

Your resume is not just a list of jobs and projects. I will talk about how I learned to explain my experience better, get feedback, and make small changes that helped me get interviews.

Topic 6: Projects Are Where You Actually Learn

Classes teach the foundation, but projects help you understand how things work in the real world. I will talk about building outside of class, hackathons, teamwork, and why projects are one of the best ways to grow.

Topic 7: Practicing Interviews Is Super Important

Technical and behavioral interviews are skills you have to practice. I will talk about LeetCode, NeetCode, mock interviews, understanding your resume, and learning how to speak with confidence.

Topic 8: Dealing With Rejection and Feeling Behind

Rejection is a normal part of computer science, especially when it comes to internships and jobs. I will talk about rejection emails, comparing myself to others, and how I learned to keep going even when I felt behind.

Topic 9: What I Would Tell My 2022 Self

To end the blog, I will reflect on what I would tell myself if I could go back to the beginning of my computer science journey. This section brings everything together for anyone starting or trying to find their way.Topic 1: The Reality of Computer Science

Topic 1: The Reality of Computer Science

When I first started computer science, I saw it as one of the most valuable majors you could choose. Everyone made it seem like if you studied computer science, you would automatically have a great job waiting for you after graduation. I believed that for a while. And to be honest, I still believe computer science is a great field, but only to an extent. What I did not understand at first was how competitive, difficult, and demanding it actually is.

Computer science gave me some of the hardest classes I have ever taken in my entire school career. But the classes were only part of the reality check. The bigger shock was looking around and seeing how advanced some students already were. I met people in my classes who had been coding since they were ten years old, while I was still trying to fully understand what loops were. That was one of the first times I truly felt imposter syndrome.

I would sit in labs and watch some students finish assignments in twenty minutes while the same work would take me hours. It made me question if I was behind, if I chose the wrong major, or if I was even good enough to be there. Looking back, I now realize that I was not the only student who felt that way. A lot of computer science students feel behind at some point. The problem is that nobody really talks about it.

The class that gave me the biggest reality check was CECS 225: Digital Logic and Assembly Programming. If I had to describe that class, I would say it required an insane amount of studying, focus, and discipline. I could not miss class. I could not fall behind. For the final, I remember sleeping around four hours a night because I was trying to study as much as possible. That class showed me that computer science was not something I could treat casually. It forced me to understand that this major was going to demand real effort from me.

If you think you can go through computer science with the least amount of effort, I honestly think you should prepare yourself now. Unless you are one of those students who has been coding since childhood, you will probably have moments where you feel lost, confused, or behind. That does not mean you are not capable. It just means you have to be willing to work harder, ask questions, practice more, and stay consistent even when it feels difficult.

After my first semester of college, I thought that simply earning a computer science degree would be enough to get a job. I thought if I passed my classes, finished my labs, and completed my assignments, I would be fine. But as I continued through college, I started realizing that computer science is much bigger than just classes.

Then, around November 2022, ChatGPT was released, and the conversation around AI started changing everything. Suddenly, people were talking about how AI could write code, help with assignments, and maybe even change software engineering jobs. That made me think even more seriously about my future. I realized that if I wanted to stand out, I could not only depend on my degree. I had to build skills outside of class too.

The reality of computer science is that grades matter, but they are not everything. Passing your classes is important. Learning the fundamentals is important. But career wise, you also need to think about internships, projects, connections, hackathons, resumes, interviews, communication, and learning on your own. A degree can open doors, but it is not always enough by itself.

Over the past few years, I started joking that computer science students should get a second degree in “career development.” That is how much time and effort goes into everything outside of class. Applying to internships, fixing your resume, practicing technical interviews, building projects, networking with people, going to events, and trying to figure out your career path can feel like a whole separate major.

That is the reality I wish I understood earlier. Computer science is an amazing major, but it is not easy, and it is not automatic. You are going up against some of the hardest competition out there. Some people will have more experience than you. Some people will learn faster than you. Some people will get opportunities before you. But that does not mean you cannot succeed.

It just means you have to understand what you are signing up for. You are not just signing up for classes. You are signing up for a field that rewards consistency, curiosity, patience, and effort. If you are willing to keep learning, keep building, keep applying, and keep improving, then computer science can change your life. But you have to respect how hard it really is.

Freshman year me studying (regretting my whole existence)

Topic 2: Choosing the Right Friends

When I first got to college, I did not really have friends. I did not have people I could text after class, study with, ask for help, or hang out with just to make college feel less lonely. Looking back, that was probably one of the loneliest times of my life.

At first, I told myself I did not care. My mindset was simple, go to class, finish my work, and go straight home. I did not care about clubs, events, networking, or building connections at school. I thought all I needed was my degree. I did not realize how much friendships and the people around you could affect your college experience.

During my second year, I started noticing something. A lot of my classmates had people they could study with, build projects with, go to events with, and talk to about their goals. They had people around them who were trying to succeed too. That is when I started realizing that computer science is already hard enough, and trying to go through it completely alone makes it even harder.

One day, I was walking out of class and saw a guy named Albert, who had been in one of my classes before. I remember thinking, “Forget it, let me just go up to him and start a conversation.” I was not expecting anything crazy from it. I just wanted to step out of my comfort zone and maybe make a friend.

That small decision ended up changing a lot for me.

Albert and I clicked instantly. Later that day, he messaged me and said that he and his friend Noah were studying at the library and that I should pull up. At the time, I did not know Noah, but I decided to go anyway. I knew that if I wanted things to change, I had to stop waiting for friendships to magically happen and actually put myself out there.

When I got to the library, I met Noah. He was cool, but a little shy at first. Albert ended up leaving early, so it was just me and Noah talking. We got lunch that same day and quickly realized we had a lot in common. We both liked the gym, computer science, UFC, and a lot of the same things outside of school. From that day on, Noah became one of the closest friends I have ever had.

Through Noah, I later met Cole, who was also in one of our classes. He clicked with us too, and slowly, this small group became one of the best parts of my college journey.

Taking the risk to talk to Albert did not just help me make one friend. It led me to Noah, Cole, and other people which eventually gave me a friend group that made college feel completely different. We all had the same goal of becoming software engineers after our computer science degrees, and over the past few years, we have pushed each other to stay focused, keep improving, and hold each other accountable.

We studied together, worked on projects, attended computer science events, traveled to San Francisco for hackathons, and made industry connections together. Even outside of college we play pickleball, go get grub together, and travel! Having friends who shared the same goals made everything feel more possible. It was not just about having people to hang out with. It was about having people around me who understood the struggle, the pressure, the ambition, and the dream.

That is why I believe choosing the right friends can change your life. The people around you can either distract you from your goals or help push you closer to them. When you find friends who are serious about growing, learning, and building a better future, they can elevate you in ways you do not even expect.

My advice is simple. Talk to the person next to you in class. Go to the study session. Join the club. Show up to the event. Take the small risk, because one conversation can turn into a friendship that changes your entire college experience.

I am grateful for the circle I have now. I hope every student finds their Noah, Cole, and Albert. Friends who make the journey less lonely, hold you accountable, and remind you that you do not have to figure everything out by yourself.

With the boys!

Topic 3: Internships Matter Earlier Than You Think

One thing I did not realize early enough was how important industry experience is. I started taking it seriously toward the end of my sophomore year, but looking back, I wish I started even earlier.

A lot of students think internships are something you worry about during your last year of college. In my opinion, that is one of the biggest mistakes you can make. By the time senior year comes around, you do not want to be starting from zero. You want to already have projects, experience, a resume, connections, and some understanding of how the hiring process works.

When my friends and I realized how competitive the market was, we knew we needed to get some type of experience. It did not have to be perfect. It did not have to be at a huge tech company. We just wanted something related to computer science that could help us start building our path. That is one of the reasons I became a Coding Coach. It gave me experience teaching programming, explaining technical ideas, helping students debug code, and becoming more confident with the basics.

That is something I recommend to anyone who has no experience yet. Take anything that is related to computer science or technology, especially in this market. It could be tutoring, IT support, research, a small startup, a campus job, freelance work, open source, a coding instructor role, or even helping a local business with a website. Your first experience does not have to be your dream internship. It just has to help you get started.

I also realized that applying to 10 or 20 companies a week was not enough for me. At first, I thought that sounded like a lot, but in this market, it really was not. I changed my game plan and started using GitHub repositories that posted tech internships and new grad roles daily. That helped me find more openings faster, and I started applying to way more positions, sometimes 40 or more in a day.

It sounds crazy, but that is how competitive it can get. You have to treat internship applications seriously. You cannot just apply to a few places and hope everything works out. You need a system. You need to track where you applied, update your resume, improve your LinkedIn, practice interviews, and keep going even when you keep getting rejected.

Another thing people do not always like to admit is that luck plays a big role. Sometimes you can have a strong resume and still get rejected. Sometimes someone else gets seen because they applied earlier, knew someone, had a referral, or just happened to be in the right place at the right time. Cold applying can work, but it is hard. That is why networking matters so much.

Creating a LinkedIn and actually connecting with people can make a real difference. I am not talking about randomly begging people for referrals. I mean building real relationships. Message people. Ask thoughtful questions. Learn about their career path. Stay in touch. You never know who might give you advice, review your resume, refer you, or open a door for you later.

I also hate to say it, but posting your projects and progress online actually helps. A lot of students think it is cringe to post on LinkedIn, and I understand that. Nobody wants to look like an annoying tech influencer. But the truth is, posting shows recruiters and engineers that you are active, building, learning, and serious about becoming better. If your profile has nothing on it, people have less to learn about you. But if you share projects, lessons, hackathons, certifications, and progress, you give people a reason to notice you.

One thing I would be careful with is unpaid internships. I do not think anyone should be taken advantage of, and working for free is not ideal. But I also understand that some students feel like they need experience to get experience. If you ever consider an unpaid role, make sure it is actually valuable, has real mentorship, gives you real work to talk about, and does not interfere with your school, health, or paid responsibilities. The goal is not to work for free forever. The goal is to use early experience as a stepping stone toward better opportunities.

The biggest lesson is to start early. Do not wait until senior year to care about internships. Start applying early, build projects early, make your LinkedIn early, go to events early, and talk to people early. The earlier you start, the more chances you give yourself before graduation.

Some tools and resources that helped me or that I recommend looking into are Simplify, GitHub internship/job repositories, LinkedIn, and CodePath. Simplify can help you apply faster, GitHub job repos can help you find new postings, LinkedIn can help you build connections, and CodePath offers free programs and certificates that can help you grow your skills.

Getting an internship is not easy, but starting early puts you in a much better position. Even if your first experience is small, it can lead to something bigger. The hardest part is getting started, but once you do, every project, application, connection, and opportunity can help move you closer to where you want to be.

Topic 4: Networking Changed My College Experience

One thing I did not understand until halfway through college was how powerful networking really is. I used to think getting a job was only about applying online, having a good resume, and hoping a company noticed me. But as I went deeper into computer science, I realized that your network can help you understand the industry, learn from people ahead of you, and sometimes even open doors that cold applications cannot.

I honestly regret not taking networking seriously earlier. There were so many opportunities around me that I ignored at first because I did not understand their value. I did not realize that talking to people, asking questions, attending events, and building relationships could make such a big difference in my career.

Even though I started late, I was still lucky enough to meet mentors and engineers who helped me a lot. One of the biggest opportunities I had was joining MinT, Mentors in Tech, where I was paired with two mentors in the industry. One was from Microsoft, and the other was from Roblox. Throughout my junior year, they helped me understand the tech industry, improve my career strategy, and learn how to approach the internship and job search in a very competitive market.

Having mentors changed the way I looked at computer science. They gave me advice that I could not always get from class. They helped me understand what companies look for, how to talk about my experience, how to improve my resume, and how to think about my long term career. Sometimes one conversation with someone in the industry can save you months of confusion.

LinkedIn also became a huge part of my networking journey. I started cold messaging engineers, recruiters, and people working at companies I was interested in. Not every message got a response, but some did. Those conversations gave me advice, resume feedback, interview tips, and even referrals to companies. That taught me that you should never be afraid to reach out respectfully. The worst thing someone can do is not respond.

One platform I recommend to students is BobaTalks. It connects students with people in the industry who can help with resume reviews, career advice, mock interviews, and general guidance. The best part is that it is free. If you are a student who does not know where to start, platforms like that can help you talk to people who have already been through the process.

Another form of networking that helped me a lot was creating content. I started making computer science content on TikTok and YouTube, and I also streamed on Twitch. At first, I was just doing something I enjoyed, but over time, it helped me meet students, engineers, and people in tech from all around the world. Through content, I connected with people working at places like Snapchat, Bloomberg, Uber, Meta, and more. If you want to see the content and community I built, you can find everything here: techwithmahdi socials and community.

That experience taught me that networking does not always have to look formal. It does not always have to be a suit, a career fair, or a LinkedIn message. Sometimes networking can come from posting your journey, sharing what you are learning, building in public, or creating content around what you care about.

By putting myself out there, I was able to build a real community. My friend Noah and I even grew a Discord community with over 175 members where people talk about technology, computer science, projects, careers, and school. That community became another way to meet people, help others, and stay connected with students going through similar things.

The reason I bring up social media is because it became one of the most natural ways for me to network. People were able to see the genuine version of me through my content. They could see what I cared about, what I was learning, and how serious I was about growing. That made it easier to build real connections instead of just sending random messages to people who knew nothing about me.

If you are reading this, my advice is to start networking as early as possible. Make a LinkedIn. Reach out to engineers. Join student organizations. Attend career fairs. Go to hackathons. Use platforms like BobaTalks. Post your projects. Share your journey. Build in public. You never know who is watching, who is willing to help, or what opportunity can come from one conversation.

Networking is not about using people. It is about learning from people, building real relationships, and surrounding yourself with others who can help you grow. Looking back, some of the best advice, referrals, friendships, and opportunities I received came from simply putting myself out there.

My Setup :)

Topic 5: Your Resume Tells Your Story

Your resume is not just a list of jobs, projects, and skills. It is the first version of your story that a recruiter or engineer sees. Before they meet you, before they hear you talk, and before they know how hard you work, they are judging you based on one page.

One thing I learned early is that you should always be updating your resume and getting feedback on it. Do not just make one version and keep using it forever. Ask your friends, classmates, professors, career center, mentors, and people in the industry to look at it. Let people grill your resume, because honest feedback is what makes it better.

If you are applying to a lot of internships and not getting interviews, there is a good chance your resume needs work. I had to realize that too. Sometimes it is not that you are not qualified. Sometimes your experience is just not being explained clearly enough.

I personally recommend using Overleaf to build your resume. It gave me a clean foundation and helped my resume look more professional. I used templates similar to Jake’s Resume and Harshibar’s Resume, which are simple, one page, and easy to read. Having a clean format made a big difference for me and helped me get interviews with companies like Fox, PrizePicks, and more.

My biggest advice is to keep your resume clean, organized, and easy to scan. Do not clump everything together. Make sure your bullet points explain what you did, what tools you used, and what impact you made. Your resume can be the reason you get passed over, but it can also be the reason someone decides to give you a chance.

Topic 6: Projects Are Where You Actually Learn

Classes teach you the foundation, but projects are where you actually learn how to build. I realized early in college that school gives you the basics, but it does not always teach you the modern tools and frameworks that companies are using right now.

Some of my classes taught older languages and concepts, which are still useful for learning how programming works. But let’s be honest, not every company is out here using Haskell every day, unless you are some cracked LeetCode demon who dreams in recursion.

That does not mean school is useless. I will keep saying this: school teaches you the foundation. It teaches you logic, problem solving, data structures, algorithms, computer architecture, and how to think like a programmer. But if you want to stand out, you need to take that foundation and build real projects with it.

Projects are how you prove your skills. They show that you can take an idea and turn it into something real. They help you learn tools like Git, APIs, databases, frontend frameworks, backend systems, cloud services, and even how to use AI in a useful way. They also help you understand what modern software development actually looks like outside of class.

Building outside of school helped me learn things I would not have learned from assignments alone. I got exposed to popular frameworks, newer technologies, and the type of development that companies actually care about. Whether it is Python, JavaScript, TypeScript, Go, React, Node.js, databases, or anything else, projects give you a way to show that you can actually use the tools, not just talk about them.

One thing I think every computer science major should try at least once is a hackathon. I have been to three hackathons, and I was also part of the BeachHacks 2025 team where I helped run a hackathon with ACM. Hackathons taught me so much in such a short amount of time. In just a few days, you can learn things that might take months to experience in class.

At hackathons, you learn how to work with a team, build fast, make decisions under pressure, use Git properly, deal with bugs, connect APIs, present your project, and finish something even when it is not perfect. You also learn about communication and collaboration, which are skills that classes do not always teach directly.

And of course, you learn about merge conflicts. Oh, merge conflicts. My friends Noah and Cole can definitely tell you about the time I committed code without letting them know, and we had to deal with the chaos after. Funny moments like that are honestly part of the learning process. You make mistakes, fix them, and become better because of it.

That is why projects matter so much. They give you real experience. They give you stories to talk about in interviews. They make your resume stronger. They help you find what you actually enjoy building. Most importantly, they prove to yourself that you are capable of creating something from scratch.

If you are a computer science student, do not wait until you feel “ready” to build projects. Start small. Build a simple website, a basic app, a script that solves a problem, a game, a dashboard, or anything that interests you. Your first projects do not have to be perfect. They just have to teach you something.

Noah and I on demo day (we had 2 hours of sleep haha)
Up in SalesForce Tower in SF after attending a hackathon!

Topic 7: Practicing Interviews Is Super Important

One part of computer science that I used to dread was interview practice, especially LeetCode. I have spent days and even weeks practicing problems, reviewing patterns, and trying to get better at technical interviews. It is not always fun, but if you are looking for internships or software engineering roles, it is something you have to take seriously.

After going through failed technical interviews, I realized that LeetCode is one of those stepping stones you cannot really ignore. You can have a strong resume, good projects, and solid experience, but if the company gives you a technical interview and you cannot explain your thinking or solve the problem, it can stop you from moving forward.

That does not mean you have to become some genius competitive programmer. But you do need to understand data structures, algorithms, and common problem solving patterns. Arrays, strings, hash maps, two pointers, sliding window, trees, graphs, recursion, dynamic programming, and other patterns come up a lot. The more you practice, the less scary those interviews become.

If you are new to LeetCode, I strongly recommend starting with NeetCode. In my opinion, it is one of the best free resources for learning technical interview problems. It organizes problems by patterns, which makes it easier to understand what you are actually practicing instead of randomly solving questions with no direction. If you take NeetCode seriously and stay consistent with it, you will put yourself in a much better position for technical interviews.

But technical interviews are only one side of the process. Behavioral interviews matter too. A lot of students focus so much on coding that they forget they still need to know how to talk about themselves. You need to understand your resume, your projects, your past experiences, and the stories that show who you are as a teammate, problem solver, and learner.

Before interviews, I recommend going through your resume line by line and making sure you can explain everything on it. If you wrote down a project, be ready to explain what you built, what tools you used, what problems you ran into, what you learned, and what impact it had. If you wrote down an internship or job, be ready to talk about what you actually did and how you contributed.

I also want to shout out Noah and Cole because they helped me a lot with mock interviews. Having friends who can practice with you makes a big difference. They can ask you questions, listen to your answers, point out what sounds weak, and help you get more comfortable speaking under pressure.

If you do not have someone to practice with, talk out loud to yourself. It might feel weird at first, but it honestly helps. Practice answering questions like “Tell me about yourself,” “Tell me about a project you worked on,” “Tell me about a time you failed,” or “Why do you want this role?” The more you say your answers out loud, the more natural you sound when the real interview comes.

Interviewing is a skill. You do not just magically become good at it. You get better by practicing, failing, learning, and practicing again. Whether it is LeetCode or behavioral questions, the goal is to walk into interviews with more confidence and less panic.

So if you are serious about getting internships or jobs, start practicing early. Do not wait until the week before an interview to learn algorithms or figure out how to explain your resume. Give yourself time. Stay consistent. Use resources like NeetCode. Do mock interviews. Speak out loud. Learn from every rejection. It might not be easy, but it will make you much stronger.

Topic 8: Dealing With Rejection and Feeling Behind

If there is one thing every computer science student will experience, it is rejection. The words “After careful consideration…” or “Thank you for your application, but…” are honestly burned into my brain at this point.

There were times where it felt like every internship application I submitted turned into a rejection email. Every LinkedIn message I sent for a mentor, referral, or even just a simple connection felt like it was ignored or rejected. After a while, rejection started to feel normal. Not in a good way, but in a way where I almost expected it before I even applied.

What made it harder was seeing other people get opportunities I wanted. I would see people land dream internships, get into amazing schools, or post big career wins online, and I would immediately compare myself to them. It made me feel like I was behind, even when I was trying my best.

Later in college, I realized that comparison can really mess with your mind. It can make you feel like you are not doing enough, even when you are working hard. It can make you question your path, your ability, and whether computer science is even meant for you. I had moments where I seriously wondered if I was chasing the right career.

Looking back, I also realize that I hurt my own health by stressing so much over rejection and comparison. I cared so much about proving myself that I sometimes forgot to take care of myself. Now that I am getting ready to graduate and have an internship I am genuinely excited for, I can say that I am proud I kept going, but I also wish I had been kinder to myself during the process.

The truth is, rejection is part of the journey. It does not mean you are not smart. It does not mean you are not capable. It does not mean your dream is over. Sometimes it just means the timing was not right, the market was tough, someone else had a referral, or your application never even got seen by the right person.

I have received hundreds, maybe even over a thousand rejection emails from jobs across the country this past year. But one thing I learned is that it only takes one yes. One company. One recruiter. One interview. One person willing to take a chance on you.

So please do not give up on yourself or your dreams. Feeling behind does not mean you are behind forever. Getting rejected does not mean you failed. Comparing yourself to others will only make the journey heavier than it already is.

Keep applying. Keep learning. Keep building. Keep reaching out. Keep improving. The process can be painful, but if you stop completely, you never give yourself the chance to get that one yes that can change everything.

Me in Hawaii, doomscrolling LinkedIn

Topic 9: What I Would Tell My 2022 Self

If I could go back and talk to my 2022 self before starting computer science, the first thing I would say is to be prepared. Computer science is an amazing field, but it is also one of the most competitive industries in the world. You cannot go into it thinking that just getting the degree will be enough. You have to be ready to learn outside of class, build projects, apply early, network, and constantly improve.

But honestly, I would not change everything about my journey. Of course, it would have been amazing to know everything I know now about the job market, internships, projects, resumes, networking, and interviews right when I started college. But at the same time, what is growth if you never make mistakes? A lot of the lessons I learned came from struggling, failing, and figuring things out the hard way.

I am glad nothing was handed to me. I am glad I had to work for it. I would tell my 2022 self that I made some great decisions, especially with the friends I chose and the career path I committed to. The people I surrounded myself with helped me grow in ways I did not expect, and choosing computer science pushed me to become more disciplined, more confident, and more serious about my future.

With that being said, there are a few things I would tell myself to think about differently. One thing I would have considered more seriously is the college I chose. Even though tuition and location matter, I wish I understood how much school resources, career support, alumni networks, and company recruiting can affect your opportunities. Some schools have stronger computer science networks and more companies actively recruiting from them. That does not mean you cannot succeed from a school like CSULB, but it does mean you may have to work harder and create more opportunities for yourself.

For me, I felt like I had to figure out a lot on my own. I had to search for internships, build my network, find mentors, improve my resume, attend events, and learn modern tools outside of class. That was difficult, but it also made me more independent. It taught me that even if your environment does not give you everything you need, you can still go out and find a way.

I would also tell my 2022 self to start looking for internships as early as possible. Do not wait until you feel fully ready. Do not wait until junior or senior year. Start early, even if your resume is not perfect. Apply, get rejected, improve, and keep going. The earlier you start, the more time you have to learn how the process works.

Most importantly, I would tell myself to slow down and enjoy the journey more. College went by faster than I expected. I spent so much time stressing, grinding, applying, and worrying about my future that I did not always take the time to appreciate the moment I was in. I am proud of how hard I worked, but I also wish I enjoyed the process a little more.

So if you are reading this and you are just starting computer science, or you are already in the middle of your degree, please take some of these lessons seriously. Start early. Choose the right friends. Build projects. Practice interviews. Network with people. Take care of your resume. Learn outside of class. But also remember to enjoy your life while you are doing it.

Computer science is hard, but it can also change your life if you stay consistent and keep going. You do not have to have everything figured out right now. I definitely did not. You just have to keep moving forward.

Thank you for reading my journey until the end. I hope something in this blog helps you avoid a mistake I made, take a chance sooner, or believe in yourself a little more. As for me, it is time to keep chasing my dream of becoming a software engineer.

My little brother, my best friend, and one of the biggest reasons I want to become someone worth looking up to.

Original post on Medium.