web-dev-qa-db-fra.com

En quoi un «développeur de logiciels» est-il différent d'un «consultant en logiciels»? Qu'est-ce qui fait un consultant?

J'ai vu beaucoup de gens se prétendre "consultant logiciel". Ces consultants font ce qu'un développeur de logiciels normal fait, écrivent du code, évaluent des tâches, corrigent des bugs et assistent à des réunions, etc. La seule différence étant les finances, les consultants finissent par gagner plus. Alors, en quoi un développeur de logiciels est-il différent d'un "consultant"?

En plus de la question principale, j'aimerais savoir comment un développeur de logiciels peut devenir consultant? Existe-t-il des directives spécifiques pour un consultant? Doivent-ils accumuler des certifications et rédiger des documents de recherche? Veuillez ne pas confondre le consultant logiciel avec un consultant en gestion. Les consultants en logiciel que j'ai vus ne sont pas des gestionnaires.

126
Kumar

Voici une liste de softies

Développeur de logiciels - est un employé à temps plein et fait le travail de mise en œuvre des exigences de l'application. Les développeurs sautent sur différents projets en fonction des directives de leurs employeurs.

Consultant logiciel - n'est pas un employé et est amené à fournir des conseils (consultance) sur la façon dont l'application doit être mise en œuvre en utilisant les approches actuelles de l'industrie. Le consultant fournit souvent des conseils techniques sur la façon de configurer une grande application (SAP, Oracle, etc.). D'après mon expérience, les consultants ne sont généralement pas des programmeurs.

L'entrepreneur logiciel - n'est pas un employé et est engagé pour fournir des compétences et une expertise dans les approches actuelles de l'industrie. Généralement, l'entrepreneur travaille sur un seul projet et le mène à terme, en programmant au besoin. Ils ne sont pas sous la direction de leur employeur, bien qu'ils puissent aider dans d'autres domaines à titre de courtoisie professionnelle.

Comment devient-on consultant logiciel?

Habituellement à la suite de travailler pour un cabinet de conseil en logiciels qui vous embauche quotidiennement. Imaginez que vous travaillez pour Oracle et qu'une grande entreprise a besoin d'aide pour configurer un middleware. Vous êtes un employé permanent travaillant à contrat pour un tiers. Ce n'est pas toujours le cas (voir la section suivante), mais c'est le chemin habituel.

Comment devenir un entrepreneur logiciel?

