Devenir développeur de logiciels est un plan de carrière lucratif. Ce sont des personnes avec des compétences recherchées et précieuses. Mais que font-ils exactement ?? Puisque vous ne pourrez probablement pas les battre sur leur propre terrain, vous feriez mieux de les rejoindre. Êtes-vous suffisamment ancré techniquement et comprenez-vous suffisamment le client pour pouvoir fabriquer un bon produit ?? Avec un peu de brainstorming - et bien sûr en lisant la suite de cet article - vous réussirez certainement!
Pas
Partie 1 sur 3: Apprendre les ficelles du métier

1. Déterminez quel type de développement logiciel vous intéresse. Il existe deux camps dans ce domaine : Développement d`applications et Développement de système. Le développement d`applications se concentre sur la création de programmes qui répondent à un besoin particulier des clients. Cela va des applications pour téléphones mobiles et des jeux vidéo aux logiciels de comptabilité d`entreprise. Le développement de systèmes se concentre sur la création et la maintenance de systèmes d`exploitation à l`aide du développement du cycle de vie. Le développement du système est également souvent lié aux processus réseau et à la sécurité des données.

2. Apprenez-vous un langage de programmation. Tout le monde peut avoir une idée, mais un développeur est capable de transformer ces idées en quelque chose de concret. Même si vous ne souhaitez travailler que sur les aspects de conception d`un logiciel, vous devez tout de même être quelque peu familiarisé avec le codage et être capable de créer des prototypes simples. Il existe une énorme quantité de langages de programmation que vous pouvez apprendre vous-même. Certaines des langues les plus utiles et importantes sont les suivantes :
C - C est l`une des langues les plus anciennes qui sont encore utilisés aujourd`hui et sont à la racine de la plupart des autres langues de cette liste. C est utilisé pour créer des programmes de bas niveau et est proche du matériel de l`ordinateur.C++ - Ceci est la version orientée objet de C et le langage de programmation le plus populaire au monde. Des programmes tels que Chrome, Firefox, Photoshop et bien d`autres sont tous programmés en C++. C`est aussi un langage très populaire pour créer des jeux vidéo. Les développeurs C++ sont toujours très demandés.Java - Il s`agit d`une évolution de C++ et est largement utilisé en raison de son haut degré de portabilité. Presque tous les systèmes peuvent exécuter une machine virtuelle Java et donc également un logiciel Java. Il est largement utilisé pour les jeux vidéo et les logiciels d`entreprise, et est considéré par beaucoup comme un langage essentiel.C# – C# est un langage de programmation pour l`environnement Windows et fait partie du .NET framework de Microsoft. C`est très similaire à Java et C++, et si vous connaissez Java, vous pouvez facilement passer à C#. Ce langage est surtout destiné aux développeurs de logiciels Windows ou de logiciels Windows Phone.Objective-C - C`est encore un autre cousin de C et conçu spécifiquement pour les systèmes Apple. Il est extrêmement populaire pour créer des applications iPhone et iPad. C`est une excellente langue à apprendre en tant qu`indépendant.Python – C’est une langue très facile à apprendre, l’une des plus faciles. Python peut également être utilisé pour le développement Web.PHP - Il ne s`agit pas de développement logiciel à la base, mais PHP est essentiel si vous voulez faire plus avec le développement Web. Il y a toujours beaucoup de travail pour les programmeurs PHP, mais ce n`est pas aussi lucratif que le développement de logiciels.3. Des ressources qui peuvent vous aider à apprendre une langue. La plupart des librairies et bibliothèques ont des sections entières consacrées aux langages de programmation, et bien sûr, vous pouvez également trouver du matériel via Amazon et d`autres détaillants en ligne. Un livre bien écrit sur la programmation sera probablement la meilleure ressource que vous puissiez avoir et peut être utilisé comme référence rapide lorsque vous travaillez sur des projets.
Outre les livres, vous avez également Internet, un trésor sans fin de manuels et de guides. Recherchez du matériel sur la langue de votre choix sur des sites tels que CodeAcademy, Code.org, Bento, Udacity, Udemy, Khan Academy, W3Schools.
4. Voyez si vous pouvez obtenir des cours quelque part. Vous n`avez pas besoin d`un diplôme d`études supérieures pour pouvoir réussir quoi que ce soit dans le développement de logiciels, mais cela ne peut pas faire de mal de suivre quelques cours dans une université populaire ou un centre de formation. Cela offre l`avantage d`être guidés personnellement et vous êtes mis au défi de résoudre des problèmes que vous n`aborderez peut-être pas facilement par vous-même.
Les cours coûtent de l`argent, alors assurez-vous de choisir la qualité afin d`apprendre ce que vous voulez savoir.Alors que de nombreux développeurs ont pu entrer dans l`industrie sur la seule base de leurs compétences, vous pouvez vous démarquer de la foule en étant capable de démontrer un baccalauréat en informatique. Un tel diplôme vous fournira une base de connaissances plus large et un accès à des matières supplémentaires telles que les mathématiques et la logique.5. Travailler sur des projets de loisirs. Avant d`essayer d`obtenir un emploi en tant que programmeur, il est sage de démarrer vos propres projets. Mettez-vous au défi de résoudre des problèmes en utilisant un langage de programmation de votre choix. Non seulement cela vous aidera à développer vos compétences en programmation, mais cela aura fière allure sur votre CV.
Exemple : Au lieu d`utiliser le programme de calendrier de votre système d`exploitation pour organiser votre travail, essayez de créer votre propre!Si vous êtes intéressé par le développement de jeux vidéo, travaillez sur des jeux simples qui ne reposent pas trop sur des graphismes ou des mouvements complexes. Au lieu de cela, concentrez-vous sur la création d`un jeu amusant et unique. Une collection de petits jeux que vous avez créés vous-même aura fière allure dans votre portefeuille.CONSEIL D`EXPERT
Gene Linetsky, MS
Fondateur de startup et directeur technique Gene Linetsky est un fondateur de startup et développeur de logiciels dans la région de la baie de San Francisco. Il a travaillé dans l`industrie de la technologie pendant plus de 30 ans et est directeur technique chez Poynt, une entreprise technologique qui crée des systèmes de transaction intelligents pour les entreprises.
Gene Linetsky, MS
Fondateur de startups et directeur technique
Acquérir une expérience pratique est la meilleure façon d`apprendre. Gene Linetsky, ingénieur logiciel et fondateur de start-up : "En tant qu`ingénieur logiciel, être capable de programmer n`est pas la compétence la plus importante. Il s`agit de toutes les autres choses nécessaires pour transformer réellement votre code en un produit que les gens utilisent réellement. Lorsque vous faites cela, vos clients vous donneront généralement des commentaires et vous indiqueront ce qui ne fonctionne pas. Le cycle de suivi de votre propre travail est le véritable processus d`apprentissage d`un ingénieur logiciel."
6. Poser des questions. Internet est un excellent moyen de se connecter avec d`autres développeurs. Si vous êtes bloqué dans un projet, demandez de l`aide sur des sites comme StackOverflow. Assurez-vous que votre question est posée intelligemment et que vous pouvez indiquer que vous avez déjà essayé plusieurs solutions.
sept. Pratiquer tous les jours. Travaillez sur vos projets de loisirs tous les jours, même si ce n`est que pour une heure. Cela aide à rester frais et à apprendre constamment de nouvelles techniques. De nombreux développeurs ont réussi à apprendre une langue en s`assurant qu`ils l`utilisent tous les jours.
Prévoyez un certain temps chaque jour pour travailler sur le codage, ou fixez-vous une date limite que vous voulez en finir. Essayez de travailler sur vos projets chaque jour pour pouvoir vous détendre le week-end.
Partie 2 sur 3: Développer un programme

