Clubs & Organizations
Clubs & Organizations

Cybersecurity Club
A platform to discuss, learn, and practice concepts related to the wide-ranging field of computer security. Members can expand their skills by attending lectures from local experts and competing in ethical hacking competitions against other teams worldwide. We typically meet once a week in the evenings on campus. One of the main activities we engage in are CTF (Capture The Flag) challenges. If you are interested in joining the club, please join our Discord, linked below! We make weekly announcements about the content of our meetings on Discord, and it is the place to get in contact with us or ask any cybersecurity questions!
Contact Kennedy Zhang for more information: u1479839@utah.edu

Great Move Game Society
We play board games. We play card games. Have a game you love but no one to play with? Or a game that requires 8 people but you only have 3? We have people. We have games. We have resources. So join us in the Great Move Game Society (GMGS). No membership is required to participate, and you are not obligated to attend on a regular basis to be part of the club! All announcements and information about the club can be found on your discord. To stay up to date with us, join our discord server by clicking this link.
For more information, please contact us at u1189332@utah.edu
Technical Coding Club
The Technical Coding Club is a club to primarily prepare for ICPC, the International Collegiate Programming Contest. This is the largest contest for undergraduates in the world. In addition to this, the club aims to improve the general programming skills of members and prepare them for interviews which include programming problems. Companies often use problems similar to competitive programming problems. so the club offers an excellent experience.
We have weekly meetings every Tuesday from 5:15 to 6:15 pm at MEB 3147. Join our discord for more information!

Utah Student Robotics
Utah Student Robotics is a great place for students to get hands-on experience building a robot while competing in the NASA Lunabotics competition. We provide great opportunities for leadership, service, learning new engineering principles, and meeting other students.
USR is composed of 4 subteams: Mechanical, Electrical, and Software, which work on their respective systems of the robot, and Systems, which coordinates and facilitates the success of the other subteams. You can join any of the subteams that you would like, but most students only join one subteam.
We generally have general meetings with all subteams online on teams once a week. Sometimes these will be replaced with group events. We also have individual subteam meetings in-person once a week. These meeting times will be determined by poll at the beginning of each semester. There is no obligation to make every meeting, but meetings are very important for contributing to the team.
If you have any questions, please email us at utahstudentrobotics@gmail.com.

Gamecraft
The University of Utah’s Game Design and Development Club! We provide a space for aspiring Game Developers of all skill levels to connect and grow. Gamecraft hosts workshops, social events and industry speakers to provide creators with a robust community in which they can ensure long-term success in the Games Industry. We also host monthly Game Jams! Come join us, we’re open to all students regardless of major or level of experience! Meeting Times and Event Announcements are made on our discord, so head on over there if you’re interested in checking us out!
Meetings are hosted every week. Join the discord community to meet everyone and find out about our schedule: https://discord.gg/SZrPkPx
For any questions, email us at gamecraft@eae.utah.edu

Software Development Club
The Software Development Club seeks to provide a platform for University of Utah students interested in software development to explore, learn, collaborate, and contribute to the world of technology. Our goal is to promote skill development, foster a strong community of tech enthusiasts, and create opportunities for hands-on project experience. We aim to bridge the gap between technology, education, and community engagement.
For more information, please contact us at sdc812203@gmail.com

Women in Computing
Women in Computing is a student-led club where women, femme-identifying folks, and allies can come to build relationships, network, support each other, and further develop their skills and careers. Their goal is to create a community for women within Computer Science, Computer Engineering, and other related computing fields.

