Maroon banner with yellow beam of light highlighting "Ngan Nguyen"

CSpotlight: An International Perspective

Why did you choose to pursue a degree in computer science specifically at the University of Minnesota?

My education path is not very straightforward. At first I was planning to major in economics, but then after my first semester, I got to explore other potential academic fields. The University of Minnesota’s computer science curriculum is very rigorous based on the courses provided. I feel like a curriculum this rigorous can help us to gain a lot of understanding about computer science. I looked at different colleges and different schools around the region. The University of Minnesota has much better diversity than the others. I also looked at the research experiences of the professors. There was a wide spectrum of different research opportunities as well. Specifically, I had an interest in human-computer interaction, super computing, and high-performance computing. The University of Minnesota has a very strong foundation in these fields. So the curriculum, plus the research opportunities provided by University of Minnesota, helped me to decide to pursue a bachelor’s degree in computer science.

How did you become interested in computer science? What are your specific interests within the field?

During my freshman year, I was interested in human computer interaction, more specifically the graphic user interface (GUI). Because most of the projects I was working on related to implementing algorithms, I want to use GUI as a better way to visualize the impacts and functionalities of my backend work to other people. That was also one of the main themes of my research during my sophomore year, to enhance human computer interaction. From my junior year, my interests shifted into the field of distributed computing and computer networks.

Congratulations on earning Bhimani Family Scholarship! How will this scholarship impact your academic and extracurricular work?

As an international student with no background in computer science, I was really intimidated by pursuing a bachelor's degree in computer science. I feel like the effort that I need to put towards getting a degree is double or triple the efforts that the average student. This is because of my background and my starting point. I was very frustrated at first. I gave it my best in everything I was doing, but it was challenging. Earning this scholarship is a very strong confirmation and an important recognition that it doesn't matter where you start. If you try your best, you will get the things that you deserve. It’s also a message to other people to know that these opportunities are for everyone, regardless of your starting point.

Tell us more about your internship experience with LinkedIn.

At LinkedIn I was working with the back-end technology solution team. Basically there was an incident when a user on LinkedIn deleted a post with a million comments and reactions. This creates a negative cascading effect towards the nearline and offline flows of LinkedIn. So my job for the internship was to implement a handover mechanism in the nearline environment’s endpoint that can help prevent this incident from happening in the future. 

My strongest impression after this summer internship at LinkedIn is that it is a company that values work-life balance and their professional image. I've learned that the most important goal for the internship at LinkedIn is not just for the interns to gain professional work experience, but also to help them build strong connections with their coworkers, with their peers. I feel like they were extremely invested in the early talents. 

Are you involved in any student groups? What inspired you to get involved? What do you hope to contribute to the computer science community at the University?

I was in two student groups in my sophomore year. One of them was social coding, but I was not actively involved. More than that, I wanted to invest my attention towards academic assistance. I wanted to assist other students with what I learned from my experiences in computer science courses and in the industry.

I was a peer tutor at Smart Learning Commons in my sophomore year, and teaching assistant (TA) for multiple computer science courses for the last two years. In spring 2022, through the “Thank a Teacher” program, I was also recognized by the Center for Educational Innovation for my contribution to student learning at UMN. I want to send my gratitude to the students who I have had the chance to work with for having tried their best and valuing my mentorship. I hope that with the wonderful teaching assistants crew at the University, more and more students will be well prepared and motivated to continue to make strong progress and impacts in both their career and academic journeys.

Have you been involved with any research on campus?

For my sophomore and junior year, I was working as an undergraduate research assistant in the GroupLens Lab. I was working under the direction of Professor Lana Yarosh and my research was mainly related to implementing machine learning models. We were collaborating to build a recommendation system for the CaringBridge website, which serves more than half a million users. It was designed to connect cancer patients and caregivers. My main job for that research was implementing and benchmarking new learning models, and comparing their performance against the baseline models. I also implemented a website for offline evaluation.

During my junior and senior year, my interests have grown into the computer network field. I'm now a part of the research in 5G’s new radio protocol stack in gNodeB. Since 5G is in its early stages of deployment, there are still lots of potential improvements for implementation of network functions in 5G core, and data plane stack in Radio Access Network. This research is directed by Professor Zhi-Li Zhang and his Ph.D. students. 

What advice do you have for incoming computer science students?

One piece of advice I have for the incoming computer science students is if you are ever having an extremely difficult time understanding the materials or resolving bugs or problems, don't give up. That discomfort is the pivoting point that will help you gain the knowledge that will make you stand out down the road. Earn your own spotlight. 

The second piece of advice is during your free time, try to do side projects. Side projects are extremely important because the knowledge that you learn from class is just a foundation. In order to build from that foundation, you need to do side projects. Those are the steps that will help you to grow your understanding from those courses. 

Additionally, I recommend students take a course about internet programming. Front-end and back-end development is a high-demand field. If you can learn at least some technologies relating to these domains, that will increase your possibilities in landing an internship in your freshman or sophomore years.

What kind of side projects do you work on?

For my freshman year I was working on implementing some basic game applications such as space shuttle, battle boats, flappy birds, sudoku, and GUI enhanced Java programs such as Path Finding Algorithm visualization. In my sophomore year, I had more projects that involved usage of web development technologies - one of them is testing websites for offline evaluation of recommendation systems. One of them that I like is the website called Truth Evaluation. That website’s inspiration is directly coming from my two courses in discrete mathematics (2021), and advanced programming principle (4041).

What are your plans after graduation?

I'm on two tracks. I'm seeking a job in the industry and applying for a master degree. I want to learn more about the 5G cellular network. I think a master's degree will be a very worthy investment. I also have received a return offer from LinkedIn, so I'm thinking I can do a part time master’s while pursuing my work full time.