1.
idée de génie. Un bon programme effectuera des tâches qui faciliteront un peu la vie de l`utilisateur. Prenez le logiciel actuellement disponible pour cette tâche comme exemple et voyez si vous pouvez l`améliorer. Un programme réussi est quelque chose dont les gens bénéficient beaucoup.
- Découvrez les tâches quotidiennes que vous effectuez avec votre ordinateur. Existe-t-il un moyen d`automatiser certaines de ces tâches via un programme?
- Écrivez chaque idée. Même si cela semble un peu idiot ou étrange sur le moment, cela peut parfois déclencher quelque chose d`utile ou même de brillant.
- Étudier d`autres programmes. Quelle fonction ont-ils? Comment pouvez-vous les rendre meilleurs? Ce qui manque au logiciel? En répondant à ces questions, vous pouvez trouver des idées pour vous développer davantage.

2. Créer un document de conception. Ce document fournit un bref aperçu de toutes les fonctionnalités et de ce que vous voulez réaliser avec le projet. En vous référant à ce document pendant le processus de développement, vous pouvez garder un œil sur votre calendrier et rester plus concentré.
3. Créer un prototype. Il s`agit d`un programme simple dans lequel vous intégrez toutes les fonctionnalités que vous souhaitez obtenir. Un prototype est un programme rapide et quelque chose sur lequel vous pouvez vous baser jusqu`à ce que vous trouviez une conception qui fonctionne. Par exemple, si vous souhaitez créer un calendrier, votre prototype sera constitué d`un simple calendrier (avec les bonnes dates!) et un moyen d`y mettre des rendez-vous.
Ce prototype changera plusieurs fois au cours du cycle de développement au fur et à mesure que vous proposerez de nouvelles façons de résoudre des problèmes ou de nouvelles idées à emporter avec vous.Le prototype n`a pas à être joli. En fait, la conception graphique devrait être la dernière chose à laquelle vous pensez. Pour citer à nouveau l`exemple de calendrier, votre prototype sera principalement du texte.4. Continuez à tester en permanence. Les bugs sont le fléau de tout développeur. Des erreurs dans le code et une utilisation imprévue peuvent causer toutes sortes de problèmes dans le produit final. Au fur et à mesure que vous poursuivez votre travail sur le projet, vous devrez continuer à tester. Faites tout votre possible pour faire planter votre programme et provoquer des erreurs, puis corrigez ces erreurs. Laissez vos amis et votre famille tester votre programme et indiquer où il ne va pas. Tout commentaire pouvant vous aider à améliorer le processus de développement est le bienvenu.
Essayez à l`avance des dates étranges si votre programme a besoin de dates en entrée. Des dates vraiment anciennes ou lointaines dans le futur peuvent amener le programme à produire des résultats étranges.Saisir des variables incorrectes. Par exemple, si vous avez créé un formulaire demandant l`âge de l`utilisateur, entrez un mot et voyez ce qui se passe.Si votre programme a une interface graphique, cliquez sur tout ce qui est lâche. Que se passe-t-il si vous passez à l`écran précédent ou cliquez sur les boutons dans le mauvais ordre?5. Peaufinez vos projets. Bien qu`il soit acceptable de faire un brouillon d`un projet pour le prototypage et le développement, si vous voulez que d`autres l`utilisent, vous devrez passer du temps à le terminer. Cela signifie s`assurer que les menus sont structurés de manière logique, que l`interface utilisateur (UI) est claire et facile à utiliser, qu`il n`y a plus de bugs visibles ou gênants et qu`elle a l`air lisse.
La conception et la fonctionnalité de l`interface utilisateur peuvent être extrêmement difficiles et complexes. C`est un domaine complètement séparé. Dans tous les cas, assurez-vous que vos projets personnels sont faciles à utiliser et ont fière allure. Une interface utilisateur professionnelle peut ne pas être possible sans un budget raisonnable et une équipe.Avez-vous l`argent, il y a beaucoup de graphistes indépendants qui pourraient concevoir une interface utilisateur pour vous. Si vous avez un projet solide qui, vous l`espérez, sera un succès, trouvez un bon concepteur d`interface utilisateur et intégrez-le à votre équipe.6. Publiez vos projets sur GitHub. GitHub est une communauté open source où vous pouvez partager du code avec d`autres. Cela vous permet de mieux comprendre votre propre code et de faire profiter les autres des solutions que vous avez proposées. GitHub est une excellente ressource pour apprendre et une excellente idée pour remplir votre portefeuille avec.
sept. La diffusion de votre logiciel. Lorsque votre produit est prêt, vous pouvez choisir de le distribuer ou non. Il existe plusieurs façons de le faire, selon le type de logiciel que vous avez créé.
L`un des moyens les plus courants pour les petites équipes ou les développeurs indépendants de développer leur logiciel consiste à utiliser un site Web personnel. Assurez-vous que toutes les fonctionnalités sont bien documentées et incluent des captures d`écran et des didacticiels. Si vous vendez le logiciel, assurez-vous d`avoir un bon système de paiement numérique en place et un serveur à partir duquel le logiciel peut être téléchargé.Si votre logiciel est développé pour un appareil ou un système d`exploitation spécifique, vous pouvez utiliser plusieurs magasins numériques. Par exemple, si vous créez des logiciels pour les appareils Android, vous pouvez vendre des applications via le Google Play Store, l`Amazon App Store ou votre propre site Web.Partie 3 sur 3: Obtenir un emploi

1.
Trouver des emplois en tant qu`indépendant. Bien que ceux-ci ne soient pas aussi bien rémunérés qu`un travail régulier, vous pouvez certainement travailler à remplir votre portefeuille en effectuant des travaux indépendants. Consultez des sites comme Elance et ODesk pour trouver du travail. Bien qu`il puisse être difficile d`obtenir une première mission, cela devient beaucoup plus facile une fois que c`est fait.
- Hacker News est une excellente ressource pour trouver des emplois indépendants. Regardez la section `Demander`.
- Bien qu`il puisse être tentant de parier bas pour obtenir une mission, il n`est pas judicieux d`offrir vos compétences à un prix trop bas. Non seulement vous travaillerez alors pour moins que ce que vous valez, mais vous ennuierez aussi les autres dans votre domaine, ce qui n`est pas bon pour votre réseau.
- Parfois, un bon travail de commande peut conduire à une nomination permanente. Mettez toujours votre meilleur pied en avant!

