Softwareontwikkelaar zijn, is een lucratief carrièreplan. Dat zijn mensen met een aantal ernstige verkoopbare vaardigheden. Maar wat doen ze precies? Omdat je ze waarschijnlijk niet kunt verslaan, moet je meedoen. Heb je de technische kennis en de relatibiliteit van het publiek om een ​​goed product te ontwikkelen? Met een beetje brainstormen - en natuurlijk, te beginnen met stap 1 hieronder - zul je!

Deel een van de drie:
De touwen leren

  1. 1 Bepaal welk basistype softwareontwikkeling u interesseert. Er zijn twee basiskampen voor softwareontwikkeling: Applicatie ontwikkeling en Systeemontwikkeling. Toepassingen Ontwikkeling is gericht op het maken van programma's die voldoen aan de behoeften van de gebruikers. Deze kunnen variëren van apps voor mobiele telefoons tot high-production videogames tot boekhoudsoftware op bedrijfsniveau. Systeemontwikkeling is gericht op het creëren en onderhouden van besturingssystemen met behulp van levenscyclusontwikkeling. Systeemontwikkeling houdt vaak verband met netwerkoperabiliteit en gegevensbeveiliging.[1]
  2. 2 Leer jezelf een programmeertaal. Iedereen kan met ideeën komen, maar een ontwikkelaar kan die ideeën in iets tastbaars veranderen. Zelfs als u alleen aan de ontwerpaspecten van software wilt werken, moet u enige bekendheid met codering hebben en in staat zijn om basisprototypes te maken. Er is een grote verscheidenheid aan programmeertalen die je jezelf kunt leren. Enkele van de meer bruikbare en belangrijke zijn:
    • C - C is een van de oudere talen die nog steeds in gebruik is en vormt de basis voor de meeste andere talen in deze lijst. C wordt gebruikt om programma's op een laag niveau te ontwikkelen en werkt nauw samen met de hardware van de computer.
    • C ++ - Dit is de object-georiënteerde versie van C, en is de meest populaire programmeertaal ter wereld. Programma's zoals Chrome, Firefox, Photoshop en vele anderen zijn allemaal gebouwd met C ++. Het is ook een zeer populaire taal voor het maken van videospellen. C ++ -ontwikkelaars hebben bijna altijd een hoge vraag.
    • Java - Dit is een evolutie van de C ++ -taal, en is gewend aan het gemak van draagbaarheid. Bijna elk systeem kan een Java Virtual Machine draaien, waardoor het Java-software kan uitvoeren. Het wordt veel gebruikt in videogames en bedrijfssoftware en veel mensen bevelen het aan als een essentiële taal.
    • C # - C # is een op Windows gebaseerde taal die deel uitmaakt van het .NET-framework van Microsoft. Het is nauw verwant aan Java en C ++, en als je Java leert, kun je snel overstappen naar C #. Deze taal is vooral handig voor ontwikkelaars die werken met Windows- of Windows Phone-software.
    • Objective-C - Dit is een andere neef van de C-taal die specifiek is ontworpen voor Apple-systemen. Het ziet immense populariteit in iPhone- en iPad-apps. Het is een geweldige taal om als freelancer te leren.
    • Python - Dit is een ongelooflijk gemakkelijke taal om te leren, een van de gemakkelijkste. Python is gespecialiseerd in webontwikkeling.
    • PHP - Dit is niet echt softwareontwikkeling, maar PHP is essentieel als je geïnteresseerd bent in het ontwikkelen van webontwikkeling. Er is altijd veel werk voor PHP-ontwikkelaars, hoewel het niet zo lucratief is als softwareontwikkeling.
  3. 3 Vind bronnen om u te helpen leren. De meeste boekwinkels hebben volledige secties gewijd aan het programmeren van boeken, en er zijn heel veel beschikbaar op Amazon en andere e-tailers. Een goed geschreven programmaboek is waarschijnlijk de beste bron die u kunt hebben en u kunt er snel naar verwijzen terwijl u aan projecten werkt.
    • Naast boeken is internet een eindeloze schat aan gidsen en tutorials. Zoek naar handleidingen over de taal van je keuze op sites zoals CodeAcademy, Code.org, Bento, Udacity, Udemy, Khan Academy, W3Schools en nog veel meer.
  4. 4 Neem enkele lessen. Hoewel je geen volledige opleiding nodig hebt om aan de ontwikkeling van software te beginnen, kan het geen kwaad om enkele lessen te volgen bij je plaatselijke community college of studiecentrum. Dit geeft je het voordeel van een-op-een instructies, en je wordt uitgedaagd om problemen op te lossen die je waarschijnlijk niet zou hebben als je alleen zou leren.
    • Klassen kosten geld, dus zorg ervoor dat je je aanmeldt voor lessen die je zullen helpen te leren wat je wilt weten.
    • Hoewel veel ontwikkelaars in staat zijn om de industrie te betreden louter gebaseerd op de verdiensten van hun vaardigheden, zul je jezelf helpen te onderscheiden van de groep als je een bachelorgraad in computerwetenschappen hebt van een vierjarige universiteit. Een diploma geeft je een bredere achtergrond van kennis en geeft je toegang tot aanvullende nuttige lessen zoals wiskunde en logica.
  5. 5 Werk aan huisdierenprojecten. Voordat u begint met het toepassen van uw nieuwe programmeervaardigheden op echte banen, werkt u aan sommige projecten voor uzelf. Daag jezelf uit om problemen op te lossen met behulp van uw programmeertaal. Niet alleen helpt dit je om je vaardigheden te ontwikkelen, het zal ook helpen om je cv op te bouwen.
    • Bijvoorbeeld, in plaats van het kalenderprogramma van je computer te gebruiken om georganiseerd te blijven, probeer je eigen kalenderprogramma te ontwerpen!
    • Als je geïnteresseerd bent in de ontwikkeling van videogames, werk dan aan eenvoudige spellen die niet op afbeeldingen zijn gericht of complexe mechanica. Richt je er in plaats daarvan op om ze leuk en uniek te maken. Een verzameling kleine games die je zelf hebt gemaakt, ziet er geweldig uit in je portfolio.
  6. 6 Vragen stellen. Het internet is een fantastische manier om verbinding te maken met andere ontwikkelaars. Als je merkt dat je stumped bent in een van je projecten, vraag dan om hulp op sites zoals StackOverflow. zorg ervoor dat je het op een intelligente manier vraagt ​​en kan bewijzen dat je al verschillende mogelijke oplossingen hebt geprobeerd.
  7. 7 Oefen elke dag. Werk elke dag aan je huisdierenprojecten, ook al is het maar voor een uur. Dit zal je helpen vers te blijven en constant nieuwe technieken te leren. Veel ontwikkelaars hebben succes gehad met het leren van een taal door ervoor te zorgen dat ze er dagelijks aan worden blootgesteld.[2]
    • Stel elke dag een tijd in die u aan codering kunt besteden, of stel een deadline in waar u klaar mee bent. Probeer tijdens de week elke dag aan je projecten te werken, zodat je tijdens je weekend kunt ontspannen.

