Send Sergey a message explaining your needs and you will receive a response by email. Have you already emailed Sergey or another tutor? If so, you have an account! Sign in now
If you select this option, WyzAnt will ask interested tutors to contact you by email if they are able to help. A maximum of five different tutors will email you and none of your personal information, including your email address, will be released.
St. Petersburg University of Information Technologies, Mechanics and Optics
Pennsylvania State University (PhD)
Have you or your children ever wanted to really understand math going beyond drills and rote training in specific techniques?
Do you want to learn computer programming? Not just to create nice-looking and functional websites or mobile phone applications, but so you can write a program that can play checkers or find its way out of a labyrinth. If you want to become a top-notch programmer or an applied mathematician working on the next-generation search engine, cutting-edge cryptography, real-time trading software, or speech recognition, you must learn and understand algorithms - sorting, binary trees, dynamic programming... Few people in New York are better qualified to teach those things.
...if the answer is yes, then you are in the right place. Welcome to my page! I have stellar credentials and an extensive teaching experience.
I have taught math and programming at both high school and university level, in Russia and in the United States. Most recently, in 2013-2014, I have tutored full-time C++, Python/django, Perl, Java, Matlab, cryptography, as well as college-level math. I can teach almost any mainstream programming language and almost any area of math or theoretical computer science. Right now I work as a Data Scientist at a machine learning startup.
In 2004 in Prague, my team of three won the World Champions title in the ACM International Collegiate Programming Contest, leaving behind teams from MIT, Caltech, Harvard, Stanford, and 1,400 other universities. ACM ICPC is the oldest, largest, most prestigious programming competition in the world. After that we were invited for an audience with the Russian president as well as to the ACM 2004 Awards Banquet at the Plaza Hotel in New York City. In 2005 in Shanghai we won the third place and gold medals, still leaving behind every single team from North America.I also participated in organization and served as a judge at fifteen high school programming competitions including four All-Russian Olympiads.
I have a Ph.D. in Math and 20 years of programming experience. In terms of Software development industry experience, I have spent almost two years developing real-time trading software at Credit Suisse in New York City. I have also had internships at Adobe Systems (patent pending) and Microsoft. I have scored in the 99-th percentile on the GMAT (780, AWA 6, IR 8), SAT (2360), ACT (35). I was the CTO of a (failed) machine learning startup called "Contextuall". I currently work as a Data Scientist at a machine learning startup that has to do with food delivery.
Please, let me know what you are looking for. I will explain in great detail what I can and what I cannot do for you or your child. I am looking forward to hearing from you.
Sergey Have you or your children ever wanted to really understand math going beyond drills and rote training in specific techniques?
Do you want to learn computer … Read more
I usually do 2-hour sessions.
He worked with my child who is in college on de bugging a program. My child had time constraints and he worked within them. Will be using him again.
Sergey is very knowledgeable and interested in the subject matter I was learning. overall he is engaging and helpful.
We've been with Sergey for three weeks now and at this point I'd like to make three comments. First, he is extremely professional. He show up right on time, is friendly and social. Second, he is organized with his teaching plan and he customizes it to his student's level. He helps my kids acquire skills surely and slowly. Third, he imparts a love of learning. Because they like him, my kids are excited for him to arrive and when he leaves, they are excited by what he has taught them. He helps them discover the joy of learning, which is the highest hope one can have for a tutor.
I cannot speak highly enough of Sergey, as he helped me make sense of my inadequate computer science education. In just a little over a month I went from vaguely understanding python to building my own site, loving the language and programming well. He was always available and would find additional materials for me after each lesson. I wish I had known about Sergey and WyzAnt years ago!
In most cases, tutors gain approval in a subject by passing a proficiency exam. For some subject areas, like music and art, tutors submit written requests to demonstrate their proficiency to potential students. If a tutor is interested but not yet approved in a subject, the subject will appear in non-bold font. Tutors need to be approved in a subject prior to beginning lessons.
I have been programming for 18 years, that is, since the age of 9. I have used Pascal, C++, Java, ActionScript, C#, and Python. I've had internships at Adobe Systems and at Microsoft. I have worked for Credit Suisse in New York City, developing real-time trading software. There we primarily used C++ and Python.
During my Ph.D. program at Penn State I have taught the course "Calculus and Vector Analysis" two times. The students were mostly sophomores majoring in engineering.
I have been programming for 18 years, that is, since the age of 9. I have used Pascal, C++, Java, ActionScript, C#, and Python. I've had internships at Adobe Systems and at Microsoft. I have worked for Credit Suisse in New York City, developing real-time trading software.
I have spent 8 years participating in programming competitions, most notably in the ACM International Collegiate Programming Contest - the large, oldest, most prestigious programming competition in the world.
In 2004 in Prague my team of three won the World Champions title and the absolute first place, leaving behind teams from M.I.T., Harvard, Stanford, Caltech, as well as teams from KTH (the Royal Institute of Technology, Sweden), Warsaw University, Shanghai Jiaotong University, and thousands of other teams. In 2005 in Shanghai we won the absolute third place and the gold medals.
I have also organized, judged, contributed problems for 15 high school programming competitions including four All-Russian national olympiads. I taught programming in Russia at the high school level.
I can help you if you are a high school student or an adult and you:
- have a strong math/physics background and want to learn the foundations of programming
- need to prepare for a job/internship interview
- are interested in testing software by unit tests
- are interested in programming competitions
- are interested in organizing/judging programming competitions
- are interested in understanding classical algorithms and data structures
If you have several friends who share your interests, I will be happy to organize group sessions.
I have learned a lot of theoretical computer science during my programming competition years. My undergraduate thesis described a new data structure combining B-Trees with burst tries. Later, I co-authored an influential paper on ranking scientists and their publications in a way similar to the Google's ranking algorithm.
In 2003 I founded a programming circle in Russia where I taught algorithms and data structures to interested high school students. In 2004-2005 I taught two experimental high school courses also focusing on algorithms and data structures.
In 2011 I gave a talk on dynamic programming to 100 computer science majors at Brooklyn Technical High School. More recently, in 2013 I gave another talk on artificial intelligence in computer games.
I can teach you classical algorithms and data structures, algorithmic complexity, and additional topics if requested.
Of course, I will be happy to work with you if you are serious about participating in programming competitions.
If you are an undergraduate student taking a course in theoretical computer science, I can help you understand it. Of course, if you are a high school student who wants to learn computer science, you are also very welcome.
If you have several friends who are also interested in computer science, I am open to organizing group sessions as well.
Discrete math is one of my strongest areas of expertise. I have spent many years participating in computer programming competitions, and in this way I have learned a lot of various algorithms and data structures. My B.Sc. program also included a considerable amount of discrete math. During my Ph.D. program at Penn State I took advanced courses in mathematical logic and one course in cryptography.
I also gave two discrete math-flavored lectures at the Brooklyn Technical High School. The first one was on dynamic programming (2011), the second one --- on artificial intelligence in board games (2013).
I have a Ph.D. in Mathematics, and my thesis was in metric geometry (see http://www.ams.org/journals/proc/2011-139-12/S0002-9939-2011-10861-X/home.html).
However, I believe that teaching is more fun than doing research. Geometry is a wonderful area of mathematics, and it actually is related to art, science, and modern technology. I will be happy to share it with you.
I have a Ph.D. in Mathematics from the Pennsylvania State University. During this time I taught three courses on linear algebra.
I have really enjoyed teaching this subject. Linear algebra has deep connections with other areas of mathematics as well as with computer science. Eigenvalues, determinants, orthogonal transformations - I know it all, and you can understand it too. Most people can if you teach them well.
I have studied mathematical logic during my undergraduate studies. In graduate school I formally had a concentration in Logic, so I have passed a qualifying examination in logic. I have really enjoyed learning about algorithmic randomness. (However, my thesis is in metric geometry.)
I can teach you computability theory (also called recursion theory). I will also be happy to explain the basics of mathematical logic including propositional logic and first-order predicate logic. If you have always wondered about Gödel's theorems, cardinals and ordinals, the Axiom of Choice, or Zermelo-Fraenkel Axioms, I can help you with that as well.
I have also studied philosophy, particularly philosophy of language, so I can present mathematical logic in a philosophical context.
I started programming in Pascal when I was 9 years old. At first I was using Turbo Pascal, then Borland Pascal. Years later I used Borland Delphi to develop a production-quality application for a middle-sized sports equipment manufacturer in St. Petersburg, Russia.
I have also spent many years participating in computer programming competitions, and I competed almost exclusively in Pascal/Delphi (or Kylix, the unix version of pascal).
If you are just starting to learn computer programming, Pascal is a great first language. It is a bit outdated, though.
I have never actually taught Probability Theory, but I have enjoyed explaining selected topics to curious friends. There is something in this subject that attracts all kinds of people.
I started teaching Argentine Tango at Penn State where I served as a vice-president and then a president of Penn State Social Dance Club. I taught weekly classes to beginner-intermediate tango dancers. I also taught a few absolute beginner workshops and one advanced weekend workshop. Later I taught Argentine Tango at Ral'eau Salsa Dance Company, a new studio near Times Square.
Sergey O. passed a background check on 10/1/13. The check was ordered by Sergey through First Advantage. For more information, please review the background check information page.
After sending a message to Sergey, you will be able to order a new background check for $7.99. As part of your tutor selection process, we encourage you to run updated background checks. Please also review the safety tips for hiring tutors.