Come può un'agenzia software fornire software di qualità / vincere progetti? [chiuso]

StackOverflow https://stackoverflow.com/questions/204572

  •  03-07-2019
  •  | 
  •  

Domanda

Attualmente lavoro per un'agenzia software su misura. Qualcuno ha qualche esperienza su come vincere un lavoro a buon prezzo?

Sembra che ci sia così tanta concorrenza da parte dei team di programmazione offshore / camera da letto, che il costo è estremamente competitivo al giorno d'oggi. Ritengo che sia molto diverso rispetto a una società di prodotti software o a un dipartimento IT interno in termini di budget.

Come qualcuno ha detto prima, arriviamo alla versione 1.0 di molti dei nostri software, a meno che il client non sia abbastanza grande. In questo caso non ha senso passare il tempo a fare del software il meglio che possiamo. È come se stessimo facendo la stessa qualità di lavoro del personale IT interno. Inoltre, molti dei nostri clienti non sono tecnicamente orientati e quindi non pagheranno per cose che non capiscono.

Dato che la nostra azienda non ha i soldi per rifiutare il lavoro, spesso ci assumiamo un lavoro complicato per troppi soldi. Sono migliorato molto nella gestione del cambiamento e nel mantenere specifiche rigorose, ecc. È ancora difficile.

Modifica -----------------------

Quasi 3 anni dopo questo post e posso elencare alcune importanti lezioni che ho imparato da allora.

Vedi sotto per la mia risposta

È stato utile?

Soluzione

Se ti preoccupi di fare troppo lavoro per troppo poco denaro, lavora su base oraria. Sì, è più difficile vendere nella maggior parte delle situazioni.

Forse invece puoi provare un approccio in due fasi. Avere un impegno iniziale molto breve in cui i risultati finali sono documenti con requisiti molto specifici che diventano proprietà del cliente. Rischi di dover competere per lo sviluppo effettivo, ma elimini il rischio di fissare un prezzo troppo basso sul progetto perché capirai già come è lavorare il cliente, nonché i requisiti dell'applicazione.

Dopo aver vinto il lavoro a un prezzo equo, utilizzare le migliori pratiche suggerite da Mathieu per garantire qualità e produttività, riducendo al contempo i costi sostenuti.

Altri suggerimenti

Ciò che hai descritto nel tuo post, (non la tua domanda), penso che sia innanzitutto una domanda di vendita, gestione e marketing.

Dici che i tuoi clienti non sono tecnicamente orientati, questo richiederà una strategia di vendita, consulenza e comunicazione coerente, non si tratta di abilità di programmazione.

Inoltre, se la tua azienda accetta costantemente progetti troppo complessi o costosi per il tuo team e fornisci prodotti di bassa qualità, prima o poi rimarrai bloccato in un buco. Attirerai i clienti che non desideri e quelli esistenti saranno disattivati ??dalla tua "incompetenza" e prima o poi troverai un'altra compagnia sulla quale proveranno a giocare allo stesso gioco a prezzi. Quei clienti non valgono nulla secondo me.

Ti chiedi 'come vinci un lavoro a buon prezzo'? Le persone sono animali sociali, parlano tra loro. Se c'è una percezione del mercato che sei un'azienda inaffidabile, prima o poi lo sapranno persone e futuri clienti. Ai clienti non importa se hai offerto loro un prodotto a un prezzo davvero basso, con un programma troppo stretto - Non è proprio il loro errore, sei tu ad accettarlo. Quindi, ancora una volta, penso che tutto il calvario sia una cattiva pratica commerciale.

Ho scoperto che devi davvero definire specifiche rigorose su lavori con budget limitati, definire ciò che vuoi e puoi consegnare, dire loro il prezzo, impedire al tuo capo di offrire troppi prezzi a lungo termine per lo sconto dei clienti perché hanno troppa paura perdere il cliente. Comunicare presto e spesso quando le cose iniziano a sfuggire di mano. Scrivi offerte precise per funzionalità aggiuntive. Annotali con precisione, non fare affidamento sulle conversazioni telefoniche (tu: "sono 4 ore di lavoro aggiuntive", cliente: "ok", ... 4 mesi dopo, cliente "che cosa è stato di nuovo ??? perché dovrei pagare per questo ").

Ora ovviamente, un modo per mantenere bassi i prezzi è non assumendo deficienti completi che inizialmente potrebbero essere più economici dei programmatori meglio qualificati. Questo è un approccio miope e fallirà miseramente.