Utah Center for Broadening Participation in Computing
Recognizing the importance of belonging in computing, the University of Utah’s Kahlert School of Computing and College of Engineering have created UCBPC to encourage enrollment, retention, and preparation for students from all backgrounds.
Association of Computing Machinery Club (ACM)
Dive into the world of computing, innovation, and collaboration at our kickoff event. It’s the perfect opportunity to meet fellow tech enthusiasts, learn about our upcoming activities, and how you can contribute to cool computing projects.
In the kickoff event, the goals of the club will be presented. You will also have an opportunity to nominate yourself or your fellow students to be on the board of the club.
For any questions, email: elkindi.rezig@utah.edu or stefan.nagy@utah.edu
See our Canvas page for announcements!
Computer Science Discord Server: https://discord.gg/vMd772Sg
Join the Computer Science discord server so you can connect with other CS students and learn more about events relating to your degree!
Senior Capstone
The Capstone program represents the pinnacle of the undergraduate computer science, data science, and software development curriculums. It is an intense two-semester sequence in which students embark either on their own research culminating with a Bachelor’s Thesis, or form project teams culminating in delivering a significant software Capstone Project.
Bachelor's Thesis
In CS 4940 – Undergraduate Research and CS 4970 – Bachelor’s Thesis, a student conducts research under the supervision of a faculty member and ultimately produces a publication quality description of the work. Both courses require permission of the thesis mentor to register. For more information, interested students can self-enroll in the Canvas course for Undergraduate Research and Thesis.
*Honors research thesis students must enroll in CS4999 (not CS4970) in their second semester of research work. For more information, self-enroll in the Canvas course linked above or contact the Honors Faculty Advisor: Professor Tom Henderson (tch@cs.utah.edu).
Capstone Project
During the Senior Capstone Project, small teams of students develop significant software systems using sound, disciplined software engineering practices on a project idea that they create.
CS 4000 – This class is the first semester in the sequence. Seniors will work on team formation, project identification, project planning (including UI design, software architecture, testing methods, scheduling, etc.), and work on the prototype. This course will provide teams with time and guidance to effectively plan their projects, as well as emphasizing the written and oral communications necessary to succeed in industry.
CS 4500. – Projects formed in CS 4000 must be completed during this semester. Students should have four or less CS electives/required courses left when signing up for this course and should be graduating at the end of the semester.
*Within the Capstone Project option, there are Clinical Capstone projects, sponsored by local industry, that will recruit students to work on a company specific project. View the CLINICAL CAPSTONE page for more details.
** Honors Capstone Project Thesis – An Honors student may do a capstone project, but must also write a separate project thesis which describes some aspect of the capstone project. The Honors Thesis Approval form must be submitted during the CS4000 semester, and the student must enroll in CS4998 while enrolled in CS4500.
Clinical Capstone Project
Overview of the Kahlert School of Computing Clinical Capstone Project
The Clinical Capstone Program matches a team of motivated senior undergraduate computer science students with an industry sponsored project, defined and funded by an industry sponsor.
The team of students completes the final two semesters of their degrees working toward realizing the sponsor’s idea. Each team is advised by a School faculty member and works ~10 hours a week defining, researching, analyzing, and then producing a solution to meet the project’s objectives.
Ideal Clinical Capstone Project
The best projects have strong design elements that can help the students follow a rigorous process starting with creation of specifications, followed by creative concept generation and analysis, and culminating with a tested working prototype. Please propose your best idea, and we will work together to scope it correctly.
Timing
The two-semester Clinical Capstone Program is offered in two sequences:
- Fall and Spring semesters (August start)
- Spring and Fall semesters (January start)
At the end of each project, the teams participate in a Demo Day event, showcasing their work to faculty and industry judges, as well as fellow students.
Companies are encouraged to submit project proposals by August 1 for a Fall semester start, and December 1 for a Spring semester start. *We will meet with potential sponsors at any time, and sometimes late projects can be accepted.
How It Works
Faculty Advisor: Each team will have a faculty advisor guide them through the process with the industry sponsor.
Student Teams: Teams generally consist of 4 students.
Industry Sponsor Advisor: A representative from the industry sponsor is expected to serve as an advisor or co-advisor to help make sure the team stays on track to meet the project objectives. The industry sponsor advisor will typically spend an hour or less per week with the team – often meeting via web conference. At a minimum, a liaison from the company should meet periodically with the student team to provide feedback.
Design Reviews: Several design reviews occur during the two-semester project. The reviews provide critical feedback to the teams on all aspects of the project. Both the industry sponsor advisor and faculty advisor assist the team in understanding technical issues. Industry sponsors are encouraged to participate in the design reviews.
Presentations: Students showcase their work during several presentation opportunities throughout the year, and finally during a tradeshow-like format on Demo Day. They are also required to turn in a final report. Typically, they provide the sponsor with a working prototype and a documentation package (i.e. code, use instructions, etc.).
Important Dates
Step 1: Industry sponsor discusses project idea with clinical capstone faculty lead (by mid-July.)
Step 2: Industry sponsor submits project proposal (Early August)
Step 3: Project approved (by Aug. 15.)
Step 4: Contract signed and payment is processed (by Aug. 31.)
Step 5: Faculty advisor and student team is assigned (by Sept. 1.)
Step 6: Team works on project design, tests, and prototypes (throughout academic year.)
Step 7: Project completed, presented at Demo Day, and turned over to industry sponsor (at end of academic year.)
Project Deliverables
The project deliverables of a Clinical Capstone Project include a working prototype of the project and its code. Deliverables may be tailored in accordance with industry sponsor requirements.
Why Sponsor a Clinical Capstone Project?
Sponsoring a project allows you to contribute to educating the next generation of computer scientists by offering them a real-world industry experience.
What Should Sponsors Expect?
- Get to know and evaluate students with specific interest in your company and industry.
- Gain brand awareness with top-tier computer science students.
- Contribute to the local community by providing mentorship to educate the next generation of computer scientists who will shape Utah’s future.
- Give back to U Engineering.
Sponsor Requirements
Cost to Sponsor a Project
The cost to sponsor a Clinical Capstone Project is $15,000 for a team of 3 students, and $20,000 for a team of 4 students. These funds support a $2,000 scholarship for each team member, administrative costs to run the program, software and other resources that the project will require, and funding for Demo Day expenses.
Who Owns the Intellectual Property Generated by the Project?
The sponsoring organization will own any intellectual property generated by the project.
Will the Student Team Have to Sign a Non-Disclosure Agreement?
If the sponsoring company would like a non-disclosure agreement in place before the project begins, we can arrange that.
How Many Students Will Work on a Team?
Teams generally consist of 4 students. In the case where an additional student is added to the project, an additional $2,000 will be required for scholarship funds.
Do Students Choose Their Own Teams?
The Capstone faculty work to place top students who indicate interest in the project idea onto the clinical teams.
Still Have Questions?
Contact Sheri Carp in the Kahlert School of Computing at sheri@cs.utah.edu.
Check Out Some of Our Past Projects
Senior Capstone Demo Day 2023