Habituellement à la suite de la création de votre propre entreprise et de faire savoir aux agents de recrutement que vous êtes disponible pour travailler (programmation, conseil, les deux ...). L'agence vous loue ensuite au quotidien, sous réserve de certaines conditions contractuelles. Vous pouvez aller directement, mais c'est beaucoup plus difficile (le rôle de l'agent est d'atterrir le client, votre rôle est de fournir l'expertise).

110
Gary Rowe

Un "consultant logiciel" diffère d'un "développeur de logiciels" en fonction des conditions d'emploi. Le "consultant logiciel" est embauché en tant que contractant pour une période de temps spécifiée et pour une tâche/un rôle/un projet très spécifique, tandis que le "développeur logiciel" (qui n'est pas un contractant ou un consultant) est un employé à plein temps rémunéré. , et peut avoir plusieurs rôles/projets au sein de l'entreprise.

"Consultant logiciel" pourrait faire référence à un développeur/programmeur employé à contrat plutôt qu'à un développeur/programmeur employé à plein temps. Cela pourrait également se référer à quelqu'un qui donne des conseils et une gestion/conception/architecture de projet de haut niveau, comme d'autres l'ont mentionné, bien que, selon mon expérience, le titre de "consultant logiciel" finisse généralement par être quelqu'un qui travaille 60 à 90% du temps en tant que développeur/programmeur et est employé sous contrat plutôt qu'à temps plein.

Tout développeur peut être consultant en travaillant comme entrepreneur. Pour ce faire, il s'agit généralement soit d'être un entrepreneur indépendant, soit de travailler avec une société de conseil.

Les consultants sont censés améliorer l'entreprise pas seulement développer des logiciels.

Je suis développeur depuis plus de 30 ans. Je n'en connais que suffisamment pour être consultant depuis une dizaine d'années.

35
Steven A. Lowe

Je ne vois pas de différence entre "consultant" et "entrepreneur" à part le fait que le consultant me semble en quelque sorte chic et potentiellement plus cher. :)

Dans les deux cas, j'ai appelé des consultants/sous-traitants des "développeurs de logiciels" lorsqu'ils travaillaient dans un rôle de développement, mais je m'attends également à ce que lorsque j'engage quelqu'un en tant que "consultant", ils vont faire un certain niveau de mentorat pratique. de l'équipe permanente des employés. Je m'attends à ce que lorsque j'engage un consultant, j'engage quelqu'un qui a déjà de l'expérience dans la technologie pour laquelle je le recrute, et qu'il est fort possible que la plupart de mon équipe permanente soit déjà au courant des détails particuliers de cette technologie. Je m'attends donc à ce que mon équipe pompe le consultant pour obtenir des informations et que le consultant parvienne à la fois à fournir des réponses intelligentes et rapides à l'équipe et à faire travailler une certaine quantité de mains à une vitesse plus rapide/de meilleure qualité que mon prochain. employés réguliers à jour.

Dans d'autres cas, j'ai embauché des consultants pour "consulter" en permanence - ce qui signifie qu'ils ne font aucun travail pratique, ils enseignent à l'équipe à être une meilleure équipe ou à être meilleur avec un outil ou une technologie donnés.

Comme le disent les autres postes, je ne m'attends pas à ce que les consultants soient permanents. Je m'attends à ce que les employés réguliers soient permanents ou, du moins, aient une affiliation avec l'entreprise qui dure au-delà d'un seul projet ou d'une courte période.

Si vous souhaitez devenir consultant et facturer en conséquence, je dirais que vous avez besoin de reprendre la construction. Lorsque j'examine les CV des consultants, je recherche une expérience très solide sur la découpe d'outils et de technologies artistiques. Cela varie d'un domaine à l'autre, mais je suis à la recherche de quelqu'un qui a implémenté des trucs complexes au bord saignant, afin qu'ils aient déjà atteint la courbe d'apprentissage sur les technologies que j'essaie de mettre en œuvre. La plupart des consultants que je connais sont des bricoleurs accros. Ils travaillent dur pendant la journée, puis passent leurs soirées à courir encore plus loin dans leurs domaines de spécialité, car ils savent qu'ils ont besoin de compétences pratiques pour vendre à leur prochain emploi.

22
bethlakshmi

C'est dommage que la question soit formulée telle quelle. Je pense qu'une meilleure question pourrait être "En quoi un" entrepreneur logiciel "est-il différent d'un" consultant logiciel "?" Ce sont ces termes qui soulèvent vraiment la question, du moins ici aux États-Unis.

Le terme "développeur de logiciels" peut s'appliquer à tout type d'emploi, le développeur étant le type de rôle ou de ressource que l'on sert. Le problème des entrepreneurs/consultants tourne autour des problèmes d'emploi, et encore une fois, je parle en référence à la façon dont cela fonctionne ici aux États-Unis. Mais pour vraiment répondre à cette question de manière définitive (et vous verrez, même cela est difficile à faire!), D'abord nous besoin de définir certains termes et d'explorer un peu d'histoire.

Un développeur de logiciels, quelle que soit la façon dont ils sont employés, crée des logiciels et effectue probablement de nombreuses autres tâches liées à la création de logiciels, généralement à l'exception d'un rôle de gestion, même si cela est assez courant sur certains projets, tels que les chefs d'équipe . Les gestionnaires de projets et de programmes logiciels sont rarement impliqués dans les activités de création de logiciels (en dehors des chefs d'équipe). Encore une fois, ce sont rôles.