2.
Réseautez le plus possible. Participez à autant de conventions et de hack-a-thons que possible. Non seulement vous verrez plus de code et de problèmes à résoudre, mais vous rencontrerez également d`autres personnes travaillant dans cette industrie. Malgré ce que vous pourriez dire sur les programmeurs (travaillant seuls dans un sous-sol sombre), la majorité des développeurs à temps plein font partie d`une équipe et le réseautage est tout aussi important pour eux que dans n`importe quel autre domaine.
3. Postuler à des postes permanents. Une fois que vous avez terminé un certain nombre de missions indépendantes, vous pouvez commencer à envoyer votre CV et votre portfolio à de plus grandes organisations à la recherche d`un emploi permanent. En plus de Monster et Indeed, il existe plusieurs sites d`emploi axés sur les développeurs, notamment GitHub Jobs, StackOverflow Job Board, AngelList, CrunchBoard, Hirelite et Hacker News.
4. Apprendre plusieurs compétences. Un bon développeur de logiciels maîtrise généralement plusieurs langages de programmation. Bien que vous appreniez beaucoup en allant travailler, il est bon d`utiliser une partie de votre temps pour étudier et maîtriser les bases de 1 ou 2 langages de programmation supplémentaires. Cela facilitera grandement la transition vers de nouveaux projets et fera de vous un meilleur candidat pour certains postes.

5. Ne vous inquiétez pas trop de la récompense. Tous les postes de développeur de logiciels d`entrée de gamme ne vous paieront pas en montants à 6 chiffres. En fait, aucun de ces emplois ne vous procurera. La bonne nouvelle concernant le développement de logiciels, cependant, c`est qu`il vous place dans une position très forte sur le marché du travail. Si vous sentez que vous ne gagnez pas assez là où vous êtes actuellement, il est facile de changer d`emploi si vous avez les bonnes compétences. Considérez vos premiers emplois/affectations comme une expérience nécessaire au lieu de vous concentrer sur votre plan de retraite.
Articles sur le sujet "Développement de logiciels"