Your software journey begins here.

Looking for help on software development? I’m Jeff Booth, a professional software engineer who tutors students on the side.

I can offer you practical advice based on decades of industry experience, something you can’t get from a school setting alone. In return, you’ll help me deepen my knowledge and improve my communication skills in a way that only tutoring can. You’ll also pay me for my time, at a modest rate.

What kind of students do you help?

I forge the best relationships with college students and high school seniors. You must be motivated and have a positive attitude.

What can you help me with?

I can help students who are taking a course in any of the following:

  • C++ and C (classes, arrays, pointers, memory management, file I/O, smart pointers, move semantics, avoiding common mistakes, templates, virtual functions and polymorphism, operator overloading, compiler and linker errors)
  • Computer operating systems fundamentals (threads, page tables, locks, concurrency, condition variables, Linux internals, virtual memory, process scheduling)
  • Intro-level Java
  • Intro-level Python
  • Django web framework
  • Intel x86 assembly language
  • Computer graphics (OpenGL, shaders, affine transformations)

I can help you complete homework assignments, prepare for exams, and train for technical interviews.

You must be working through a course, even if it’s just a cheap do-it-yourself online course or a textbook with exercises. I’m not here to teach you the material from scratch; I just fill in the gaps.

What qualifications do you have?

My Wyzant stats
  • I hold a master’s degree in computer science from University of Washington.
  • I have over 2,609 hours of tutoring logged on the tutoring web site, with an average 5 star rating. (Note: if you try to look me up, my profile may be hidden if I’m not accepting new students.)
  • I was a Teaching Assistant for University of Washington’s CSE 457 Computer Graphics course.
  • I assisted with the Microsoft Technology Education And Literacy In Schools program for two years, helping students prepare for the AP Computer Science A test.
  • I have worked as a professional software engineer since 2012.

How are your lessons structured?

In light of the COVID-19 crisis, I meet students online only. I use the Zoom videoconferencing software to share your screen, so I can see what troubles you’re having and help you fix them.

I often do live pair programming with students on the Web site in “multiplayer” mode. I’ll write some code as an example, then ask you to change it. Then, you can apply the skill to your homework problems to see if you really learned the skill instead of just getting an answer.

Depending on your needs and my availability, I may offer customized homework problems for you to complete.

Can you do my homework for me?


I abide by a simple policy: the work you turn in must represent your own abilities. Why?

  • It helps me evaluate how well you learned the material.
  • It helps you evaluate how effective your tutor is for the money.
  • I won’t be able to practice explaining concepts or growing your skills.

No Cramming

You’ll get the most value for your money if you contact me when your course begins, rather than right before a deadline. Emergency cram sessions with me are difficult to schedule, less effective, and more time-consuming, which means you pay more for less learning. I am not a substitute for good study habits, your teacher, your textbook, or your class. I help you use those resources more effectively instead of just imitating them.

What grades can you help me get?

I aim for passing grades. It varies depending on your discipline, study skills, available time, and course difficulty. Here are some grades I’ve helped students achieve in the past:

  • A 3 on the AP Computer Science exam.
  • A passing grade in an advanced C++ class.
  • An A in an intro C++ class.

But Jeff, don’t you have a full-time job?

Yes, and it takes priority. What does that mean for you?

  • I can meet with you on nights and weekends only.
  • I am always on call for system outages at work. If I am paged during your lesson, I will end your lesson immediately, and you’ll only be charged for the time we actually spent together. As of 2020-07-22, this has not happened yet.
  • I cannot tutor you on certain products sold by the company I work for or its subsidiaries. Doing so competes with the company’s professional trainers, which creates a conflict of interest between me and my employer.
  • In the very unlikely event that my employer requires me to stop tutoring, I’ll have to say goodbye.

How expensive are you?

I charge $50/hr, billed by the minute. I accept payment by cash or credit card using QuickBooks, after the lesson is complete.

  • A regular homework assignment usually requires 1-3 hours.
  • A small project (1-2 weeks) usually requires 3-10 hours.

How can I lower that cost? Do you offer discounts?

I don’t offer discounts, but you shouldn’t need them if you use our time wisely. To make the most of the money, book multiple 1-hour lessons with me, with enough time between lessons to work on your assignment by yourself.

Use all other available resources too:

  • The textbook. Many students don’t even buy it!
  • Study groups.
  • Tutoring centers.
  • Professor and TA office hours.
  • “Smart” classmates who will tutor you for a lot less money than I will.
  • Any extensions or “late days” your course offers. Read the syllabus!

What if I’m not satisfied?

I offer a money-back guarantee on our most recent lesson. It’s pretty simple: if the lesson doesn’t work out, you just don’t pay me. However, I won’t have another lesson with you until (a) we agree that my last lesson really fell short of expectations, or (b) the last lesson is paid in full.

I’m ready to start!

Email me at with Tutoring in your subject line. I look forward to working with you!