En ce qui concerne l'emploi et le paiement, il existe plusieurs types (applicables aux États-Unis). Le type d'emploi le plus courant est régulier ou "direct", où le travailleur est sur la liste de paie de l'entreprise qui développe le logiciel. Ils remplissent un W-4 avec l'employeur chaque année et reçoivent un W-2 de cet employeur à la fin de l'année pour leurs impôts.

En dehors de l'emploi direct, il y a des entrepreneurs et (selon la définition) des consultants. Le terme "entrepreneur" est cependant un peu trompeur. Techniquement, un contractant est une entité ou une personne qui signe un contrat avec l'entreprise cliente, en l'occurrence celle qui développe le logiciel. Mais la réalité est que presque tous les entrepreneurs aux États-Unis travaillent par le biais d'une entreprise contractante (également appelée "ateliers de carrosserie" et encore moins de conditions complémentaires); ils ne "contractent" pas en soi directement avec le client. Ces soi-disant entrepreneurs remplissent en fait un W-4 avec la société contractante - et non le client - chaque année et reçoivent un W-2 de cette société contractuelle à la fin de l'année pour leurs impôts. Ils sont imposés exactement de la même manière que leurs frères et sœurs directement employés. En ce qui concerne l'IRS, tous les travailleurs W-2 sont des employés directs.

Le fait est que c'est la "société contractante" qui signe réellement un contrat avec la société cliente, et non les soi-disant contractants (les "employés contractuels"). Les employés contractuels sont effectivement employés par la société contractante, et la société contractante est la partie au contrat avec le client. Ainsi, les employés contractuels et directs travaillant sur un projet de logiciel sont essentiellement les mêmes en termes de fiscalité, et travaillent généralement dans des cellules adjacentes sans statut particulier particulier, la seule différence majeure étant que les entrepreneurs sont limités à un certain temps sur lequel ils peuvent continuer à travailler. le projet pour ce client. En effet, l'entreprise contractante pour laquelle ils travaillent n'est pas censée les y maintenir plus longtemps que ce délai ou notre IRS peut les reclasser en tant qu'employés directs, et les parties (client et entreprise contractante) au contrat deviendraient responsables de la différence de les taxes.

D'après ma propre expérience, les contractants sont souvent prolongés par la ruse des RH, reclassifiant un employé contractuel de, par exemple, "contractant" à "temporaire" ou similaire. Les clients qui voulaient me garder l'ont fait à l'occasion. Les entreprises clientes doivent cependant être prudentes; l'IRS peut les auditer pour déterminer la véritable relation de ces entrepreneurs. Si l'IRS constate que le client les a traités comme des employés directs, en les gardant sur place indéfiniment par exemple, le client devient responsable de tous les avantages que ces employés (désormais réguliers) ne recevaient pas en tant qu'employés contractuels. Et l'entreprise contractante peut également être tenue responsable. Je ne connais pas toutes les ramifications, mais cela peut devenir compliqué.

