La technologie de l'information est-elle vraiment de l'ingénierie? [fermé]


13

Pendant mon voyage, j'ai rencontré un mathématicien qui était assis près de moi. Lors d'une discussion, il a déclaré: "... il n'y a rien de tel que l'ingénierie informatique ou plutôt la programmation ". Une véritable ingénierie est ce qu'est l'architecture, ce qu'est l'électricité et la mécanique.

Cela m'a fait réfléchir et j'étais perplexe. Un pour cent de mon cerveau était d'accord aussi parce que dans l'armée indienne, il n'y a pas de sujet comme le génie informatique dans le corps du génie. Ils ne considèrent pas la programmation comme de l'ingénierie. C'est ce que j'ai entendu il y a quelques années, je ne sais pas ce que pense l'armée indienne maintenant.

Quelle est votre opinion?


5
Mon point de vue: Il est juste jaloux que vous soyez payé plus: P
Simon

4
À mon avis, l'architecture n'est pas de l'ingénierie
hiena

@hiena - en effet, juridiquement parlant, ce sont des professions différentes, et la loi (selon votre juridiction) légifère sur l'architecture et l'ingénierie.
Scott Whitlock

Réponses:


17

Si nous suivons cette description , nous sommes 75% ingénieurs, ou 75% d'entre nous sont ingénieurs :)

Contrairement à d'autres disciplines de l'ingénierie:

  • les développeurs de logiciels n'ont pas besoin d'éducation formelle et / ou de licences
  • est une discipline relativement jeune et n'a pas de meilleures pratiques éprouvées (comme la construction, par exemple)

Je pense que cela va changer à l'avenir. Un jour, nous serons 100% ingénieurs.


Ingénieur

source: http://en.wikipedia.org/wiki/Engineer

Un ingénieur est un professionnel de l'ingénierie, soucieux d'appliquer les connaissances scientifiques, les mathématiques et l'ingéniosité pour développer des solutions aux problèmes techniques.

Le mot ingénieur est dérivé de la racine latine ingenium, qui signifie «intelligence».

Occupation

  • Ingénieur noms
  • Type Profession
  • Secteurs d'activité Sciences appliquées

La description

  • Compétences Mathématiques, connaissances scientifiques, compétences en gestion
  • Formation requise Formation en ingénierie
  • Domaines d'emploi Recherche et développement, industrie, entreprise
  • Emplois connexes Scientifique, architecte, chef de projet

15

L'ingénierie logicielle est de l'ingénierie, mais l'informatique ou la programmation ne le sont pas. C'est un peu comme le génie mécanique est l'ingénierie et la physique ou le soudage ne le sont pas.

Le génie logiciel est un domaine incroyablement jeune (par rapport aux autres branches du génie), qu'il est en fait difficile d'enseigner aux gens, car il n'y a pas beaucoup d'expérience pour enseigner. Ce n'est qu'au cours des 20 à 25 dernières années que les logiciels sont devenus si gros et complexes que la simple programmation ne fera pas l'affaire.

En raison de cette lacune des connaissances établies, le génie logiciel réel est rarement enseigné. La seule façon de devenir un ingénieur logiciel décent est de suivre la voie d'un artisan: être encadré sur le terrain. Ainsi, alors que le génie logiciel est une discipline existante, très peu sont réellement dans ce domaine. La plupart des gens font du bricolage ou de la suringénierie logicielle.


Vous voulez dire que le génie logiciel n'inclut pas la programmation?
RPK

1
@RPK: difficile à dire, car je suis plus un bricoleur de logiciels :) Mais fondamentalement, je pense que la programmation est au génie logiciel ce que le bâtiment est au génie civil. Le premier se termine dans le chaos sans le second et le second n'a aucun sens sans le premier, mais les deux sont relativement distincts.
back2dos

@ back2dos: J'aurais tendance à être d'accord. Cependant, je pense que les ingénieurs logiciels doivent presque savoir coder, tandis que les ingénieurs civils ne doivent pas nécessairement savoir comment souder.
Michael K