Team: Worm World
Genetics researchers seek to determine how genes, the basic units of biological inheritance, influence the observable characteristics of organisms. The work done by geneticists includes cross-breeding (“crossing”) different strains of a species to obtain a target genetic profile. The current state-of-practice is to draw these cross trees and calculate offspring probabilities by hand, which can be error prone and time consuming. Our multi-platform desktop application allows researchers of the model organism C. Elegans to design, save, and share strain pedigrees that model the inheritance of relevant genes across generations according to statistical patterns. With this tool, researchers can streamline their experimental planning and data analysis, ultimately improving the efficiency and accuracy of their research.

Team: L3 Harris Clinic
All systems in a network are typically controlled via a centralized server. These servers will typically handle all connections and connect each caller to the person they intend to call. However, this approach has limitations in various high-stakes situations where you need to maintain communication without a single point of failure. To combat this, we have developed a distributed call management system that automatically meshes between users, without the need for a centralized server. This was achieved by creating, designing, and implementing a communication protocol for Linux and Windows platforms that uses multicast RTP to allow users to create and join calls on a network without requiring input from any centralized source.

Team: INL Clinic
Idaho National Laboratory (INL) has developed the All Hazards Analysis (AHA) framework in order to record information about the nation’s critical infrastructure and simulate the consequences of a disruption. The Spatial Enrichment Data Engine (SEDE) is a new and independent web service which will validate and assign accurate geospatial data to the infrastructure in INL’s AHA framework. We will provide non-spatial (e.g., address, zip code) and spatial information (latitude/longitude) by developing a forward and reverse geocoding application. We will also supply elevation data to INL to support flood simulations. Finally, we’ve developed a user interface to validate functionality and display geocoded results on a map.

