The 3 Biggest Mistakes
that
Derail UCI Students’ Careers
Raymond Klefstad, Ph.D.
About Me
●HS in San Bernardino, CA
●BS, MS, PhD @ UCI
●Taught UCI CS, UCI EECS, UCR
CSE, CSSM, and industry
●Research
○ CS Systems
○ CS Education
●Directed UCI MCS program
●Husband, Father
●Avid Cyclist, Freediver, Archer
Ray Klefstad, Ph.D.
Courses Taught at UCI
●Intro Programming 31
●Data Structures ** 46
●Computer Organization 51
●Systems Programming 53
●C++ Programming ** 45c
●Programming Languages ** 141
●Compilers & Project 142AB
●Operating Systems & Project 143AB
●Advanced C++ Programming 103
●WebDev/Database Project 122B
●Adv. Prog. & Prob. Solving ** 253P
Ray Klefstad, Ph.D.
Emails from Former Students
Two different themes:
1. Thank you so much for the tough classes
you taught and for the advice you gave
me. I aced my job interview, and now I
realize the importance of mastering the
course material!
1. I completed the CS/Engr degree, but I still
can’t get a job. What can I do?
Ray Klefstad, Ph.D.
One Recent Email
Dear Dr Klefstad,
You probably don't remember me but my name is Peter Anteater, and I took your 122B project class.
I was a terrible student. I turned in pretty much every assignment late, and I couldn't even finish the front-end of
the movie assignment. I barely got a C in the class, but I loved every second of it. Even though I was struggling
the entire term, I felt like I was doing something substantial: creating the API endpoints, working on the thread pool,
linking and working everything together. It was really the one time in my student life that I felt like I was actually
doing something that was real.
It is because of this class that I am coming to you now. I still haven't gotten a job since I graduated. When I read a
job opening on LinkedIn or Indeed, I see the requirements for it and I tell myself that I am not qualified for it.
One of the main problems, is that in college, I didn't network much or apply for internships or clubs. So I don't have
much to show employers outside of school work and some small personal projects. But now that I am out of
college, I don't know what to do other than coding practice problems from Geeks for Geeks or HackerRanks.
When I look at advice for getting jobs, they say you should mention your previous experience, but I don't really
have any in the programming area. Plus since I spent so much time not doing anything, I am not even a graduate
anymore. I am just flat out unemployed.
So my question to you. What should I do, as an unemployed person, to gain experience and projects to present to
employers to show my worth?
Peter Anteater
Ray Klefstad, Ph.D.
So what went wrong
for Peter Anteater?
Ray Klefstad, Ph.D.
Mistake #1:
Not gaining work experience
as a student
● Look for an internship for next summer
● Don’t give up if you get rejected LINK
● Work on projects that build your portfolio and
resume, consider DIY open-source
● Look at example resumes (not ChatGPT)
● Best time to apply? August/September
Ray Klefstad, Ph.D.
Mistake #2:
Not mastering all the course material
in every course from the beginning
●Really learn instead of just going through courses!
Ray Klefstad, Ph.D.
Solution 2: Steps
●Be active: participate, ask questions, take
notes
●Start HW/projects the same day you learned
new material in lecture (within 24 hours)
●Don’t give up on understanding! Put in the
work!
○ Story: Student cheated his way through CS program...
●Some concepts won't click in your brain until
after the course. Keep working until you
master it!
○ Story: Student who failed first 3 classes...
Ray Klefstad, Ph.D.
Solution 2: Steps
●Choose a major? Consider your target career
●Choose courses that build toward your career
○Favor courses with projects
○Take courses known for “tons of work”
●Which specialization?
○Not critically important
○Your knowledge and skill is what matters
●Graduate school?
○Yes, MS is a good value
○but you need to Ray
prepare
now
Klefstad, Ph.D.
Solution 2: Steps
●Become FLUENT in writing clean code. Fluent
programming is a skill that only comes with practice.
○For technical interviews, you must be fluent with
algorithms, data structures, and programming.
○“There's simply no place to hide the lack of fluency in
a 1-on-1 live coding interview, which is why both top
employers and Launch School use this method of
assessing people.”
○Companies aren’t hiring people who need to look
things up on StackOverflow
○To get fluency, you must practice. Code at least
three to 6 programs each week.
Ray Klefstad, Ph.D.
Mistake #3:
Neglecting communication and
people skills
●Every job listing requires
“excellent oral and written communication skills”
●Make connections, build study groups
○Your friend group is important. Do they
challenge you to be better? Do they bring you
down?
○Your contacts can help pull you in to a job
■ not just what you know, …
Ray Klefstad, Ph.D.
Solution 3: Steps
●People skills:
○Getting along with others
■ i.e., “conflict resolution”
○Major companies have multi-national teams
○Humanities and Social Sci. can help
●Look for leadership opportunities, community
service, and connections
○Some of the best paying jobs require
leading/managing people
Ray Klefstad, Ph.D.
Summary: What To Do
●Start NOW to look for internships, apply for them, and
develop a project portfolio
Fortune 500 CS Internships
Microsoft Internship Program
Indeed CS Internships
Indeed College Student Internships Summer 2022
●Master your course material. Become skilled and fluent!
●Make connections; constantly work on communications
and people skills
Story: Focus and Mastery - Drew
Ray Klefstad, Ph.D.
Go find your internship!
Ray Klefstad, Ph.D.