Tweede deel van de drie:
Een programma ontwikkelen

  1. 1 Brainstorm ideëen. Een goed programma zal een taak uitvoeren die het leven gemakkelijker maakt voor de gebruiker. Kijk naar de software die momenteel beschikbaar is voor de taak die u wilt uitvoeren en kijk of er manieren zijn om het proces gemakkelijker of vloeiender te maken. Een succesvol programma is er een waar gebruikers veel bruikbaarheid in vinden.
    • Onderzoek uw dagelijkse taken op uw computer. Is er een manier om een ​​deel van die taken met een programma te automatiseren?
    • Schrijf elk idee op. Zelfs als het op dat moment dom of vreemd lijkt, kan het veranderen in iets nuttigs of zelfs briljant.
    • Onderzoek andere programma's. Wat doen ze? Hoe konden ze het beter doen? Wat missen ze? Het beantwoorden van deze vragen kan u helpen met het bedenken van ideeën voor uw eigen mening.
  2. 2 Schrijf een ontwerpdocument. Dit document schetst de kenmerken en wat u van plan bent te bereiken met het project. Door tijdens het ontwikkelingsproces naar het ontwerpdocument te verwijzen, houdt dit uw project op het goede spoor en gericht. Raadpleeg deze handleiding voor meer informatie over het schrijven van het document.
  3. 3 Maak een prototype. Dit is een basisprogramma dat de functionaliteit laat zien die u wilt bereiken. Een prototype is een snel programma en moet worden herhaald tot je een ontwerp vindt dat werkt. Als u bijvoorbeeld een kalenderprogramma maakt, is uw prototype een basiskalender (met juiste datums!) En een manier om hieraan evenementen toe te voegen.
    • Je prototype zal tijdens de ontwikkelingscyclus vaak veranderen als je met nieuwe manieren komt om problemen aan te pakken of later een idee te bedenken dat je wilt opnemen.
    • Het prototype hoeft niet mooi te zijn. Kunst en design zouden eigenlijk een van de laatste dingen moeten zijn waar je je op concentreert. Als u het kalendervoorbeeld opnieuw gebruikt, zou uw prototype waarschijnlijk alleen maar tekst moeten zijn.
  4. 4 Test het steeds opnieuw. Bugs zijn de vloek van elke ontwikkelaar. Fouten in code en onverwacht gebruik kunnen allerlei problemen veroorzaken in een gereed product. Terwijl je aan je project blijft werken, moet je het zo veel mogelijk testen. Doe alles wat je kunt om het te verbreken en probeer het in de toekomst niet te laten breken. Laat vrienden en familie uw programma testen en resultaten terugmelden. Elke manier waarop u feedback kunt krijgen, zal uw ontwikkelingsproces helpen.
    • Probeer oneven datums in te voeren als uw programma met datums omgaat. Echt oude datums of verre toekomstige datums kunnen vreemde reacties op het programma veroorzaken.
    • Voer de verkeerde soort variabelen in. Als u bijvoorbeeld een formulier hebt dat naar de leeftijd van de gebruiker vraagt, voert u in plaats daarvan een woord in en ziet u wat er met het programma gebeurt.
    • Als uw programma een grafische interface heeft, klik dan op alles. Wat gebeurt er wanneer u teruggaat naar een vorig scherm of op knoppen in de verkeerde volgorde klikt?
  5. 5 Poets je projecten. Hoewel het prima is om een ​​ruw project te maken voor de prototyping- en ontwikkelingsfase, als je wilt dat anderen het gebruiken, moet je wat tijd besteden aan Pools. Dit betekent dat de menu's logisch moeten vloeien, de gebruikersinterface (UI) schoon en gebruiksvriendelijk is, er geen verblindende of tonende bugs zijn en dat deze is gecoat met een mooie afwerking.
    • UI-ontwerp en functionaliteit kunnen erg moeilijk en complex zijn. Mensen maken hele carrières uit het ontwerpen van UI's. Zorg ervoor dat uw persoonlijke project eenvoudig te gebruiken en ogenblikkelijk is. Een professionele gebruikersinterface is misschien niet mogelijk zonder een budget en een team.
    • Als u over het budget beschikt, zijn er veel freelance grafische ontwerpers die mogelijk een UI op contract voor u kunnen ontwerpen. Als je een solide project hebt waarvan je hoopt dat het de volgende grote stap zal worden, zoek dan een goede UI-ontwerper en maak ze deel van je team.
  6. 6 Zet je projecten op GitHub. GitHub is een open-sourcecommunity waarmee je je code met anderen kunt delen. Hierdoor kunt u inzicht krijgen in uw eigen code en profiteren van anderen die op zoek zijn naar oplossingen die u mogelijk hebt bedacht. GitHub is een geweldige leerbron en een goede manier om je portfolio op te bouwen.
  7. 7 Distribueer uw software. Zodra u een voltooid product heeft, kunt u kiezen of u het wilt distribueren. Er zijn tegenwoordig verschillende manieren om dit te doen, afhankelijk van het type software dat je hebt gemaakt.
    • Een van de meest gebruikelijke manieren voor kleine teams of onafhankelijke ontwikkelaars om hun software te distribueren, is via een persoonlijke website. Zorg ervoor dat al uw functies goed gedocumenteerd zijn en bevatten enkele screenshots en tutorials. Als u uw software verkoopt, moet u zorgen voor een goed digitaal betalingssysteem en een server om de software te distribueren.
    • Als u software voor een specifiek apparaat of besturingssysteem ontwikkelt, zijn er meerdere digitale winkels die u mogelijk kunt gebruiken. Als u bijvoorbeeld software voor Android-apparaten maakt, kunt u uw app verkopen via de Google Play Store, de Amazon App Store of uw eigen persoonlijke website.