Team: CaptionCall
Secret Keepers is a mobile journal application developed for both iOS and Android devices with the capabilities of capturing audio. Secret Keepers uses React Native for mobile app development, Google’s application programming interface (API) for emotion tracking, audio to text transcription, and data storage. There are two main purposes for Secret Keepers. The first purpose is to gather natural one-sided conversations from a multitude of different ages and ethnic groups. The information gathered will assist CaptionCall, a company who provides technology to people who are hard of hearing, with their speech-to-text predictive model. The second purpose is to be a fun and easy application that encourages people to speak to their devices.
Clinical Capstone Coordinator
Ellen Lewis
Public Relations Specialist
Kahlert School of Computing
University of Utah
ellen.marie.lewis@utah.edu
Faculty Lead for Clinical Capstone Program
Adjunct Professor David Bean
David.bean@cs.utah.edu
Information for New Graduates
Academic Advisors
Information
Don’t Forget to Eat –
There are a lot of food options on or near campus for when you are stuck on campus all day.
- The Union Center has a food court with the most options in one place: Panda Express, Jamba Juice, Burger Boi, Hive Pizza, etc.
- The Warnock Engineering Building (WEB) has a small cafe next to the Catmull Gallery called “Starley Commons Cafe” that has coffee, pastries, meals, cold drinks, etc.
- The William Brownning Building (WBB) has a small cafe called “Two Creek” that has coffee and pastries.
- The Campus Store has snacks, cold drinks, and a Starbucks.
If you are having difficulty affording groceries, you can stop by the Feed U to pick up nonperishable items.
Connect with our GradSAC –
What is it like to be a student in the Kahlert School of Computing? Do you have questions for our current students? The Graduate Student Advisory Committee maintains useful information. You may e-mail them at gradsac@cs.utah.edu or talk to our students on our Slack channel.
Setting up a Computer Account –
Send email to CS Support (email). Then create a username 3-8 letters (common are last name, first name, first initial and last name, etc)
Payroll Process –
Take a deep breath. The payroll process is a stressful time for all students, no matter what type of funding they are receiving. You are not alone.
If you need a Social Security number & have received a funding offer (fellowship, RA, or TA), contact the Grad Advisors and they can provide you a specific Social Security Letter that will enable you to get a Work Authorization form (from ISSS) and schedule an appointment with the Social Security Office.
Make sure to reach out to the Kahlert School of Computing accountants (accountants@cs.utah.edu) at the beginning of August so they can tell you exactly what documents they need in order for you get onto payroll.
It takes about 2 weeks to complete the payroll process entirely since all hires have to be approved by HR of the entire University of Utah.
Feeling Sick?
If you get sick or have a medical condition that needs attention, please go to the Madsen Health Center first. The co-pay(fee) is $10.00 and there is no additional charge for the visit. If it’s deemed necessary that you need to see an additional doctor, you will receive a referral, and other visits to medical professional involve additional charges.
For illnesses that occur when the center is closed, please go to Redwood Urgent Care. For EMERGENCIES, and for treatment when the Redwood Urgent Care center is closed, go to the nearest Emergency Room.
Frequently Used Links
Tuition Benefit Program & Health Insurance
- Tuition Benefit Program (TBP) Guidelines
- Subsidized Health Insurance through TBP
- Student Health Center Insurance
- Additional Health Insurance Information
- Kahlert School of Computing Tuition Benefit Form (link tbd)
Registration & Enrollment
- Course Catalog
- Course Schedule
- Academic Calendar
- Grading Policies
- Registrar’s Office Student Handbook
Departmental
General Campus Links
Digital Resource Guide for New Students
Price College of Engineering Counseling
ID Card Works as bus, TRAX, and Front Runner train pass. Take ID card to Marriott Library and have activated as library card.
Research Areas
Graduate Application for the Computer Science Degree: Specification of Research Areas of Interest
Graduate applicants to the Computer Science program will be asked to specify up to three areas of research interest in the online application form, from the list below. The primary topics of research currently being carried out in these areas by faculty members in the School of Computing are listed in the table below. Information about the areas of research of the faculty members may be found on the departmental faculty page and the departmental research page.
Research Areas | Primary Research Topics |
---|---|
AI & Machine Learning | Cognitive Systems; Computer Vision; Ethics in AI; ML & Data Analysis; ML Theory & Modeling; Natural Language Processing; Scientific Machine Learning |
Algorithms & Theory | Approximation Algorithms; External Memory Algorithms; Graph Algorithms; Parameterized Algorithms and Complexity; Resource-Efficient Data Structures; Theoretical Cryptography |
Computational Science | Computational Biology; Computational Inverse Problems; High-Performance Scientific Computing; PDE Solvers |
Computer Architecture | Accelerators; Architecture-Codesign; Coherence Protocols; Hardware Security; Memory Systems; Microarchitecture Synthesis; VLSI |
Computational Geometry & Topology | Applied and Computational Topology; Computational Geometry; Geometric Data Analysis; High-dimensional Geometry; Topological Data Analysis |
Computer Graphics | Real-Time Rendering; Computer Animation; Physics-Based Rendering; Physics-Based Simulation; Geometric Modeling; GPU Algorithms; Ray Tracing Hardware |
CS Education | Ethics in CS Courses; Code Structure |
Computer Networks | Internet of Things; Mobile & Wireless Networks; Networks & Systems; Network Security & Reliability |
Computer Vision | Vision and AI; Visual Perception |
Data Management | Algorithms for Data Analytics; Data Discovery; Data Quality; Data Usability; Ethical/Responsible Data Management; Large-Scale Data Analysis |
Formal Verification | Protocol Verification; Verification of Concurrent Programs; Verification Tools |
High-Performance Computing | Accelerators; Cloud Computing; Compiler Optimization; Distributed Systems; High-Performance Scientific Computing; Parallel Computing; Scalable Systems |
Human-Computer Interaction | Computer Games; Personal Data; Social Computing; Ubiquitous Computing |
Imaging | Medical & Biological Image Analysis; Deep Learning for Image Analysis; Statistical Machine Learning for Image and Shape Analysis; Scalable Methods and Architectures for Image Analysis; Shape Modeling & Analysis; Computational Anatomy and Geometric Statistics |
Natural Language Processing | Information Extraction; Interpretability; Interactivity & Analysis of Models; Learning for NLP; Multimodality; Natural Language Understanding (NLU); Semantics; Sentiment Analysis |
Operating Systems | Distributed Operating Systems; Distributed Key-Value Stores; Fast Datacenter Stacks; Secure OS |
Programming Languages | Compiler Optimization; Design & Implementation of Programming Languages; Software Testing; Trustworthy Systems Software |
Robotics | Autonomous Systems and Learning; Human-Robot Interaction; Medical Robotics; Motion Planning |
Security & Privacy | Cryptography; Mobile Security; Human Aspects of Security & Privacy; Software & System Security |
Visualization | Data Visualization; Scientific Visualization; Topological Data Analysis |
BS/MS Program
The School of Computing’s BS/MS program makes it possible for students to get both a bachelors and a masters degree in five years.
BS/MS Program Details
Director: Jason Wiese – jason.wiese@utah.edu
Administration: Vicki Rigby (BS/MS advisor) – vicki@cs.utah.edu
The requirements for the BS/MS degree are just the BS requirements plus the MS requirements. Starting to take graduate-level courses during the senior year is what makes it possible for students to complete the masters degree in just one additional year.
The MS degree can be in any of our programs and tracks.
Each of the degrees has three options: course-only, project, and thesis. See the graduate handbook to get details on the specific requirements. If you plan to do the MS thesis option, it is recommended (but not required) that you do a BS thesis, which you then expand to an MS thesis as a graduate student.
Admission to the BS/MS program
Requirements for the BS/MS program:
- Junior status in Computer Science at the University of Utah
- Minimum 3.0 GPA (successful candidates typically have a higher average in CS courses)
- Residential or domestic status — unfortunately, international students on visas are not eligible for BS/MS programs
The Application
Students accepted into the graduate program should attend the Kahlert School of Computing new grad orientation along with the rest of the new graduate students in late August. You will be sent information about this.
We make admission decisions for the BS/MS program as follows. A small committee of Kahlert School of Computing professors looks at the record of each student applying to the program, paying particular attention to performance in upper-level undergraduate CS courses. We admit students who we believe will do well in graduate-level CS courses.
Transfer students (students who already have a degree, or part of a degree, from another university) are not admitted directly into the BS/MS program. You should first gain admission to the U (see the admissions web site) and to the Computer Science program as an undergraduate. Subsequently, admission to the BS/MS program happens according to the instructions on this page.
When you’re ready, proceed to the BS/MS application.
Options for BS/MS Students
Course-based MS: Completing required courses for each track and any additional electives to equal 30 credit hours.
Thesis-based MS: We recommend that your Master’s thesis be an extended version of a BS thesis. This is because it is generally difficult to complete a Master’s thesis from scratch in one year. In this case, your thesis advisor should be the same person who supervised your BS thesis.
Project-based MS: The project is done through an independent study (often formally as an independent study course) with a professor in the Kahlert School of Computing.
Example BS/MS Program of Study
Below is an example program of study that we consider to be ideal for a course-based BS/MS degree. Following this schedule, you graduate in 5 years and pay 4 years of undergraduate tuition and 1 year of graduate tuition.
Apply your junior year:
- Your junior year is considered one or two semesters before starting CS 4000.
End of senior year:
- Have completed all requirements for BS degree
- Have completed up to 12 hours or 4 graduate level courses that will count towards the MS
- Change to graduate student status
Fifth year:
- Take 9 hours of MS classes in Fall
- Take 9 hours of MS classes in Spring
- Graduate with combined BS/MS degree in Spring
Alternate plan 1: Take 3 hours of courses that count towards the MS during each of Fall and Spring of your senior year, then take 12 hours of MS courses Fall and Spring of year 5.
Alternate plan 2: Take no courses that count towards the MS during years 1-4. Do not change to graduate student status at the end of senior year. During Fall of year 5, take 12 hours of MS courses while retaining undergraduate status. Get grad student status at the end of Fall of year 5. Take 9 hours of MS courses in Spring of year 5 and then 9 hours of MS courses in Fall of year 6.
Student Requirements
All BS/MS students will be required to meet with the BS/MS Advisor once a semester. You can schedule an appointment with Vicki here.
Grading Policy
Requested courses will remain on the undergraduate record but will be recorded as graduate credit to be used toward the graduate degree. Graduate credit may only be granted if the minimum grade (or better) required by the graduate program or track was earned in the specified courses (see graduate handbook for grade minimums), and if the course is not counted towards any undergraduate requirements. Only one request is eligible for consideration.
Frequently Asked Questions for Prospective BS/MS Students
A: First, it is a cheap (in terms of your time and your money) way to get a Master’s Degree from a well-regarded Computer Science department. Second, it offers you an opportunity to specialize in a particular area.
A: It is likely that you will be admitted if you are getting As and Bs in CS courses and if you have taken at least one or two CS courses at the 4000 level or higher and have a good recommendations from professors.
A: You pay undergraduate tuition until the University views you as a graduate student at which point you pay tuition at the graduate rate.
A: There are two cases when the BS/MS program is not advisable:
- If you must, for whatever reason, receive the BS degree on time at the end of your senior year. This is commonly the case
- If you are an international student.
A: An application for Utah residency (and lots of other relevant information) can be found at the U of Utah admissions site.
A: No, although we prefer that you do.
A: No. Both degrees are awarded when you complete the BS/MS program. Of course if you have met the BS degree requirements and need to bail out of the program for any reason, you receive the BS degree at that time.
A: No. The only double-dipping is that in the thesis option the BS thesis can be expanded into an MS thesis.
A: Yes, if students are hired as research assistants or teaching assistants.
Frequently Asked Questions for Students already in the BS/MS Program
A: You become a grad student when we manually move you into the graduate program. Normally this happens after the semester in which you complete your undergrad requirements, and about four grad courses. There are some things that you need to keep in mind.
- First, once you have graduate student status you will not be eligible for undergraduate financial aid.
- Remember you can only take 12 credit hours or 4 classes that count towards to MS degree while you have undergraduate status.
- You must have graduate student status for two semesters, while taking at least 9 credit hours per semester, in order to graduate. This equals the 30 credit hours that will be needed to receive your MS degree.
A: This depends whether you’re still in undergrad status, or you have already been moved to graduate status:
- As an undergraduate you must fill out the permission code located here – https://www.cs.utah.edu/undergraduate/current-students/permission-codes/. In the comments note that you are a BS/MS students.
- Once you have graduate student status, you can do this yourself.
A: No. The only exception to this rule occurs when the courses are substantially different due to a change in syllabus and instructor. In this unlikely case, approval from DGS (director of graduate studies) is required to get credit for both.
A: Vicki Rigby (BS/MS advisor) in the Kahlert School of Computing front office. As a BS/MS student you will required to meet with Vicki once a semester. If you have further questions please contact Vicki at vicki@cs.utah.edu
Undergraduate Research
Have you ever wondered what computing research is going on at the University of Utah? Are you interested in getting involved in computing outside of the classroom? Would you like to meet PhDs and other undergraduates working on research in computing to hear about the projects they work on and the people they work with? Would you like to get paid to work on new ideas?
The Kahlert School of Computing hosts one of the top ranked computer science research programs in the United States. Our research efforts help strengthen the classroom experience at the U, but, beyond that, undergraduates also directly contribute to this research by getting involved outside the classroom and working with faculty and graduate students. Getting involved in undergraduate research is a great way to apply what you are learning, to build your skills, and to work with great people, all without having to leave campus.
In algorithms and theory, machine learning, computer software and hardware systems, human-centered applications and more, the U has top-tier work going on in nearly all areas of computing.
However, most students don’t know where to start when they are interested in getting involved. Successful research projects also require substantial persistent effort and sustained mentoring by faculty or graduate students. Our purpose here is to help you understand some of the benefits and challenges of getting involved in research and to help you understand what opportunities are available to you.
Undergraduate Research FAQ
Computing Research Day! Each semester, the Kahlert School of Computing hosts an open house and poster session where you can find out what our talented PhD students are doing. They drive most of the interesting work. This spring we had more than 60 students and faculty come together to discuss ongoing research in the department at our inaugural Computing Research Day. Attend, talk to the students driving research, explore your interests, and make some connections. If you find something exceptionally interesting, ask the poster presenters about how they got involved in research and what avenues they would suggest for getting involved in work in their specific research area.
Please also join our list of students that are interested in opportunities, which we will also use as a mailing list for opportunities. But, the truth is that the best way to get involved is to make a connection with existing students doing research.

