Come posso tenere d'occhio un libero professionista remoto? [chiuso]


11

Ho assunto diversi sviluppatori da diverse parti del mondo. Va tutto bene, ma vedo che alcuni di loro stanno abusando della mia educazione trascurata troppo ultimamente.

Sono tutti assunti per un'intera giornata. Tuttavia, vedo che dopo 5 ore al giorno, non è stato fatto molto.

Sto pensando di sviluppare un software che catturi uno screenshot dello schermo del computer ogni 1-5 minuti e lo carichi sul mio sistema. Tuttavia, questo sta andando agli estremi.

In che modo le persone gestiscono solitamente gli sviluppatori remoti?


61
Considera di pagarli per risolvere i problemi invece di lavorare per X ore.


@MainMa, che aumenta un punto valido.
Gajus

2
Come puoi imporre agli sviluppatori di eseguire il tuo software di screenshot intrusivo sulla privacy fatto in casa? A meno che non sia stato stipulato in precedenza nel contratto o se non si fornisce l'hardware agli sviluppatori, si tratta di una violazione della privacy. Chi può dire che la loro macchina di sviluppo non raddoppia come la loro macchina di navigazione domestica? O come puoi garantire che non farai screenshot durante le ore fuori orario? Ma se segui questa strada, assicurati di installare il software di registrazione delle chiavi per ottenere l'intero pacchetto.
Dylan Yaga,

@Guy Dovresti modificare la tua domanda per includere uno standard di codifica richiesto (come da tuo commento a PaulTomblin). Sembra che tu voglia una combinazione di risultati consegnati + risultati codificati secondo il tuo standard. È necessario aggiungerlo nella descrizione del contratto / lavoro che i risultati + gli standard hanno soddisfatto = pagare. Aggiungi detrazioni / bonus 'per risultati davvero cattivi / buoni, IMO.
WernerCD,

Risposte:


45

Assumi programmatori onesti e tu (in consultazione con loro e possibilmente con altri programmatori onesti come controllo della realtà) stabilisci obiettivi ragionevoli in tempi brevi. Se non raggiungono gli obiettivi, licenziali. Se raggiungono gli obiettivi, allora non dovrebbe importarti se giocano a solitario per 2 ore di fila mentre si schiariscono le idee e riflettono su un problema.


1
Questo non è necessario vero. Questo è in realtà l'esempio che non voglio che la mia azienda segua. Perché potresti chiedere. Perché durante gli anni del mio appaltatore ho visto molti fare affari in questo modo. Lo sviluppatore scrive il codice per assicurarsi che funzioni (è qui che termina il modello). Voglio che lo sviluppatore perfezioni il codice, assicuri che il codice sia più efficiente e che qualsiasi stupido errore venga messo da parte (molto più difficile da tenere d'occhio dopo), cioè se sei pagato per 5 ore, lavori 5 ore.
Gajus

27
@Guy: se vuoi che superino sistematicamente gli obiettivi che hai impostato, allora dovrebbero stabilire obiettivi diversi.
Jonas

4
@Guy quello che stai chiedendo suona più come alcuni requisiti di prestazione e una garanzia
jk.

30

Gli screenshot sembrano controproducenti. In questo caso, sei nei guai.

L'ideale è avere traguardi tangibili e verificarne i progressi. Se non riesci a ottenere il valore del tuo denaro sui traguardi in base alla quantità di tempo che devi pagare per ottenerli, trova altro aiuto. Se non riesci a creare il lavoro a questo livello di dettaglio e non sai se stai venendo derubato, potrebbe essere inappropriato procurarsi il lavoro da remoto. Potresti introdurre un sistema di offerte competitive per il lavoro, ma se non riesci a dettagliare ciò che è necessario a un livello basso, puoi dire qual è la qualità del codice?

In generale, l'outsourcing e il lavoro a distanza dovrebbero riguardare l'acquisto di risultati, non l'acquisto di tempo. Altrimenti, come hai scoperto, la fiducia si rompe.


9
+1 per "risultati di acquisto, non tempo di acquisto".
Eric King,

2
Sii generoso con il programma (se puoi) e pagali in base ai risultati finali, quindi non devono impazzire se ci sono bug inaspettati che impiegano molto tempo a schiacciarsi. Quindi non dovrebbe importarti se riempiono il tempo extra lavorando un altro lavoro a contratto non concorrente o se riempiono il tempo extra giocando a solitario.
Ken Bloom,