1
Dites à un ingénieur en matériaux ou en métallurgie que le soudage n'est pas de l'ingénierie et il vous fermera la bouche :)
Vitor Py

@Vitor Braga: Quel est votre point? Je m'attends vraiment à ce qu'un bon ingénieur comprenne la différence entre l'ingénierie et un métier. Et je me demande aussi combien d'ingénieurs métallurgistes soudent réellement dans leur travail.
back2dos

14

Les ingénieurs logiciels d'une entreprise d' ingénierie sont des ingénieurs. Je parle d'endroits comme les entrepreneurs de la défense, les fabricants d'équipement, etc. Nous suivons des processus rigoureux pour: créer les exigences et la documentation de conception, faire une analyse détaillée pour que la conception réponde aux exigences avant que tout code ne soit écrit, effectuer des revues de code et des tests unitaires, planifier et effectuer des tests d'intégration et de qualification. Les documents sont examinés par des conseils de pairs et d'intervenants, les tests sont observés par l'organisation AQ et les résultats sont présentés au client pour acceptation formelle. Le génie logiciel tel qu'il est pratiqué dans ces endroits est un processus scientifique rigoureux.


1
100% d'accord. Je travaille dans une entreprise d'infrastructure critique. Nous concevons ici.
Paul Nathan

8

En tant que véritable ingénieur, je dirais, en général, non. Cependant, je pense que les programmeurs et les ingénieurs font tous deux une conception importante . Si la question était: "Les programmeurs sont-ils des concepteurs?" Je dirais certainement oui.

L'ingénierie professionnelle, cependant, a à voir avec la responsabilité légale de vos erreurs, ou au moins le risque légal d'exercer votre profession si vous faites une erreur. Peu importe à quel point vous êtes mauvais programmeur, vous pouvez sortir demain et mettre légalement "programmeur" sur votre CV. Avec un P.Eng. si vous perdez votre licence, vous ne pouvez pas vous appeler un P.Eng.

L'ingénierie professionnelle est créée pour être une profession autoréglementée, où la profession et le gouvernement conviennent de certaines tâches qui ne peuvent être effectuées que par des personnes autorisées. Ils le font en raison d'une compréhension mutuelle que le travail pose un risque important pour la sécurité du public.

Il existe certains dispositifs pilotés par logiciel qui doivent être estampillés par un ingénieur avant de pouvoir être vendus (je parle ici des dispositifs de sécurité industrielle). La personne qui examine et approuve ces conceptions est un ingénieur.


Pensez-vous que le développement logiciel n'est pas réglementé de la même manière que les domaines de l'ingénierie parce que le risque est différent ou la jeunesse relative de la programmation en tant que profession? Dans des applications telles que les systèmes de contrôle pour les dispositifs médicaux, les systèmes militaires et les systèmes de simulation, il semble qu'il puisse y avoir des dommages réels causés par des erreurs de programmation. Ou est-ce qu'il n'y a pas de distinction facile entre un développeur de système de guidage de missile et un développeur de système de compte d'un point de vue gouvernement / industrie?
aubreyrhodes

@aubreyrhodes - J'imagine que dans ce cas, il existe un organisme de réglementation différent pour les dispositifs médicaux, de sorte qu'ils peuvent tomber en dehors du domaine de l'ingénierie. Par exemple, une ligne très stricte est tracée entre l'ingénierie et l'architecture. Bien que la programmation soit impliquée dans de nombreuses tâches, cela ne signifie pas que vous n'avez pas non plus besoin d'ingénierie. L'ingénierie ne conçoit pas; L'ingénierie dit "Je certifie que cette conception répond aux directives réglementaires, utilise les connaissances les plus récentes de l'industrie, ne pose pas de risque excessif pour le public, et je vais miser ma carrière là-dessus."
Scott Whitlock

2

