Search
Sean O.'s Photo

Patient PhD tutoring programming, computer science, and more
Sean O.

648 hours tutoring

Your first lesson is backed by our Good Fit Guarantee

Hourly Rate: $70

About Sean


Bio

I tutor most undergraduate computer science courses, from introductory programming to advanced algorithms, machine learning, operating systems, and theory of computation. Probably my most common subject is introductory algorithms (the second semester course at many universities), and I have become practiced at explaining what is often challenging material. I also sometimes work with masters' and high school students on a case-by-case basis.

I enjoy working with students of all abilities...

I tutor most undergraduate computer science courses, from introductory programming to advanced algorithms, machine learning, operating systems, and theory of computation. Probably my most common subject is introductory algorithms (the second semester course at many universities), and I have become practiced at explaining what is often challenging material. I also sometimes work with masters' and high school students on a case-by-case basis.

I enjoy working with students of all abilities who are willing to engage and motivated to learn. While I can help you finish your homework or prepare for a midterm, I also want to help you acquire a deeper understanding that will serve you in future courses and beyond school. Regular meetings build a rapport that leads to better learning outcomes. Timely tutoring in computer science can mean the difference between following new material and falling farther behind.

Generative AI is changing programming less than you may think. You can probably use ChatGPT to get a B on most of your assignments in a first-year course, because it has been trained on the whole internet, which contains many examples of other students' work on similar problems. You could have done the same five years ago by copying Stack Overflow or Chegg, then changing a few things to get past a plagiarism check.

So why pay me to help you rather than doing this? First, if all you learn in school is how to copy the output of an LLM, why would a company pay you to do work that can be done by a machine? Second, the purpose of introductory programming assignments is not to create new implementations of basic algorithms, but to teach you how computers work, from the high level of program design and correctness to the low level of performance. Third, LLMs can be subtly and confidently wrong, so your job as a programmer will increasingly require reading and understanding incorrect code you did not write. The skill in most demand will not be churning out code, but understanding it deeply, and I can teach you that.


Education

Rice University
Computer Science
UC San Diego
PhD

Additional Languages

French

Policies

  • Hourly Rate: $70
  • Rate details: First time students: Sessions must be scheduled at least 24h in advance; 50% penalty for cancellations within 24h. Regular students: Booking and cancellation are flexible.
  • Lesson cancellation: 24 hours notice required
  • No background check

  • Your first lesson is backed by our Good Fit Guarantee

Schedule

Loading...

Sun

Mon

Tue

Wed

Thu

Fri

Sat


Approved Subjects

C

C

My undergraduate programming courses were mostly in C++, in a style largely compatible with C. Since then I have used C in industry, research, and personal contribution to Free Software projects including Emacs and Perl.
C++

C++

I learned programming as an undergraduate in C++ and Scheme. I have since used C++ in industry for scientific programming work, and in my PhD research for performance-critical code. This has given me a solid understanding of computer hardware performance, from SIMD to the memory hierarchy.
Computer Engineering

Computer Engineering

While my PhD is in bioinformatics, I previously studied operating systems and CPU architecture. My work in scientific computing has also kept me familiar with hardware and optimization. I have also tutored numerous students here in low-level programming and computer architecture courses.
Computer Programming

Computer Programming

I have a PhD in Computer Science, specializing in computational genetics, and experience in industry and government with network and scientific programming. I have worked in a variety of languages, from C/C++ and Java, to Perl and Python, to Matlab and Julia.
Computer Science

Computer Science

I studied computer science as an undergraduate, focusing on operating systems and robotics algorithms. After that, I worked in government and industry for two years as a programmer on scientific and distributed computing projects. I then returned to graduate school, finishing with a PhD in Computer Science, specializing in computational genetics.
Data Structures

Data Structures

Algorithms and Data Structures is about half of what I tutor here, both the introductory (second-semester) version and the upper-division course. In addition to being familiar with the standard data structures, I have helped students understand graph algorithms and balanced trees, and perform expected-time analysis. I also have plenty of experience devising hybrid structures to solve specific problems.
Essay Writing

Essay Writing

For the past fifteen years, I have written 40,000-80,000 words per year in shorter blog entries (500-1500 words). During that time I have also published two well-received guidebooks. Before that, I wrote a dissertation and numerous scientific papers as a graduate student, and philosophy papers as an undergraduate. Thus I have had ample practice writing clearly and persuasively for a variety of audiences.
Machine Learning/ AI

Machine Learning/ AI

My dissertation applied various ML/statistical techniques to genomic data. Before settling on that domain, I studied machine learning (as we called it then) for natural language processing and other applications. I have tutored numerous students here in AI/ML courses, and follow both the strengths and limitations of current generative AI tools.
Perl

Perl

Perl has been my go-to language for web scraping, data processing, and general automation for 20+ years. I have also used it to implement interpreters for a few languages, including an early version of Perl 6. Understanding how Perl works has made it easy to program in Python and Ruby as well, which are very similar.
SAT Math

SAT Math

I have always been good at taking standardized tests, scoring 1500 on the SAT and 34 on the ACT, as well as the 90th+ percentile on the GREs.
Philosophy
Probability
Python
Statistics
Sean O.'s Photo

Questions? Contact Sean before you book.

Still have questions?

Ratings and Reviews


Rating

5.0 (162 ratings)
5 star
(157)
4 star
(4)
3 star
(0)
2 star
(1)
1 star
(0)

Reviews

excellent tutor

Excellent tutor, very patient, explains everything in details in a way that you understand. Can’t go wrong with this guy.

Daniel , 10 lessons with Sean

Very knowledge and patient tutor

So glad we found Sean! My procrastinating daughter needed help last minute before a midterm and Sean agreed to help. He was not judgemental and professionally helped her the best he could. We will continue to use his services! Highly recommend!

Anna, 4 lessons with Sean

Best Tutor for Compiler Course

The session I had with Sean regarding compiler theory and design was the best session I’ve had on this platform. He explained the reason and design of parser and scanner rules. Phenomenal tutor.

Miah, 1 lesson with Sean

Very knowledgeable and excellent tutor!

Sean was able to figure out issues in the compiler project and was able to teach student in a way that the student was able to understand the subject easily. He was a very patient tutor and used the time productively.

Rahnee, 1 lesson with Sean

Knowledgeable and patient

Excellent and thorough in explaining the concepts fully.Also reviewed the material before hand to ensure all aspects of the project were addressed. Highly recommended

T, 1 lesson with Sean

Extremely knowledgable, patient and detail-oriented

Sean patiently walked me through what to me seemed like a daunting piece of code (written in Julia) and was extremely sharp in figuring out what each line does and in discussing a solution. Great communication skills as well.

Ramin, 1 lesson with Sean

Very knowledgable and kind teacher!

Established structure of a concurrent C++ application using a Linux API. Explained some synchronization structures and how to use them in C++. Very helpful and knowledge, even though he had not used some of the specific parts of the app before he was quickly able to look at documentation and help out.

Ariyana, 2 lessons with Sean

Very knowledgable

Sean is very knowledgable and very approachable. Highly recommend to anyone looking for some extra assistance with comp sci material. I hope to work with him again should I need more assistance in the future.

Michael, 1 lesson with Sean

great Tutor! patient!

Great lesson from Sean. He was able to identify the issue with my code quickly. It was a tough project and he made sense of it for me. Thank you!!!

Kyle, 2 lessons with Sean

Clear and concise tutor.

Great with instructions and does things in an efficient manner. Was working with c++ programming and he helped me tremendously.

Jake, 5 lessons with Sean
Hourly Rate: $70
Contact Sean