Блог пользователя botaninvestments

Автор botaninvestments, 7 лет назад, По-русски

В сентябре в грантовой программе фонда Виктора Шабурова Botan Investments приняли участие 16 вузов. Больше всего студентов пришли на тренировки в ТПУ (Томск) — 42 человека, СГУ (Саратов) — 32 человека, УрФУ (Екатеринбург) — 24 человека. Больше всего тренировок за сентябрь провели КФУ (Казань) — 11 тренировок и МГУ (Саранск) — 9 тренировок. Также в сентябре к программе для преподавателей присоединились новые участники, это ННГУ им. Н. И. Лобачевского (Нижний Новгород) и ОГУ (Оренбург).

Botan Investments выступил спонсором квалификационного этапа Четвертьфинала ACM-ICPC Южного подрегиона, олимпиады по программированию в рамках международного форума “Объединяя параллели” на Дальнем Востоке и технического форума РИФ.Технологии.

Олимпиада по программированию в рамках форума “Объединяя параллели”

В группе Botan Investments в ВК можно почитать новые посты droptable о подготовке задач на сборы и о том, на чем держится АСМ сообщество. А сегодня Михаил подготовил рассказ о том, как можно зарабатывать, занимаясь ACM.

Всем привет!

Недавно был пост от TeaPot. Там он задавался вопросом, станет ли АСМ ICPC спортом. На вопрос отвечать я не умею, хотя какие-то наблюдения по этому поводу у меня есть. Может быть, об этом я напишу отдельный пост позже.

Желание заниматься тем, что нравится, вместо того, чтобы идти работать, вполне естественно. Поэтому сегодня я хочу поговорить о возможностях заработать деньги, оставаясь внутри АСМ и занимаясь только им.

Почему я считаю, что компетентен говорить об этом? Например, потому что я один из тех, кому это удалось. Я не преподаю в университете, не работаю программистом, а занимаюсь исключительно АСМ. Я уже больше 10 лет в АСМ-тусовке и за это время немало общался с людьми, которые тоже зарабатывают внутри АСМ (правда, у большинства это не единственный источник дохода).

Я не только расскажу о имеющихся возможностях, но и дам рекомендации, к кому обращаться во многих случаях. Конкретные вакансии в сфере спортивного программирования не известны в широких кругах, вы не найдёте их на хедхантере и подобных сайтах :) Поэтому эти сведения правда не так легко найти.


Давайте обсудим все возможности. Если вы знаете ещё какие-то варианты, пишите их в комментариях.

1. Можно готовить задачи на онлайн-платформы. Есть немало платформ, которым требуются задачи. Платят довольно неплохо, на мой взгляд, например, codechef.com/problemsetting/setting. Буду рад, если оставите в комментариях ссылки на стоимости подготовки задач на других платформах (сходу помню про codeforces, atcoder, csacademy, topcoder, hackerearth, hackerrank. Что ещё?).

2. Можно работать координатором на этих же платформах. Мы много слышим о координаторах cf. Опять же, может кто-нибудь составить список сайтов, где в данный момент есть координаторы и где они бывают нужны? На cf, думаю, достаточно написать MikeMirzayanov, если вы хотите стать координатором. Вас, как минимум, будут иметь в виду :)

3. А ещё можно работать тестером на этих же платформах. Такая должность уже есть не везде. На hackerearth у задачи есть автор и тестер отдельно. Тестер должен писать альтернативные решения, выявлять баги. Например, Богдан I_love_Tanya_Romanova Прищенко был там тестером. Видимо это значит, что у них координатор играет более слабую роль, выполняя работу организационного характера — сводит тестеров и авторов (может, что-то ещё).

4. Можно готовить задачи на ACM ICPC, например, на четвертьфиналы. Я думаю, за подготовку везде что-то платят. Свяжитесь с жюри вашего чф и скажите, что хотите участвовать в разработке задач. Или необязательно вашего. Например, мы проводим кволы и будем рады, если вы захотите стать соавторами. Преимущество кволов в том, что большинство задач простые, поэтому от вас не потребуется суперуровень АСМщика. Если вам это интересно, напишите мне.