È la relazione con il tuo cliente che ti farà guadagnare ulteriori affari. Uno sviluppatore in realtà si è fatto avanti e ha interrotto un progetto perché il suo consulente di vendita ci ha sostanzialmente mentito riguardo a un set di soluzioni. Lo sviluppatore ha quindi offerto una soluzione semplice e semplice con lo stesso budget e ha consegnato in tempo.

Questo ragazzo e il suo team si sono consultati presso la mia azienda ormai da oltre 6 anni. La sua integrità e la sua seria e laboriosa natura sono state un immenso vantaggio e ha trovato persone di qualità che lavorano per lui man mano che la sua reputazione è cresciuta. La sua onestà vale più di qualsiasi risparmio che potrei ottenere spedendo i beni intellettuali della mia azienda all'estero.

"tanta concorrenza da parte dei team di programmi offshore / camera da letto" - sembra che voi ragazzi abbiate bisogno di dedicare del tempo al networking. Alla fine della giornata, alla gente piace fare affari con le persone, non con le imprese. Se sei ben noto e apprezzato nelle comunità dei tuoi clienti, sarai il primo classificato e otterrai un prezzo migliore dalla fiducia che hai creato. E i referral ti daranno un vantaggio: chiedili.

" la nostra azienda non ha i soldi per rifiutare il lavoro " - Molte aziende hanno questo come punto di partenza, ma alla fine devi superare questo approccio. Il tempo che dedichi a questi tipi di lavori ostacola il successo. Devi prendere decisioni sul tipo di lavoro che vuoi fare (e su chi saranno i clienti) e, cosa altrettanto importante, su ciò che non fai.

Come consulente, sono passato personalmente a un modello a tariffa oraria solo per questo motivo. Sono stato bruciato da troppi contratti impazziti e sento il tuo dolore.

Alla fine, le persone che vanno sempre con la proposta più economica saranno un problema per la tua azienda. Anche se non puoi essere così esigente, in modo da non avere mai progetti, sicuramente vuoi evitare i contratti la cui gestione di supporto è così agnostica sul processo di sviluppo del software reale che guardano solo il prezzo iniziale per qualcosa . Di solito, è la roba non presente nel contratto o nelle specifiche che modifica i margini di profitto e le scadenze.

È spesso nel tuo interesse essere pignoli piuttosto che abbassare i prezzi per ricevere un'ondata di ciò che finisce per essere comunque dei clienti problematici. Nel tuo caso, mentre c'è sempre una contesa tra una RFP che non è così concisa come una specifica dei requisiti tecnici, le citazioni iniziali dovrebbero essere intese come una stima generale basata sul livello di chiarezza nella RFP.

E sono assolutamente d'accordo con kitsune, che se la tua azienda accetta costantemente contratti che non si adattano alla competenza di sviluppo o alla larghezza di banda della tua azienda, tutto ciò si tradurrà in costi generali e cattiva reputazione.

Questo potrebbe essere visto come una guida rapida al problema sopra.

Documento di proposta

  1. Inizia con un documento di proposta che spieghi al meglio la tua comprensione delle esigenze dei clienti. Questo può essere fatto in 1-2 pagine di scrittura come minimo. Può iniziare ad andare verso i requisiti, ma dovrebbe essere più casuale di così.

Documento di budget

  1. Ora vai su Excel ed elenca tutte le attività nel progetto che pensi di dover fare. Abbassa i tempi in giorni, nessuno più grande di 2 (0,25, 0,5, ecc.).

  2. Aggiungi una colonna per i test e rendila una percentuale del tempo di sviluppo (il 20-30% è normale)

  3. Ora aggiungi una colonna per la gestione (progetto + account) e aggiungi una percentuale di tempo (rispetto alle due colonne precedenti). Il 20-40% è normale. (70-30 split pm / am)

  4. Imposta una tariffa giornaliera per la tua azienda. Puoi diventare più complesso e avere tassi diversi per le diverse funzioni dell'utente, ma come minimo impostare un tasso che significherà che avrai un buon margine qualunque sia il lavoro in corso.

  5. Scopri qual è il valore per i giorni totali registrati finora. Quindi aggiungi un importo di contingenza (per il lavoro a prezzo fisso) qui il 10-20% è normale, ma può cambiare in base all'esperienza con il cliente e alla quantità di cambiamento a cui sei abituato.

  6. A questo punto puoi scartare l'importo totale, che è meglio che abbassare qualsiasi altra parte di questo documento, poiché mostrerà al cliente che non stai facendo magicamente lavori più veloci, piuttosto stai rimuovendo alcuni dei il tuo margine. Pertanto, non dovrebbero aspettarsi che riduciate i tempi del progetto.