Derde deel van de drie:
Aan het werk gaan

  1. 1 Neem contractopdrachten. Hoewel deze niet zo goed zullen betalen en minder betrouwbaar zijn dan een volledige baan, kunt u uw portefeuille aanzienlijk vergroten door een aantal contracten te sluiten. Controleer sites zoals Elance en ODesk (ook wel "Upwork" genoemd) om werk te vinden. Hoewel het moeilijk kan zijn om in aanmerking te komen voor een contract, wordt het een stuk eenvoudiger wanneer je je eerste hebt.
    • Hacker News is een geweldige bron voor contracten en freelance banen. Controleer het gedeelte 'Vragen'.
    • Hoewel het verleidelijk kan zijn om een ​​bod uit te brengen om een ​​contractjob veilig te stellen, moet u uw services niet kort verkopen. Niet alleen zult u uiteindelijk meer gaan verdienen voor minder dan u verdient, u zult ook anderen boos maken in uw vakgebied, wat leidt tot minder netwerken.
    • Goed werk op een contractbaan kan soms leiden tot een fulltime baan. Zet altijd je beste beentje voor!
  2. 2 Netwerk zo veel mogelijk. Woon zoveel conventies en hack-a-thons bij als je kunt. Dit zal je niet alleen blootstellen aan meer code en problemen om op te lossen, het zal je ook helpen andere mensen in de industrie te ontmoeten. Ondanks wat je zou denken van programmeurs die alleen in hun kelder werken, maakt de meerderheid van de fulltime ontwikkelaars deel uit van een team en is netwerken net zo belangrijk als elk ander veld.
  3. 3 Solliciteer voor een fulltime baan. Als u eenmaal een paar klussen op contract hebt staan, kunt u beginnen met het verzenden van uw cv en portfolio naar grotere organisaties voor een volledige baan. Naast Monster en Indeed zijn er verschillende ontwikkelaarsspecifieke vacaturesites waar je naar zou moeten kijken, inclusief GitHub Jobs, StackOverflow Job Board, AngelList, CrunchBoard, Hirelite en Hacker News.
  4. 4 Diversificeer je vaardigheden. Een goede softwareontwikkelaar is meestal bekwaam in meer dan één taal. Hoewel veel van wat je leert op je werk zal zijn, gebruik dan een deel van je vrije tijd om je kennis uit te breiden en de basisprincipes van een andere taal of twee te leren. Dit maakt het overstappen naar nieuwe projecten veel gemakkelijker en maakt je een veel aantrekkelijker sollicitant.
  5. 5 Maak je geen zorgen over de beloning. Niet elk instapmodel voor softwareontwikkeling gaat zes cijfers betalen. In feite zal geen van hen dat doen. Het goede aan softwareontwikkeling is echter dat de banenmarkt ongelooflijk sterk is. Als je het gevoel hebt dat je niet genoeg verdient waar je bent, is het relatief eenvoudig om naar een nieuwe functie te verhuizen in een nieuw bedrijf (als je de vaardigheden hebt). Behandel je eerste paar banen als noodzakelijke ervaring in plaats van je te focussen op je pensioenplan.