1
Cosa succede quando servono i loro "risultati" con un lato del codice spaghetti orrendo? Nessuno vuole fare lavori futuri su quel progetto, nemmeno lo sviluppatore originale. Ma il lato positivo è che hai ottenuto i tuoi "risultati".
Pulsanti840

1
I risultati includono qualità se codice. Difficile da quantificare, ma puoi ottenere una qualità scadente pagando troppo tempo se non sai cosa cercare.
MathAttack

14

Quello che vuoi è chiamato un contratto. Il contratto dice cosa devono consegnare e quando, cosa devi pagare e quando.

Semplice come questo. Tutto il resto sarebbe drammaticamente controproducente. Romperà la fiducia tra te e il libero professionista. Se vuoi guardare da vicino cosa stanno facendo le persone, allora considera l'assunzione nel tuo ufficio.


Insistere su un contratto va bene e va bene, ma non credo di sapere di alcun grande software che è stato effettivamente consegnato sul bersaglio. I sovraccarichi di un fattore 2 o 3 sembrano essere molto comuni da quello che ho visto.
apoorv020,

È, oltre a cambiare le specifiche nel momento più stupido possibile dal cliente. Ecco perché il contratto è importante. Avere un contratto non ti impedisce di modificarlo in seguito se qualcosa cambia secondo il piano originale.
deadalnix,

7

O producono abbastanza codice per quello che stai pagando o trovi qualcuno che può farlo. Se picchiano sulla tastiera e sui topi per 10 ore al giorno e producono immondizia, continuerai a tenerli solo perché li paghi per 8 ore?

Imposta le richieste e concorda le scadenze. Se non puoi essere d'accordo, assumi persone che lo faranno. Sei un programmatore e dovresti essere in grado di individuare se hanno colpito ostacoli legittimi o meno.


+1 per aver sottolineato che qualcuno può lavorare per molto tempo e non produrre ancora risultati
Stephen Gross,

3

Vorrei creare un foglio Excel con una suddivisione di ogni funzione.

L'appaltatore dovrebbe aggiornarlo quotidianamente.

Ogni articolo dovrebbe avere una progressione definita in termini di%.

Quando una funzione è al 100%, dovrebbe essere pronta per la "firma".

Se un articolo funziona come previsto, è necessario contrassegnarlo e correggerlo.


1
Excel è uno strumento PM notevolmente sottovalutato!
Attacco di matematica

il ragazzo è fuori sede, ha la decenza di usare qualcosa di condivisibile online, come un foglio di calcolo di Google
Documento

3

Prima fai i compiti

Devi essere a tuo agio con le persone che stai assumendo, prima di assumerle.

Nel momento in cui stai pensando di spiare essenzialmente le persone che assumi, è troppo tardi. Sono un programmatore onesto, ma non lavorerei in quelle condizioni (anche supponendo che siano legali). È come quando attraversi il confine: potresti non nascondere nulla, ma ti fanno sicuramente sentire come sei.

Esegui controlli in background, ottieni riferimenti, fai domande. Utilizzare servizi affidabili. Prendi decisioni attente, quindi segui i consigli nelle altre risposte fornite qui.


2

Di recente ho lavorato con Scrum e posso dirtelo. Con questa metodologia Agile i fannulloni non hanno spazio per evitare la trasparenza. E dimostra anche che sei un buon manager / leader che invia loro compiti realizzabili.


2

Stai pagando per risultati o tempo? Se stai pagando per i risultati, non è affar tuo quanto tempo impiegano per raggiungere questi risultati. Se stai pagando per il tempo e non pensi che siano onesti sul loro tempo, lasciali andare e trovano qualcun altro - se non puoi fidarti di loro, a che cosa servono?

Se fornisci l'ambiente, la registrazione è un'opzione, ma dovrai prima informarli, il che darà loro la possibilità di fingere. Quanto tempo impiegano a cercare la risposta a un problema? Leggere risorse offline, semplicemente sedersi e pensare? Se non sono onesti, tutto ciò che farai è passare molto tempo a ottenere risultati inconcludenti. Se sono onesti, probabilmente li offendi e andranno avanti. Ad ogni modo, se ne sono andati.


1

Che dire dei repository di codice sorgente e li richiedi un commit costante. Piccoli impegni atomici: "commetti in anticipo, commetti spesso". Utilizza le funzionalità di DVCS (rami, tag) per eseguire il commit di elementi che non sono stati pensati per essere inclusi nel prodotto finale.

In questo modo puoi avere una buona idea di cosa è fatto, cosa deve essere fatto e così via.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.