** Importante: analizzare il budget e l'attività del cliente durante lo sviluppo di un costo. Non ha senso fornire un costo progettato per una grande impresa al tuo compagno che desidera un'applicazione fatta in modo conveniente. Allo stesso modo, assicurati di addebitare correttamente a un'organizzazione che verrà utilizzata per tariffe freelancer di fascia alta.

Pensa come un analista aziendale. Non solo ti aiuterà a rendere felice il cliente quando vedrà i tuoi costi, ma probabilmente ti darà una visione più ampia della sua attività. Se faranno soldi usando te, allora probabilmente stai vincendo. Se non puoi chiedere direttamente quanti soldi hanno da spendere con te, risolvilo chiedendo quanti clienti hanno, cosa fanno pagare, quanti dipendenti hanno, ecc. Dovresti quindi essere in grado di capire se cosa stai proponendo sarà redditizio per loro. **

  1. Torna al documento della proposta e aggiungi una tabella con sezioni per la progettazione, lo sviluppo, la gestione, ecc ... In determinate circostanze puoi mostrare al cliente il tuo foglio di calcolo dei costi, ma nella maggior parte dei casi è meglio evitare la complessità. È lì come backup, e non hai solo tossito un numero.

Documento cronologico

  1. Prendi l'elenco delle attività di progettazione e sviluppo dal budget e inseriscilo in un nuovo foglio (o Progetto se sei elegante come me). Inserisci le date di inizio e fine di ogni sezione aggiungendo circa il 30-50% in più in cima.

  2. Aggiungi una rappresentazione grafica dei giorni come blocchi in Excel o usa un Modello di Gantt come questo .

  3. Torna al documento della proposta e aggiungi le pietre miliari chiave dal documento di temporizzazione.

Fase della proposta completata

  1. Invia o presenta la tua proposta al tuo potenziale cliente. Spero che siano entusiasti di ciò che hai proposto e felici di procedere alla fase successiva, la raccolta completa dei requisiti. Nei progetti successivi con lo stesso cliente potresti essere in grado di andare direttamente ai requisiti.

Fase dei requisiti

  1. Elenca ogni requisito rispetto a un ID separato, 1,2,4,5 o 1.1,1.2,1.3. Non importa, ma il secondo può aiutare con elenchi di grandi dimensioni.

  2. Esistono alcuni test per i requisiti e puoi provare a seguirli, ma a volte non si applicano (alcuni requisiti potrebbero essere guidati dal design, ad esempio). Alcuni di questi sono: Il requisito è verificabile, è singolare, è chiaro? Proverò a trovare un link a questo da qualche parte.

Questo è il punto di vista del mio sviluppatore:

  • Best practice per il controllo della versione: mantenere pulito il trunk, non eseguire il commit del codice che non viene compilato e eseguire il commit frequentemente
  • Integrazione continua
  • Test delle unità (con copertura del codice)
  • Implementazione automatica su server di prova
  • Imballaggio automatico dell'applicazione
  • Automatizza il più possibile :)

Assumi anche buoni sviluppatori e trattali bene :)

Vendi prezzo fisso, lavoro a portata fissa, non orario. Ciò mitiga il rischio del cliente di un over-run (assorbi tutti i rischi, ma lo stai facendo comunque), e inquadra il progetto in termini di valore del software, non di qualità dello sforzo intrapreso.

Stiamo cercando di costruire un prodotto e riutilizzare l'esperienza esistente. Rispetto al Regno Unito in Ucraina (dove lavoro) gli stipendi sono più bassi, ma comunque 4-5 volte più alti che in India.

Finora, il miglior risultato è quello di ottenere due nuovi clienti, che hanno bisogno di una soluzione simile, quindi possiamo offrire prezzi migliori e siamo più fiduciosi nel nostro preventivo.

A proposito, ho verificato whywaitdigital.com e sembra che abbiamo un prodotto di cui i tuoi clienti potrebbero aver bisogno. Realizziamo portali - cataloghi di prodotti editoriali, B2C, geo-abilitati e utilizziamo ASP.NET MVC anche. Puoi trovare le informazioni di contatto sul nostro sito web, www.socialtalents.com.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top