5. Помимо четвертьфиналов некоторые вузы проводят внутренние соревнования. Например, у нас проходят шесть соревнований в год: два любительских и четыре для профи. Для них мы не придумываем свежие задачи, а берём готовые контесты и усложняем или упрощаем под уровень участников. Тут тоже есть нехватка авторов (часто я сам делаю все, потому что никто не вызвался, хотя я был бы рад отдавать все контесты). Если вам это интересно, свяжитесь со мной. У нас будут личные туры для профи в октябре и в декабре, можно поучаствовать в их подготовке.

6. Можно быть организатором контестов/сборов. Благо сейчас и соревнований, и сборов много. Я сам занимался организацией всех наших соревнований в 2012-2013 годах (пост с самоиронией о ЧУ 2013). По договорённости я делал это от Контура. Я думаю, это везде решается ситуативно: где-то универ находит деньги, где-то местные спонсоры. Насколько я знаю, наиболее развито это в МФТИ: у них есть большой отдел, который занимается организацией сборов и олимпиад.

7. Можно быть админом/координатором сборов, т.е. заливать все контесты в систему, проверять их готовность, искать контесты, которые ещё не засвечены. Сейчас этим занимается почти на всех сборах snark. Но ведь он не железный, а число сборов растёт. Так что я считаю, что этот рынок открыт :) Можно обращаться к организаторам сборов, если хотите в этом помочь. Я думаю, что и они будут рады, и Олег.

8. Можно быть руководителем программного комитета сборов. Эта тема относительно свежая. Сейчас стало много тематических сборов (в основном с подачи МФТИ). На эти мероприятия нужно находить авторов, проверять задачи на качество и т.д. На сборах МФТИ этим занимается Миша Endagorion Тихомиров. Но опять же, количество сборов растёт, и я думаю, что вот-вот понадобятся новые люди :) А может, они уже нужны.

9. Можно выступать на сборах и готовить разборы. На все сборы привлекают лекторов и авторов. Обычно нужно собрать тематический контест + провести лекцию перед ним + провести разбор. Я около пяти раз ездил как лектор на подобные сборы. Это нерегулярный доход, но, помимо непосредственно заработка, появляется возможность познакомиться с организаторами и участниками.

10. Если вам не нравится участвовать в существующих сборах, вы можете делать свои. Я четыре раза приезжал в разные организации провести лекции/контесты на недельку (один раз в вуз, два раза в школу, один раз в it-компанию). Это пользуется спросом, но рынка ещё нет, поэтому те, кто хотят организовать у себя сборы, и те, кто могут их провести, пока не очень умеют находить друг друга :)

11. Можно заниматься репетиторством. Для меня, например, это является одним из основных источников доходов. Кто-то может возразить, что репетиторство не считается за АСМ ICPC. Но я готовлю школьников именно к АСМ ICPC/IOI, не к ЕГЭ :) От классического тренерства это отличается только тем, что гораздо более регламентирован формат и фиксировано время, которое вы тратите на ученика. Рынок существует, но, конечно, он небольшой. Здесь ещё сложнее, чем со сборами. На сборы часто не поездишь, так что клиентов нужно немного. А учеников лучше иметь много и постоянно находить замену, чтобы вы не “простаивали”. У меня это недавно начало получаться, но тут всё очень индивидуально, и, может, завтра снова перестанет работать. Думаю, что здесь важна репутация + мне помогло то, что у меня есть опыт подготовки студентов к ЧМ. Возможно, у Андрея andrewzta Станкевича вся почта и соц.сети завалены такими заявками :)

12. Можно быть тренером, в конце концов :) АСМ развивается, и всё больше вузов активно в нем участвуют. Здесь так же, как и с организационной работой — нужно найти того, кто будет вам платить. Это может быть компания или универ. Мне за тренировки в УрФУ по сколько-то платит и Контур, и универ. Это не является основным источником дохода (возможно, к сожалению), но это интересно и важно для меня, поэтому этим я занимаюсь больше всего.

13. Наконец, мы все любим решать задачки. А после того, как вы решили задачку, можно написать научную статью. У меня есть около 10 задач, которые я одновременно использовал в научных статьях и в АСМ. Вы считаете, что не способны на создание чего-то нового? Ок, есть куча результатов в АСМ, которые так и не добрались в науку. И есть куча обзорных журналов. Изучите посты на cf, опубликуйте результаты, описывая их как фольклор из ACM ICPC. Пусть декартово дерево по неявному ключу в конце концов кто-то опишет в научной статье :) Мне в своей последней статье пришлось описывать персистентное ДО с проталкиванием, поскольку ни одной статьи о нем не было, а я использовал его для решения задачи. Кстати, теперь можно ссылаться :)