The Kahlert School of Computing Research Day is a good way to find opportunities.
Finding good opportunities is challenging, mainly because researchers (faculty and students included) are often busy doing research and teaching. That said, there are opportunities out there, and persistence is the key. Think of the areas of computing that most interest you and the classes that have had the most impact on you. Then, take a look at the list of faculty here in the department and consider which of them are working on the types of things that interest you most. Faculty are often receptive to scheduling a meeting with you to discuss your interests and opportunities. Sometimes faculty might be looking for students to perform specific tasks, other times they might invite you into research group meetings so you can get a sense of the culture and process, and other times they might suggest you take certain classes or seminars that will help you explore your interest in their area. Take a look at the course offerings for the department as well and scroll down to the bottom. Often there you can find faculty in areas that you are interested in teaching special “seminar” courses where students regularly meet to discuss new research ideas and papers. If you find something that interests you, ask the faculty organizing the seminar if attending the seminar would be a good fit for you and your interests.
Our website lists several general areas of research and which faculty focus on that area within the department. Most of these areas are represented at the Computing Research Day poster session, so, again, this is a good place to get a sense of what work in each of these areas looks like.
Every project and research group has different areas and expectations, and research doesn’t take anything special. Virtually anyone can do it. But, like anything else, getting results and benefits requires training and persistent hard work. This has two consequences that make getting started in research hard: first, faculty are busy with their own hard work on research efforts, and, second, students struggle to find time in their own schedules and the mentoring they need to succeed in research.
This is why we are excited about Computing Research Day. First, it gives you a chance to find things you might be passionate about that others are passionate about as well. Like anything else in life, that interest is crucial since it can drive you to explore and invest in a topic. Second, it connects you to the students who do the real work and the ones that would most likely be able to mentor you to success. Our PhD students are busy, but many of them find time to mentor undergraduate students.
Many of our students go on to graduate school here at the U and at top-ranked computer science programs, and research often ties into that both before and after students finish their undergraduate degree. If you are considering continuing your education beyond your current degree and have questions about what that path might look like, then let your undergraduate advisor know. Also, make sure to attend Computing Research Day to connect with faculty and PhD students there who can tell you more about their own journey. We had many questions ourselves not that long ago, and we’d be excited to tell you how it works, what it’s like, and what opportunities are possible in academia and research beyond your time here.
Yes, this varies. Many undergraduates are paid for the research they do within the department. There are several ways that you may be funded, but in all cases this funded work is always through a specific faculty member that is mentoring and sponsoring your work. Sometimes faculty hire students based on tasks they need performed, but most time times faculty may only hire a student for a paid position once they have had an opportunity to work with a student for some time or if they have formed a specific project or research question together.
If you are working with a faculty member, then discuss with them ways by which you can be compensated for your work. For example, students are often funded through Research Experiences for Undergraduates (REUs) through organizations like the National Science Foundation. Utah’s Office of Undergraduate Research also funds undergraduate research through its UROP program. In this program you define and submit a short proposal for the work you want to do together with the faculty member that is advising you on the work, and, if accepted, UROP pays you to complete the proposed work with the faculty member.
Finally, faculty will also sometimes host students for independent study credits. If you have work planned with a faculty member you can ask them whether this option makes sense for you and the project you are working on.
Undergraduate Academic Program Overview
The University of Utah Kahlert School of Computing nationally-ranked program offers its undergraduates a rigorous blend of theory and practice to prepare them for the jobs of today and the challenges of tomorrow. Our students have opportunities to work with cutting-edge researchers, along with excellent access to Silicon Slopes and top-tier national tech companies. Set on a beautiful campus, students enjoy recreation in the surrounding mountains as well as urban Salt Lake City.
Degree options
Students in the Kahlert School of Computing can pursue degrees in computer science, data science, software development, computer engineering:
- Computer Science encompasses the theory and discipline of solving computational problems. Computer scientists analyze and engineer the software, algorithms, computer systems, and theories that continue to advance the modern technological world. They work in a broad range of areas including artificial intelligence, security, graphics, robotics, operating systems, networking and communication.
- Data Science focuses on the practice and theory of extracting useful knowledge, results, and understanding from raw data. Data scientists typically work with consumers and producers of data in order to analyze, manage, and augment large data sets or work in industries that require automated forms of decision making and analysis.
- Software Development is the study of the principles, tools, and techniques for developing modern software. Software developers create the web, mobile, and desktop applications that we use every day. They typically work as full stack developers, writing and maintaining the secure front end and back end code that turns a specification into a real-world, functioning system.
- Computer Engineering emphasizes the physical and hardware aspects of computing. Computer engineers design computer circuits, processors, and the electronic systems and devices that computers control. Computer engineers also design and develop the software to analyze and control sophisticated devices and machines.
Full degree requirements for each program can be found in the student handbook. Additionally, the Kahlert School of Computing offers a special games track in Entertainment Arts and Engineering, as well as a five year combined BS/MS program, which allows students to complete both degrees in about five years, by taking both undergraduate- and graduate-level courses in their senior year.
Benefits
Students achieving an undergraduate degree from the Kahlert School of Computing are very successful in the job market, as 92% of students secure full-time jobs before they graduate. Many internship opportunities and job offers are a result of the Kahlert School of Computing’s annual career fair.
The University of Utah is an R1 research university. What this means for undergraduate students is that many classes are taught by faculty who are active in research and experts in their fields. Additionally, there are opportunities for undergraduates to engage in cutting-edge research while at the University of Utah.
How to apply
Interested students should apply for admission to the University of Utah.