2009-09-05 5 views
15

Sto aprendo una società che alla fine assumerà 2-5 sviluppatori per lavorare su una grande app web.Come si impedisce agli sviluppatori assoldati di rubare codice?

La mia preoccupazione principale è che uno o più sviluppatori potrebbero rubare il codice. Potrei farli firmare contratti contro questo tipo di cose, ma vivo in un paese in cui la legge è "flessibile".

È la mia unica opzione per bloccarli in una stanza senza accesso inet e porte USB?

Mi piacerebbe sapere come altri hanno risolto questo problema.

+7

tenerli incatenati in una cantina? –

+4

Poiché solo gli sviluppatori possono rubare il codice, non assumere nessuno sviluppatore. –

+1

Questa è una domanda sul codice o una domanda sulla gestione dei programmatori? Non dovrebbe essere su programmers.se? – kojiro

risposta

36
  1. Non assumere persone di cui non ti puoi fidare.

  2. Interrompi l'app in sezioni e consenti alle persone di lavorare su un sottoinsieme dell'app, senza mai ottenere l'accesso all'intero oggetto.

  3. Fallo valere la pena - stai aprendo una società, assumi persone e offri loro delle stock options. Assicurati che sia più interessante per loro farti avere successo che in altro modo.

+4

La risposta completa, + 1, assolutamente. –

+1

E dovresti scoprire di aver assunto qualcuno di cui non ti puoi fidare, licenziare immediatamente quella persona senza accedere al suo computer di lavoro (potresti persino disconnetterlo dalla rete fino a quando non viene ripulito) e mentre stai sparando persona, chiedi a qualcun altro di cambiare tutte le password possibili che potrebbero conoscere. Inoltre, mantenere sempre buoni backup dei sistemi aziendali critici. – HLGEM

+0

Questo consiglio è impraticabile. 1) Il punto di rubare il codice è tradire la tua fiducia. Nessuno è un perfetto giudice di carattere. 2) Come ha senso farlo per un'app compilata? CTRL + B = build. La compilazione fallisce se mancano sezioni del codice. È necessario che le intestazioni e le librerie siano presenti per la creazione. 3) Questo è l'unico consiglio che ha senso. – bobobobo

23

Che ne dici di tenerli tutti felici e dimostrare di apprezzare il loro lavoro?

+0

lol. Ben fatto! Stavo per scrivere questo! – vpram86

14

Il mio suggerimento non è tecnico ma sociale: Farli stare bene.

La maggior parte degli esseri umani ha una base morale che impedisce loro di ferire altre persone che li hanno trattati con rispetto e generosità.

C'è una sottile possibilità che tu finisca per assumere uno psicopatico, nel qual caso questo approccio non funzionerà - ma poi, è probabile che sia l'ultima delle tue preoccupazioni.

4

L'unica cosa che mi succede è far firmare un contratto in cui dichiari esplicitamente che se condividono qualsiasi codice al di fuori dell'ambiente del progetto, si comprometteranno per pagare una quantità di denaro pari a grande. Ma non c'è alcuna garanzia che non lo faranno comunque ..

19

Potreste scoprire che voi pensate al il vostro codice sorgente è la parte preziosa della vostra attività, ma potete sempre ricostruirlo. Il tuo vero vantaggio rispetto alla concorrenza è di solito nelle persone che assumi e nei rapporti commerciali che stabilisci nel corso di un'attività commerciale naturale.

1

Ci sono molti software di crittografia disponibili per crittografare il codice. Ecco un esempio http://www.codeeclipse.com/step1.php In altre parole, è possibile nascondere il codice di uno sviluppatore (un modulo) dall'altro sviluppatore e non sarà in grado di prendere lui stesso l'intero codice se si segue questo approccio.

Grazie Soleggiato

0

È possibile creare un ambiente vitual (una macchina virtuale) con connessione internet limitata (solo per server specifici - git/server SVN, server di database, ecc) e nessuna possibilità di copia/incolla. Questa macchina virtuale sarebbe un ambiente standard con strumenti di sviluppo comuni. In ufficio uno sviluppatore si connetterebbe in remoto alla macchina virtuale e inizierebbe a sviluppare senza poter rubare il codice. Ovviamente è possibile stampare lo schermo o digitare il codice su un altro computer ma è ancora molto difficile da rubare.