Вспоминайте ещё один способ заработать в АСМ ICPC и пишите комментарии. Начните прямо сейчас ;)

  • Проголосовать: нравится
  • +82
  • Проголосовать: не нравится

»
7 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

Если не секрет, то хватает ли на жизнь вам?:) Просто, всегда думал, что в спортивном программировании можно заработать только, выигрывав что-нибудь. Например, как это всегда делает tourist. Где-то, вроде бы, читал о его призовых. Думал, только так можно достаточно заработать

»
7 лет назад, # |
  Проголосовать: нравится +33 Проголосовать: не нравится

Страшно извиняюсь, но я рискну сделать то, чего в статье не сделано — попытаюсь перевести в какие-то цифры :)

Можно заниматься репетиторством. Для меня, например, это является одним из основных источников доходов.

Конечно, это грубая оценка, но допустим, 1500 за занятие (хотя это от региона зависит наверняка)... И 10-12 занятий в неделю при везении и достаточном количестве времени удается дать... Получается около 70 тыр в месяц.

Наверное поэтому найдется ненулевое количество спортивных программистов (даже среди оранжевых-красных) которые зарабатывают деньги "на основной работе", а участие в контестах рассматривают просто как стиль жизни и возможность получать удовольствие, адреналин, расти интеллектуально и т.п. Не нагружая эту деятельность финансовыми интересами :)

