
December 9, 2025 — Allan Sun graduated from UC San Diego’s Jacobs School of Engineering in 2023 with a degree in computer engineering. Today, he works as a software engineer at Apple, where he is a key member of the team building the underlying real-time system for Apple’s in-house 5G technology, a core component of the company’s next-generation wireless platforms. Sun’s journey from undergraduate researcher to industry engineer exemplifies the technical rigor and systems thinking that UC San Diego is known for.
In this Q&A, Sun reflects on what brought him to UC San Diego, the experiences that shaped his career, and why he continues to stay connected to the engineering community.
Q: What brought you to UC San Diego?
I considered three main factors: the technical rigor the Jacobs School of Engineering provided, the strong undergraduate research opportunities, and of course, San Diego’s beautiful location. I’ve always wanted to understand how computers work on a deep level. To achieve that, you need to know the hardware, the software, and the firmware that runs in between. This systems-level thinking is essential because without it, you can’t build truly performant software.
The UC San Diego program structure was excellent for this. The breadth requirements expose you to all aspects of system-level thinking like hardware classes, software classes, operating systems. That’s how these things get connected together. That structure really benefited me and directly applies to my work today at Apple.
Q: Tell us about your undergraduate research experience.
I joined Professor Vikash Gilja’s Translational Neural Engineering Lab (TNEL) my freshman year in early 2020. The research focused on brain-computer interface and using machine learning to decode neural signals with the long-term vision of helping people with disabilities, like recreating speech for those who can’t speak or controlling robotic prosthetics.