Oh oui. Qu'est-ce qu'un "consultant"? Ce terme est une sorte de "squishy" - il y a eu de nombreuses guerres menées sur ce territoire sacré. Il y a 40 ans peut-être, "consultant" était plus ou moins synonyme d '"entrepreneur indépendant", c'est-à-dire un travailleur qui passait directement un contrat avec un client. Autrement dit, le travailleur a signé un contrat avec le client (peut-être celui qui développe le logiciel, comme ci-dessus). Ce travailleur ne remplit PAS un W-4 avec le client et ne reçoit pas de W-2 du client à la fin de l'année. Au lieu de cela, un entrepreneur direct (ce qui était souvent appelé à l'époque "consultant") reçoit un 1099 du client. L'entrepreneur direct avait généralement sa propre société qui payait ses impôts aux taux des sociétés et devait obéir aux règles de l'IRS en matière de fiscalité des entreprises (et bien sûr aussi profiter des avantages d'être une société!).

Parallèlement à cet arrangement fiscal très différent, le terme "consultant" avait une certaine aura à ce sujet. Les consultants étaient généralement plus expérimentés (au moins 10 ans de travail dans le domaine) et avaient généralement un domaine d'expertise qui aurait pu être difficile à localiser, ce qui les rendait très souhaitables pour les clients, et les clients étaient prêts à payer 500 $ ou 1000 $ par jour (un montant très généreux alors) pour leurs services d'experts. Les consultants couraient avec une foule élite de personnes assez bien connectées, et il était généralement difficile de pénétrer ces cliques. L'adhésion était nécessaire pour être un consultant efficace. Il y avait une organisation, récemment disparue mais en train de renaître maintenant, appelée ICCA qui était en quelque sorte un club de vieux garçons pour les consultants en informatique. N'importe qui pouvait se joindre, et je l'ai fait à un moment donné; être accepté et trouver du travail était une autre histoire.

Il y avait également une industrie de niche, en particulier dans des endroits comme le quartier financier de New York, spécialisée dans les contrats de courtage pour ces consultants. Mais à l'époque, pour avoir du travail dans les logiciels - et surtout dans le secteur financier - il fallait être bien connecté (je le sais car j'avais essayé à l'époque). Aujourd'hui, ces courtiers ont été engloutis ou en faillite par les grandes sociétés de placement. La sous-traitance indépendante a été presque éviscérée (elle existe, mais ce secteur est beaucoup plus petit maintenant, presque inexistant) par une série de lois qui ont lentement et certainement détruit la sous-traitance indépendante comme celle-là.

Aujourd'hui, le terme "consultant" est rarement utilisé dans le domaine de l'emploi en développement logiciel. Du moins, je l'ai rarement entendu. Parfois, un développeur de logiciels sous contrat est considéré comme un consultant, mais il n'y a guère de distinction autre que, peut-être, certains tentent de flatter ou de féliciter un entrepreneur particulier pour son expertise dans un retour à ce tiem précédent lorsque le terme signifiait quelque chose de spécial .

Je dois dire qu'il existe encore des chefs de projet logiciel appelés "consultants en gestion de logiciels", mais presque tous sont également des employés directs d'une entreprise sous-traitante qui remplit le même objectif pour ces employés sous contrat de gestion que les entreprises qui fournissent les W-4 à ces employés contractuels des développeurs de logiciels. Et, comme vous pouvez l'imaginer, ce sont parfois les mêmes entreprises sous contrat. Certains clients souhaitent traiter avec une seule source de travailleurs pour les développeurs et les gestionnaires travaillant sur un projet.

Aux États-Unis, la véritable consultance indépendante en matière de logiciels est pour la plupart morte en raison des modifications apportées à la législation fédérale et à l'évolution du paysage des entreprises américaines. Au fur et à mesure que les entreprises (clients consultants potentiels) s'agrandissent, leurs départements RH deviennent plus brutalement centralisés, d'une efficacité arrogante et dans une boîte noire technologique. Il est presque impossible de nos jours de contacter un responsable du recrutement pour discuter d'une opportunité d'emploi de toute nature, directe ou contractuelle. Cela tient en partie au secret d'entreprise et à la protection des employés, mais cela tient en grande partie à la tendance à veiller à ce que le plus grand nombre possible de travailleurs soient des employés directs, ou du moins travaillent par l'intermédiaire d'une entreprise contractante.

L'alternative à ce scénario, similaire à la période antérieure d'il y a environ 40 ans, était tout à fait différente. À l'époque, il était plus difficile pour les employeurs de contrôler le travail de leurs employés contractuels, en particulier du type consultant. Le contrôle des travailleurs est devenu de plus en plus le principal problème de l'emploi aux États-Unis pour assurer une productivité croissante, ce qui, à son tour, est important pour la concurrence avec des pays comme l'Inde et le Vietnam, dont les travailleurs sont encore plus habitués à des exigences de productivité toujours croissantes.

La clé pour comprendre tout cela est de comprendre que l'entrepreneur indépendant ne peut pas savoir exactement comment ou quand faire son travail. Ils doivent généralement fournir leurs propres outils. Ils doivent se conformer à environ 20 de ces types de contraintes pour que l'IRS les reconnaisse comme des entrepreneurs indépendants légitimes. Sinon, les problèmes juridiques que j'ai mentionnés ci-dessus entrent en jeu, ainsi que les poursuites potentielles entre les employés contractuels et leurs sociétés contractantes pour des prestations en retour qui leur seraient alors légalement dues.

Désolé pour l'explication longue, mais c'est vraiment aussi complexe. Je suis un développeur de logiciels qui a travaillé directement pour des entreprises et par le biais de sociétés sous contrat. J'ai envisagé à plusieurs reprises de devenir "indé", mais c'est devenu une voie très dangereuse (et intimidante!) À suivre au cours des dernières décennies. Et les sociétés, qui exercent leur influence au sein du gouvernement et en tirent parti, continuent de resserrer cet arrangement. Le consultant américain en logiciels est mort; tous les survivants restants souffrent leur dernier souffle.

17
Phelonius

Comment devenir consultant logiciel:

  1. Rendez-vous dans une photocopieuse et imprimez une centaine de cartes de visite avec votre nom, votre numéro de téléphone, votre adresse mail et le titre "Software Consultant".
  2. Mission accomplie: vous êtes désormais consultant logiciel.
12
Ingo

Ma compréhension de "consultant" est quelqu'un qui fait à la fois l'analyse commerciale (collecte des exigences) et au moins une certaine conception/développement de logiciels, bien qu'ils ne descendent pas aussi loin dans les tranchées qu'à plein temps développeur de logiciels.

IOW, les consultants portent plusieurs chapeaux, tandis que les développeurs portent un seul chapeau.

4
John Bode

Mon expérience du rôle de consultant diffère jusqu'à présent du thème commun.

Une autre utilisation du terme, peut-être seulement courante au Royaume-Uni, est un ingénieur senior expérimenté qui a une capacité éprouvée à comprendre un système, à communiquer à ce sujet et à discuter des compromis des implémentations alternatives.

Les meilleurs d'entre eux peuvent fournir ce niveau élevé d'entrée sur des systèmes qu'ils n'ont pas rencontrés auparavant.

Des consultants externes, recrutés dans un but précis, présentent parfois certaines de ces compétences - mais sont généralement expérimentés (si tel est le cas) d'une manière beaucoup plus étroite et plus ciblée.

1
itj

Je suppose que vous devez être un développeur de logiciels génial ou au moins un bon, pour donner des conseils à d'autres personnes sur la façon de développer des logiciels.

En termes simples, un consultant S/W est un développeur S/W avec une expérience éprouvée).

Il suffit de regarder en arrière dans le temps dans votre propre vie - lorsque vous avez commencé à conduire ou atteint l'âge pour obtenir un permis de conduire, avez-vous posé des questions sur la conduite et la demande de permis à une personne plus jeune que vous ou à une personne plus âgée qui avait un permis et qui savait conduire?

En outre, les consultants font souvent le travail pour vous - la partie en développement, en plus d'autres éléments liés à la création d'un produit logiciel, du début à la fin. Au moins les grandes organisations le font, elles gèrent tous les aspects de la création de produits pour vous. Il vous suffit de leur dire ce que vous voulez, comment vous voulez le faire, quels sont les éléments critiques, les délais, la documentation, etc.

TCS me vient à l'esprit. Services de conseil Tata. Ne vous y trompez pas, ils sont l'une des sociétés de services informatiques les plus brillantes de l'Inde, une branche du groupe d'industries Tata, sous Ratan Tata.

Travaux notables du TCS - numérisation du système de demande de passeport, UID et autres travaux importants du gouvernement.

0
bad_keypoints