Я правильно догадываюсь?

  • »
    »
    7 лет назад, # ^ |
    Rev. 2   Проголосовать: нравится -10 Проголосовать: не нравится

    Не очень понял ваш посыл? По-вашему, 70 тысяч в месяц это мало?

    • »
      »
      »
      7 лет назад, # ^ |
      Rev. 2   Проголосовать: нравится +10 Проголосовать: не нравится

      Смотря с чем сравнить — в качестве подработки например для студента — неплохо (хотя на подработке 12 занятий вряд ли сделаешь).

      Но в то же время почти без опыта программирования можно работать тестировщиком от 60-ти. Вот навскидку с хедхантера:
      https://spb.hh.ru/vacancy/22993155 (60-80)
      https://career.ru/vacancy/22878818 (60-100)
      https://spb.hh.ru/vacancy/22879507 (70-130)

      Вакансии программистов конечно прибыльнее: https://spb.hh.ru/vacancy/22943138 (2-4k usd)
      https://spb.hh.ru/vacancy/22958103 (120-200)
      В упоминавшемся популярно JetBrains 200 это по-моему уровень старшего разработчика. Был год назад.

      Конечно это условия по конкретному региону (Петербург) — но и 1500 за занятие это тоже ставка для СПб / Москвы мною навскидку взятая...

      • »
        »
        »
        »
        7 лет назад, # ^ |
          Проголосовать: нравится 0 Проголосовать: не нравится

        В регионах зарплаты программистов существенно ниже. Для Ижевска, к примеру, 70 тысяч — очень хорошая зарплата.

        • »
          »
          »
          »
          »
          7 лет назад, # ^ |
          Rev. 2   Проголосовать: нравится +10 Проголосовать: не нравится

          Да, безусловно — но и за репетиторство, боюсь, в Ижевске поменьше выйдет.

          Впрочем и в Ижевске есть объявления вроде:
          https://spb.hh.ru/vacancy/22832385 (60-120)
          https://spb.hh.ru/vacancy/22959167 (от 100) просто вакансий конечно меньше. Так-то "дешевых" вакансий и в больших городах хватает.

          А еще хорошие новости в том что если задаться целью, можно найти конторы в Москве или СПб, которые с радостью возьмут вас на удаленку (ну или релоцируют к себе если захотите)... :)

      • »
        »
        »
        »
        7 лет назад, # ^ |
          Проголосовать: нравится +36 Проголосовать: не нравится

        Но ведь мы сравниваем 12 часов интересного репетиторства с 40 часами сидения в офисе с очень скучной работой.

        • »
          »
          »
          »
          »
          7 лет назад, # ^ |
          Rev. 2   Проголосовать: нравится 0 Проголосовать: не нравится

          Имхо тут есть нюанс :)

          • во-первых 1 занятие это не обязательно 1 час, скорее 1.5 в среднем
          • во-вторых на занятие нужно приехать и уехать (если не у себя) — еще 1.5 часа на дорогу — да и у себя принимать — тут другие будут заботы
          • в-третьих с репетируемыми нужно постоянно созваниваться, подстраиваться под их вечно меняющиеся планы и т.п., искать новых
          • в-четвертых, и это главное, репетиторствовать интересно только умных и продвинутых — но если речь идет о том чтобы ставить эту деятельность "на поток", то продвинутых обычно процентов 10-20, а остальным нужно долго и нудно втюхивать какие-то азы — а они на тебя смотрят и думают сколько еще это мучение продлится...

          На эти 12 занятий скорее всего будет уходить 6-дневная рабочая неделя :)

          Конечно, можно представить идеализированный случай, когда вы организуете что-то вроде лекций для реально интересующихся — тогда и со временем и с интересом все будет получше. Но это уже не совсем репетиторство — это скорее частная школа или курсы :)

          В то же время насчет офиса со скучной работой — тут смотря что за офис и что за работа :)

  • »
    »
    7 лет назад, # ^ |
      Проголосовать: нравится +10 Проголосовать: не нравится

    А сколько времени надо на одно занятие? Помимо самого занятия — организационная работа, подготовка к встрече и все остальное... Если 10 часов занятий в неделю — то для получения 40-часовой рабочей недели необходимо, чтобы на подготовку уходило в 3 раза больше, чем идут сами занятия. У меня есть минимальный опыт в этой сфере (в свое время читал пару раз в месяц лекции по скайпу школьникам из другой страны), и у меня отношение времени на подготовку к времени занятия приближалось к таким числам только в тех редких случаях, когда они просили объяснить какую-то сложную задачу, к которой нигде нету никаких материалов, и которую сначала приходилось решать самому (да и то — задачи "в фоне" решать можно, так что реальная трата полезного времени там ниже; это явно не офисная работа). Подозреваю, что если поставить "на поток" и обучать каким-то сравнительно базовым вещам, а не рассказывать задачи с отбора на IOI, то времени надо меньше.

    Вроде у Михаила в итоге остается достаточно времени на сравнительно большое количество других вещей, как в плане заработка по списку выше, так и в плане жизни в целом :)

    По поводу ненулевого количества — мне вообще интересно, как много людей в мире живут именно со спортивного программирования :) Я согласен, что промышленное программирование выглядит как намного более простой и понятный способ получения стабильного и хорошего заработка.

    • »
      »
      »
      7 лет назад, # ^ |
        Проголосовать: нравится +10 Проголосовать: не нравится

      Это верно когда начинаешь заниматься репетиторством (на самом деле я не уверен что оценка в 3 часа адекватна даже в начале).

      Потом же можно переиспользовать материал.

»
7 лет назад, # |
Rev. 2   Проголосовать: нравится +25 Проголосовать: не нравится

Сколько стоят задачи на Topcoder: https://apps.topcoder.com/wiki/display/tc/Write+Problems+for+TopCoder. Там же есть тестеры, но их расценки не могу найти.

Upd. Ссылка на обновленные расценки, не требующая логина: https://www.topcoder.com/community/member-programs/algorithm-problem-writers/

  • »
    »
    7 лет назад, # ^ |
    Rev. 2   Проголосовать: нравится +15 Проголосовать: не нравится

    Как может комментарий прямо отвечающий на вопрос из поста

    Буду рад, если оставите в комментариях ссылки на стоимости подготовки задач на других платформах

    иметь негативный рейтинг?

    • »
      »
      »
      7 лет назад, # ^ |
      Rev. 2   Проголосовать: нравится +20 Проголосовать: не нравится

      Я тоже сначала не понял, потом мне объяснили. Дай угадаю, ты залогинен на ТС. Так вот — попробуй вылогиниться на TopCoder, а потом уже перейти по ссылке :)

      И страница логина, на которую перебросит — тоже не работает (надо залогиниться через https://community.topcoder.com/tc?&module=Login).