What made UC San Diego’s research opportunities special is that I wasn’t just a lab assistant doing repetitive lab work. Very early on, I was able to study the frontier of science and use my computer science knowledge to keep it growing. This level of responsibility is typically reserved for graduate researchers, making the opportunity unusually advanced for an undergraduate student. I designed real-time data pipelines using high-performance system programming, collected and processed neural signals, and used machine learning for analysis. The experience taught me how engineering systems, with timing performance and correctness, really mattered. And that was really rewarding.
I stayed in the lab until graduation in 2023, over three years total. Our work resulted in a peer-reviewed IEEE (Institute for Electrical and Electronics Engineers) publication, one of the most selective and widely recognized venues in engineering research., which was incredibly meaningful. It was the first time I understood how software, classroom theory, and research skills could have real-world impact. That experience sparked my interest in the high-performance, system-level engineering career I’m pursuing today.
Q: How do you stay connected and give back?
I stay connected because this community played such a big role in shaping the engineer I am today. I wouldn’t be as successful without the support around me. It wasn’t just my own hard work, it was also people actively sacrificing their time and effort to help me, and I can’t just take that help without being reciprocal. I want to help the younger generations.
That’s why I continue to stay connected after graduation. I continue to mentor students individually through organizations like HKN (Eta Kappa Nu), Tau Beta Pi or from previous connections. Students continue to reach out to me. We meet over coffee and discuss whatever they need like technical issues or design choices on a project, research interests, or career questions. Starting this year, I’ve been supporting engineering clubs as an invited guest speaker, giving technical talks, and serving as a mentor and judge at university hackathons. It’s a chance to connect with younger students and offer the same kind of support I received.
Q: How did mentorship shape your journey?
When I joined the lab, I was paired with a PhD student who became my mentor. What made him exceptional was his combination of academic research expertise and industry experience from working in Silicon Valley. He had the best of both worlds. We shared common interests in systems engineering, and I was eager to learn and picked up things quickly.
I would reach out to him about things beyond our research, too. Career paths, what classes to take, internship advice, resume critiques. His guidance was extraordinary. Learning from him shaped my career path so much. Good mentorship provided me with confidence, clarity, and a sense of belonging in engineering. After experiencing that, I developed a strong feeling in my heart that when I had more expertise in this field, I had to give back.
Q: What led you to become an instructional assistant?
I served as an instructional assistant (IA) for CSE 100, Advanced Data Structures, taught by Professor Niema Moshiri. When I took the class, I had an amazing time. The quality of teaching was exceptional, and I had such a great time participating in the discussion. He was a great teacher who made complicated ideas very understandable. The homework and programming assignments were engaging and directly tied to the theoretical knowledge, not just busy work.
I loved it so much I wanted to stay involved. During the quarter, friends would come to me with questions, and I realized I had a talent for explaining concepts. I thought ‘If I truly understand the material, I can really explain it well.’ When students responded positively to my explanations, it was an amazing feeling to know that I was helping others. So, I reached out and they invited me to be an IA. Throughout that first quarter, I was able to dive even deeper into the material. During that time, there were students with weaker knowledge which challenged me to explain fundamentals in new ways. The experience connected to my desire to give back, just as my mentor had helped me. In the end, I enjoyed it so much I served as an IA for the course across two quarters, supporting hundreds of students in mastering advanced data structures and algorithmic thinking.
Q: How did you navigate challenges as a student?
I use a classic strategy called divide and conquer. When you have a massive problem you don’t know how to solve, break it down into smaller problems recursively until you reach trivial cases that are easy to solve. This applies to real-life challenges too.
My freshman year, I wanted an internship, but the gap from no experience to getting one felt huge. I broke it down: How do I get an internship? You need experience. How do you get experience? Join a research lab. How? Send application emails. How? Write your resume. I made a to-do list with deadlines for each step. Breaking big problems into tangible small items you can stick to really helps.
The second strategy is reaching out for help. I learned early that asking for help isn’t a weakness, it’s a strength. People at UC San Diego are almost always willing to help. Professors, TAs, classmates, mentors. Those conversations provide clarity and confidence. Even when you don’t need explicit help, talking to someone more experienced gives perspective. When you feel confused or scared, that community support is invaluable.
Q: How have you benefited from your UC San Diego network?
My network consists of three parts. First are my old peers and friends. We studied together, prepared for interviews together, applied for jobs together. Now they’re at great places, like Meta, Google, or startups, and have become experts across different domains in AI, cloud computing, and chip manufacturing. When we talk, I learn what they’re doing in their specialties, and they learn about my work in embedded systems and real-time engineering. This network continues to expand my industry knowledge.
Second, I stay connected with my research lab and my mentor and Professor Gilja. When I need guidance on career growth or technical problems, I still reach out. My mentor provides insights my peers can’t, and those conversations continue to feel eye-opening even today.
Third, there’s a strong presence of UC San Diego engineers at Apple. Working with other UC San Diego alums feels more personally connected. There’s trust in their technical abilities and work ethics because we were trained in the same rigorous structure. In a company with tens of thousands of engineers, that personal connection makes collaboration easier and more effective.
Q: What advice would you give to current students?
First, allow yourself to be a nerd. Develop deep expertise in one topic you find fascinating. Systems, algorithms, hardware, AI, whatever interests you. Almost every meaningful technical breakthrough comes from people who pursue their curiosity deeply.

Second, enjoy the challenges. Hard classes and projects that feel intimidating are the moments that deepen your technical understanding. It’s natural to find challenges scary, but lean into them. That’s how you grow.
Third, learn to appreciate the theory. As a student, I heard peers complain that UC San Diego focused too much on theory compared to more hands-on programs elsewhere. But when I started working on high-performance systems at Apple, where things run at microsecond or nanosecond levels, I found that theoretical knowledge I thought I’d never use came back constantly. Without such formal training, one would struggle to solve complex problems or make innovative changes. UC San Diego is research-focused, so classes emphasize theory. Try to embrace it. When you work on something truly demanding, you’ll need that foundation.
Finally, don’t go through UC San Diego alone. Find your people, such as friends, mentors, and professors and build a community. The friends I studied with through long nights are still the people I turn to for technical discussions and career advice. That support makes the journey easier, more meaningful, and lasting.
Contact
Jesse De La Trinidad
Jacobs School of Engineering
(858) 534-6782
jdelatrinidad@ucsd.edu