Je dirais que la plupart des programmeurs le sont software mechanics. Je veux dire, la plupart des programmeurs de l'industrie du logiciel ne font que l'entretien et la correction de bogues.


Je pense que vous confondez la mécanique avec la maintenance.
Tour

@Rook: Mais que fait surtout un mécanicien automobile?
Michael K

@Michael - Je parlais plus de mech. engs. qui font du développement, par rapport à la maintenance.
Tour

3
@mhitza Votre implication est que les mécaniciens de logiciels ne construisent pas de composants logiciels originaux, mais maintiennent uniquement des systèmes hérités. Je doute que la plupart des programmeurs ne fassent que ce genre de travail. Je dirais que la plupart des programmeurs construisent régulièrement de nouveaux composants et systèmes.
Morgan Herlocker

@Prof Plum: Mhitza a raison. La part du lion du travail logiciel réside dans la maintenance car la plupart des systèmes performants ont une durée de vie assez longue. Je connais des gens qui travaillent dans ce domaine depuis trente ans et qui n'ont jamais rien développé d'important. Ils fixent et modifient simplement les bases de code existantes.
bit-twiddler

2

Il y a quelques similitudes en termes d'application des compétences, mais je suis fermement dans le camp du "non". La distinction n'est pas difficile à faire - les professions d'ingénierie ont des conseils d'administration qui peuvent s'appeler ingénieurs en fonction de leurs qualifications et de leur expérience. Le "génie logiciel" n'a rien de tel (de nouveaux efforts existent, mais je n'ai entendu aucune répercussion pour ne pas en faire partie). N'importe qui peut s'appeler un ingénieur logiciel, et donc le titre ne dit rien à un employeur sur vos capacités. Il en va de même pour quelqu'un se décrivant comme un "ingénieur audio" - je ne veux pas commenter l'ingénieur "vol" ou "locomotive" parce que je ne suis pas sûr des planches pour ceux-ci.

Personnellement, je suis un informaticien travaillant dans un environnement universitaire - je fais de la recherche, je ne fais pas que construire. J'ai aussi passé quelques années dans l'industrie, et je parle de mon travail là-bas sous le nom de "développement logiciel". Je n'ai pas besoin de faire semblant d'être quelque chose que je ne suis pas.

Contexte: Je suis en Afrique du Sud, où le terme ingénieur logiciel n'a heureusement pas fait son chemin. Si les conseils d'ingénierie dans d'autres parties du monde ont disparu, la distinction n'est peut-être pas pertinente ici. Si c'est le cas, c'est dommage - je préfère vivre dans un monde avec une carte de génie logiciel professionnelle plutôt que sans corps pour aucune profession.


Concur! Moi aussi, je travaille en tant qu'informaticien dans un environnement académique, mais j'ai passé plus de vingt ans à travailler dans la recherche et le développement de logiciels industriels avant de rejoindre mon organisation actuelle. Je déteste absolument être appelé programmeur. Un programmeur est un artisan tout comme un machiniste est un artisan. La seule différence est que les machinistes sont assez intelligents pour être payés pour les heures supplémentaires.
bit-twiddler

Un ingénieur non agréé fait toujours de l'ingénierie, tout comme un médecin non autorisé exerce toujours la médecine.
DougM

1

Cela dépend du pays, de sa définition, de son système académique, etc. Certains, par exemple, ne considèrent pas l'architecture comme de l'ingénierie - contrairement au génie civil, elle est davantage perçue comme un mélange d'ingénierie et d'art.

Tout dépend de la façon dont vous le voyez.

Mais pourquoi est-ce important? Après tout, qu'est-ce qu'il y a dans un nom?


3
Malheureusement, beaucoup. Un nom comme identifiant ne veut pas dire grand-chose, mais si je dis «geek» à mon père, il pense «grossier», tandis que si je dis si à mes amis, ils pensent «génie informatique». Un nom évoque une image dans l'esprit de l'auditeur et vous voulez que cette image soit précise.
Michael K

@Michael - Uhmm, ce n'était pas exactement mon point.
Tour

1

La prochaine fois que quelqu'un essaie de vous appâter sur le sujet, demandez-lui les emplois suivants:

  • Ingénieur de locomotive
  • Mécanicien de bord
  • Ingénieur du son

Aucun de ces postes n'a beaucoup à voir avec le génie électrique / mécanique / civil.


1
Mais en réalité, ces personnes ne sont pas des ingénieurs professionnels (PE) et ne sont donc pas vraiment des ingénieurs.
Vitor Py

@Vitor Exactement le point, car seuls certains programmeurs sont de vrais ingénieurs (certifiés).
Brian Knoblauch

1

Personnellement, je pense que nous sommes des ingénieurs, je veux dire .. Je suis peut-être juste un programmeur mais je suis toujours en train de créer et d'ingénierie de logiciels car je modifie le code pour l'adapter, etc.

Quoi qu'il en soit pour moi, c'est juste un nom, j'ai été appelé ingénieur à mon travail et j'ai été appelé juste un codeur, mais de toute façon c'est essentiellement la même chose.


1

Le génie logiciel est l' ingénierie.

Cependant, la plupart des gens qui se disent ingénieurs logiciels ne sont pas des ingénieurs. Beaucoup de ceux qui ne le sont pas sont des programmeurs et des codeurs qui ne suivent pas nécessairement un processus d'ingénierie. Rien de mal à cela, car a) le codage est fondamental pour le génie logiciel et 2) est une science à part entière. Mais avoir un processus d'ingénierie est fondamental pour être et travailler en tant qu'ingénieur. C'est un groupe.

L'autre groupe, malheureusement assez important, ne sont pas des programmeurs / codeurs. Ce ne sont que des hacks, des singes codés qui jettent de la merde sur leurs moniteurs et vendent tous les bâtons (cités de quelque part, je ne me souviens pas où.) Un collectif d'idiots à l'esprit ruche.

L'influence du groupe postérieur est néfaste, toxique et hilarante (dans une sorte d'humour noir), c'est pourquoi les ingénieurs d'autres disciplines se moquent (à tort) de la notion de génie logiciel, ou pensent que le génie logiciel et l'informatique sont tout sauf du codage. (et par codage, codage spaghetti.)

