Как работать с программистом, чтобы тот не утащил твои разработки.
- 16 февраля 2015, 17:58
- |
- Li
Всем привет. Наверняка многие сталкивались с необходимостью превратить свои идеи в некую программу. Так вот — как же это правильно делать? У меня пока есть два предположения — ищем программиста в интернете и платим ему… а что собственно платим? Он же тоже участвует в разработке, тоесть похорошему он тоже заинтересован.
Второй вариант — посадить пару программистов в офис и платить зп… допустим 5 тысяч в месяц на человека вполне норм, можно взять программиста в США и офис там же снять. Подписать договор о конфеденциальности...
Кто писал хороших роботов может делал тоже самое, но раскидывая работу между разными программистами.
Так вот вопрос — как правильно делать в конечном итоге? И чтобы они потом разработанное ПО не продавали куда захотят и т.д. и т.п.
Платить/платить+доля/доля и куда сажаем офис/удаленка или по частям индусам на разработку?)
По предварительным ТЗ можно говорить о сумме разработок от 20 до 100 тыс $.
Если человек(программист) толковый, то он и без ваших алгоритмов пробьет головой эту стену и добьется успеха. А если бестолковый, то алгоритм ему не поможет. Грааль он ведь не в кодере, а в постановщике задач. Поэтому просто не думайте о последствиях и смело ставьте свои задачи. В конце концов у вас получится найти человека, которому будет не только выгодно, но и интересно решать ваши задачи. Так и родится идеальное партнерство.
в офисе оно, несомненно, сподручней будет.
Опять же советую исходить из того какие задачи будете решать.
Если это будут обычные стратегии на свечках, то там квалификация нужна одна, а если HFT или идейные стратегии, то там нужна иная квалификация.
Например я писал роботов два года назад.
И при анализе сетевой статистики это программа пересылала-принимала данные на несколько ip адресов:
1- это обновление
2,3- это котировки с биржи
а вот 4,5 — про них нигде указано в описании не было
и что туда отсылалось остается только гадать.
2. самый надежный вариант если нужно именно отдельная программа, если сами мыслите, то да прогер кодит общие мозги, а вы допиливаете алгоритм.
2.5 Если не частотка, можно заказывать блоки в тслаб или другой робото конструктор, и в нем уже дособирать.
П.С. Если обращаться к человеку который мыслит в роботописании, то понятное дело он заюзает возможность.
тут главное договориться, что б не продавал еще комунить.
Никак
Что воровать-то? Грааль или программный код? Любой толковый программист разработает любую платформу и без ваших ТЗ, если захочет и если она будет ему нужна. И ничего воровать не придётся. Так что скрывать тут нечего.
Если не хотите палить грааль, то не пишите по нему тех.задание. Сделайте тех.задание так, чтобы платформа умела строить какие-то индикаторы, отслеживать какие-то данные, принимать необходимые параметры, отправлять заявки при соблюдении каких-то условий. А дальше свой грааль будете вводить уже в готовом продукте сами без программистов. Сами будете в платформе создавать необходимые индикаторы и выставлять нужные параметры, о которых никто не будет знать.
По хорошему, программисту тоже сложно, если рыночная ситуация поменяется и надо вносить коррективы в софт, тут он может облажаться :)
Попробуйте взглянуть на это с другой стороны. Если у вас одна единственная стратегия, то ищите наименее затратный вариант ее реализации. Степень адекватности любого уровня защиты всегда оценивается по соотношению затрат на реализацию системы защиты к стоимости защищаемой информации.
Необходимо также понимать, что большинство алгоритмических стратегий работают лишь некоторое время, после чего они или перестают приносить удовлетворительный доход, и необходима новая стратегия. Либо стратегия начинает нуждаться в перенастройке.
Что касается моего личного взгляда на данную проблему, то я склоняюсь к варианту взаимовыгодного партнерства, когда оба участника — это одна команда.
Также, если судить по моему собственному опыту (сам пишу роботов, но при этом программистом себя не считаю), то умный человек даже заполучив вашу стратегию с большой вероятностью будет использовать ИДЕЮ (если она покажется ему интересной), доработав ее под себя. Что автоматически приведет к существованию двух РАЗНЫХ стратегий, с разными уровнями эффективности. А это, в свою очередь, говорит в пользу сотрудничества, т.к. в процессе работы может получиться так, что не только Вы будете вносить интересные идеи в торговые системы, но и ваш партнер.
— разработать техническую часть (управление ордерами, чтение котировок)
— разработать DSL
Таким образом Вы не раскрываете своего алгоритма, т.к. будете задавать его сами на этом самом DSL.
P.S: посмотрите на jboss drools
Я бы в такой ситуации, прежде чем ввалить деньги в команду программистов, нанял бы на временный договор одного, сел бы с ним рядом в офисе и попробовал бы реализовать какой-то относительно быстро и малозатратно-реализуемый кусок своей программной мечты, а потом по ощущениям сориентировался бы надо оно мне или нет и в каком виде.
Надо отдать им должное, стоило это весьма недорого. Однако пришлось все переделать, за дополнительные деньги. Так вот чтобы переделка тоже не оказалась деньгами на ветер, пришлось заблаговременно написать около сотни модульных тестов и выдать им в виде ТЗ. Такое задание они приемлемо выполнили, но понятное дело что на разработку тестов понадобился не один день и архитектура все равно получилась неидеальной ибо писать надо итеративно, тест-код, тест-код, а не так чтобы сразу сотня тестов, потом куча кода под них. При любом раскладе куча работы и проблем. И если при этом нихрена в программировании не понимаешь, то шансы на успех сокращаются вчетверо.
Где Вы видели программистов, которые работают за 5 тысяч в месяц и это «вполне норм», да еще и в США? :) А, или имелось ввиду 5 тыс долларов в месяц, тогда ок :)
Как показывает практика, не так уж много на рынке программистов, понимающих предметную область биржевой торговли, а в идеале имеющих и собственный опыт ручной или автоматической торговли. При обычном раскладе, если мы нанимаем неспециализированного человека, то первый месяц он у нас вообще в основном сидит и читает книжки «а-ля» «Технический анализ для чайников» (или квантовые финансы для чайников, в зависимости от того, на что мы в своих алгоритмах опираемся), «Фьючерсные рынки и производные инструменты» и так далее и тому подобное.
Ну а если нанимать человека «в теме», то естественно, когда вы с ним расстанетесь (если у вас нет в планах что эта ваша затея всерьез и надолго), он так или иначе будет использовать полученные при общении с вами знания и опыт. Такова природа человеческая. Любой, самый честный, заполнивший кучу NDA договоров, так или иначе на новом рабочем месте автоматически скопирует какие-то куски кода или шаблоны или подходы, которые он вывел для себя во время взаимодействия с вами.
Как нанять директора чтобы он потом не мог руководить таким же предприятием?
Как седалть так чтобы жена после развода не могла варить те же супы себе?