En résumé: il existe une perception négative du génie logiciel parmi de nombreuses autres disciplines établies plus anciennes. C'est une fausse hypothèse.

Mais cette fausse hypothèse vient de la vraie observation que beaucoup de gens qui se disent ingénieurs en logiciel ne sont rien de moins que de tristes caricatures de singes lobotomisés frappant aux claviers dans l'espoir que, par hasard, ils finiront par taper TAOCP de Knuth.

ps ... Je suppose que le mathématicien de votre histoire est juste blessé. Il avait cette merde au fond de sa poitrine car Dieu sait combien de temps, et vous étiez simplement le premier exutoire à laisser ça sortir à l'air libre.


-1

Le développement logiciel étant relativement jeune et évoluant très rapidement, les frontières entre technicien logiciel , ingénieur et scientifique ne sont pas bien déterminées / très floues.


1
Le développement logiciel n'est pas informatique. L'informatique est une discipline qui se concentre sur la configuration et le maintien de la propriété intellectuelle (PI) existante. Le développement de logiciels est une discipline qui se concentre sur la création de nouvelles adresses IP en réponse à un besoin. L'acronyme IT n'est entré dans notre lexique que lorsque la convergence des systèmes informatiques et de communication a créé le besoin d'un parapluie sous lequel regrouper plusieurs types de personnel opérationnel formé techniquement. Si l'on travaille en infrastructure, on travaille en informatique. Si l'on travaille dans le développement de logiciels effectuant un travail orienté projet, on n'est pas en informatique.
bit-twiddler

Corrigé, mon erreur.
Gipsy King
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.