Hoe te werken als softwareontwikkelaar

Schrijver: Peter Berry
Datum Van Creatie: 19 Lang L: none (month-012) 2021
Updatedatum: 1 Juli- 2024
Anonim
Wat is agile werken?
Video: Wat is agile werken?

Inhoud


Er is nog nooit een betere tijd geweest om softwareontwikkelaar te worden. De vraag naar softwareontwikkelaars neemt voortdurend toe, evenals de verscheidenheid aan taken die ze moeten voltooien. Dan is er het loon.

Volgens USNews.com, verdiende de gemiddelde softwareontwikkelaar $ 101.790 in 2017. Volgens Gorroo.io verdient de gemiddelde C # ontwikkelaar $ 102k per jaar.

Kortom, programmeren is op dit moment een van de meest gevraagde vaardigheden ter wereld. Als u online wilt werken of uzelf wilt voorbereiden op de volgende stap in uw carrière, zijn er weinig slimmere bewegingen dan het leren van code.

De gemiddelde C # ontwikkelaar verdient $ 102k per jaar.

Maar waar te beginnen? Als u iemand bent die in het verleden niet in code heeft gedobbeld, weet u misschien helemaal niet hoe u aan de slag kunt gaan. In dit bericht zullen we alles onderzoeken wat je moet weten: wat een softwareontwikkelaar doet, welke kwalificaties je misschien nodig hebt en hoe je werk kunt vinden.


Wat doet een softwareontwikkelaar?

Een softwareontwikkelaar is iemand die software ontwikkelt. Dat betekent dat ze code schrijven, hulpmiddelen gebruiken en vaak een project uitvoeren vanaf het begin tot de voltooiing ervan. Als alternatief kunnen ze worden ingehuurd om bugs in bestaande code te identificeren, of om deze te upgraden / nieuwe functies toe te voegen.

Hoe dan ook, uw werk zal grotendeels bestaan ​​uit het oplossen van problemen met behulp van een verscheidenheid aan programmeertalen, API's en tools. U kunt rechtstreeks aan projecten werken voor klanten, via een bureau of als onderdeel van een grotere organisatie.

Typen softwareontwikkelaar

De reden dat 'softwareontwikkelaar' zo'n brede term is, is dat er zoveel verschillende soorten software zijn waaraan je zou kunnen werken en zoveel verschillende tools die je zou kunnen gebruiken om dat te realiseren.


Een softwareontwikkelaar kan ook werken als een webontwikkelaar of een "full-stack ontwikkelaar" om een ​​website te bouwen of interactieve functies toe te voegen. Ze kunnen mobiele apps ontwikkelen of werken met interne bedrijfstools.

Nog een onderscheid om te overwegen: softwareontwikkelaar versus software-ingenieur, wat is het verschil?

Hoewel beide termen door elkaar kunnen worden gebruikt, komt het verschil neer op het soort werk dat wordt voltooid en de aanpak die wordt gevolgd. Software-ingenieurs bekijken code vanuit een technisch oogpunt: ze houden rekening met de levenscyclus, ze kijken naar fouten en bugs en ze werken meestal aan grote projecten in grotere teams.

Softwareontwikkelaars daarentegen zijn eerder de primaire creatieve directeur van een project. Ze ontwikkelen software van start tot finish voor een klant of organisatie, meestal om een ​​specifieke rol te vervullen.

Dus als je voor Facebook werkt als onderdeel van het engineeringteam, ben je een software-ingenieur. Als u apps voor klanten maakt, bent u een softwareontwikkelaar. Maar je zou in beide situaties goed beide kunnen bellen.

Welke vaardigheden en kwalificaties heeft een softwareontwikkelaar nodig?

Om softwareontwikkelaar te worden, moet je leren programmeren.

De volgende vraag is: "wat is de beste programmeertaal om te leren" of "welke programmeertalen willen werkgevers?"

Hoewel het zeker waar is dat sommige programmeertalen meer in trek zijn bij klanten en werkgevers (Python, Java, JavaScript, PHP, Swift, C #, C ++, Ruby), is de waarheid dat dit volledig afhankelijk is van het soort werk dat je wilt doen . Hier zijn enkele voorbeelden.

Volledige stapel ontwikkelaar

Python, JavaScript, PHP en Ruby zijn allemaal talen die worden gebruikt voor webontwikkeling. Als u op een online portaal werkt of updates voor web-apps zoals Twitter uitvoert, zullen sommige hiervan waarschijnlijk nuttig zijn. In deze rol kan het ook voordelig zijn om databases (SQL) te begrijpen en uw weg te kennen op een server.

Een 'full-stack ontwikkelaar' is een webontwikkelaar die zijn definitieve vorm heeft bereikt: iemand die elk aspect van webontwerp en -onderhoud aankan, van de voorkant (HTML, CSS, JavaScript) tot de achterkant (PHP, Python, Ruby), naar het serveronderhoud. Er is veel vraag naar dit type professional.

Hier is een geweldige cursus van Udemy als je meer wilt weten: Bootcamp met volledige stack voor webontwikkelaars.

Mobiele ontwikkelaar

Als u echter geïnteresseerd bent in het ontwikkelen van Android-apps, moet u Java of Kotlin leren (idealiter beide). U moet zich vertrouwd maken met Android Studio, de Android SDK (Software Development Kit) en alle nieuwe concepten die Google voortdurend introduceert (zoals instant-apps of bubbels).

Lees verder: Hoe werk te vinden als Android-ontwikkelaar

Als je iOS-apps voor de kost wilt maken, moet je Swift en Objective C leren kennen en vertrouwd raken met Xcode. Als je Windows-apps wilt maken of platformonafhankelijk wilt werken, heb je C # en een goed begrip van Visual Studio nodig.

Games ontwikkelaar

Om een ​​game-ontwikkelaar te worden, moet je zeker C # leren en idealiter C ++. Je zou de grote game-engines (Unity en Unreal) moeten leren kennen, en misschien wil je een beetje CAD aan je vaardigheden toevoegen.

De ultieme gids voor eenheid voor spelontwikkeling bij Udemy is een goede plek om te beginnen.

Dit is slechts het oppervlak krassen. Andere softwareontwikkelaars zullen werken aan software met elektronica, omgaan met big data en meer.

Dan zijn er de specifieke tools die bedrijven zullen gebruiken om hun workflow te beheren en samen te werken aan grotere projecten. Toen ik een paar maanden geleden Facebook in Londen bezocht, maakte ik kennis met de vele verschillende tools die het bedrijf gebruikt om projecten op schema te houden. Ze omvatten Phabricator, Mercurial, Sapienz en meer.

Zeker, tools zoals Github (gebruikt voor versiebeheer) zijn waarschijnlijk nuttig voor software-ingenieurs en ontwikkelaars die in verschillende industrieën werken. Projectbeheer-apps zoals Asana of Basecamp zijn ook erg handig voor werken op afstand. Als je aantoont dat je ervaring hebt met deze gebieden, wordt je CV verder afgerond en ben je nog meer inzetbaar.

Kortom: wat u moet weten, hangt af van het type softwareontwikkelaar dat u wilt worden.

De beste software-ontwikkelaarscertificeringen

Dus zodra u het type werk dat u wilt doen en het type code dat u wilt schrijven hebt gekozen, is uw volgende taak het identificeren van het type training dat u nodig zult hebben. Heb je een diploma nodig om softwareontwikkelaar te worden?

Het korte antwoord is nee. Het langere antwoord is nee, maar het helpt zeker.

Hoewel het mogelijk is om zonder diploma aan de slag te gaan, zal een graad in informatica toch een vereiste zijn voor een grote verscheidenheid aan organisaties en werkgevers. Het geeft je ook een uitstekende basiskennis en een concurrentievoordeel ten opzichte van sollicitanten die geen diploma's hanteren.

Lees verder: Futureproof uw carrière en salaris als analist van informatiebeveiliging

Evenzo geeft een diploma u een voordeel ten opzichte van andere kandidaten tijdens het sollicitatieproces.

Maar graden zijn duur en de meeste volwassenen hebben niet de optie om ze in te passen in hun drukke levensstijl. In dat geval is het een van de beste dingen om online cursussen te volgen en certificering te behalen die een basiskennis kan aantonen.

Er zijn veel in de branche erkende certificeringen die u enige slagkracht geven bij het solliciteren naar posities.

U kunt bijvoorbeeld Unity-certificering rechtstreeks van het bedrijf krijgen, wat waardevol kan zijn voor game-ontwikkelaars. Als u een Android-ontwikkelaar wilt worden, kunt u een aanvraag indienen om een ​​Associated Android-ontwikkelaar te worden, een officieel programma dat wordt beheerd door Google. Of u kunt ervoor kiezen om een ​​Android Certified Application Developer te worden, die redelijk goed wordt herkend.

Certificeringen zoals deze bieden gemoedsrust voor klanten en bedrijven die overwegen u in dienst te nemen. Ze tonen aan dat je echt de kennis hebt die je beweert te hebben, wat betekent dat ze je op de hoogte kunnen brengen met minimale aanvullende training.

Gewoon Google het soort werk waarin u geïnteresseerd bent en vind de bekendste certificeringen op dat gebied. Als je het niet zeker weet, kies dan een van de grote talen zoals C # of Java, of zoek een computerwetenschap of een volledige stapelcursus die veel terrein beslaat.

Heeft u certificeringen nodig om een ​​softwareontwikkelaar te zijn?

De goedkoopste optie zou zijn om een ​​softwareontwikkelaar te worden zonder certificering of kwalificaties. Maar is het mogelijk om werk te vinden als een puur autodidactische ontwikkelaar?

Ik kan je garanderen dat het zo is, want dit is precies wat ik deed. Ik leerde BASIC programmeren op een ZXSpectrum, en van daaruit ontwikkelde ik mijn kennis met QBASIC, B4A, vervolgens Java, C #, Python en meer.

De manier waarop ik dit kon doen, was door mijn CV voor me te laten spreken. Ik ontwikkelde een succesvolle Android-app die meer dan 100.000 betaalde downloads had, werkte met een aantal vrij grote namen daarachter en schreef toen een technisch boek over game-ontwikkeling voor Apress Media (Springer).

Die prestaties bieden klanten exact dezelfde soort zekerheid als een certificaat en stellen me in staat veel meer in rekening te brengen dan anders het geval zou zijn.

Ik raad ten zeerste aan om in je vrije tijd apps en websites te ontwikkelen om als voorbeeld van je werk te dienen, goedkoop werk voor vrienden te doen om een ​​portfolio op te bouwen, betrokken te raken bij open-sourceprojecten op GitHub of hackathons bij te wonen.

De meeste freelance-sites zoals UpWork bieden ook korte tests die u kunt uitvoeren om uw basiskennis aan te tonen.

Zelfs zonder dat soort ervaring, als u ermee instemt om de betaling bij ontvangst te ontvangen, niet te veel in rekening brengt en voorbeelden van uw werk geeft, dan zou u in staat moeten zijn om meteen wat banen te krijgen.

Wat betreft het vinden van werk bij grote werkgevers, suggereren sommige professionals dat certificering misschien helemaal niet helpt.

Dat komt omdat, als je eenmaal een programmeertaal kent, het relatief eenvoudig is om de andere te begrijpen. Hoewel de syntaxis, hulpmiddelen en sommige regels anders kunnen zijn; de eerste taal die je leert is nog steeds veruit de moeilijkste. Er is een equivalent voor 'als' in vrijwel elke taal die je leert.

als je eenmaal een programmeertaal kent, is het relatief eenvoudig om de andere te begrijpen.

Bij het werken binnen een organisatie zal training altijd vereist zijn. Zeer weinig werkgevers zullen van je verwachten dat je alles meteen weet, en - in alle eerlijkheid - er is een enorme hoeveelheid blag die gaande is in de carrière van een software-ingenieur. Verwacht dat je je volledig uit je diepten voelt en boordevol "imposter syndroom" wanneer je begint. Maar maak je geen zorgen, zo voelt iedereen zich!

Hoe leer je jezelf code

Jezelf leren coderen is een uitdagend proces en geavanceerde concepten zoals objectgeoriënteerd programmeren kunnen moeilijk te kraken zijn. Gelukkig is er een enorme hoeveelheid gratis materiaal online beschikbaar; we hebben al een paar geweldige cursussen van Udemy gemarkeerd en er zijn er nog veel meer. We hebben bijvoorbeeld een cursus voor Android-ontwikkelaars van Gary Sims.

Hier zijn nog een aantal uitstekende hulpmiddelen voor het leren van code:

  • Een geweldige cursus die Python leert voor data science.
  • C # codeerbundel
  • Negen-delige pro web ontwikkelaar trainingsbundel

En er zijn tal van geweldige cursussen op sites zoals SkillShare.

Zie ook: Hoe start je Android-app-ontwikkeling voor complete beginners in 5 stappen

Werk deze op een logische manier af en oefen met uw eigen projecten. In het begin is het moeilijk, maar als je je concentreert op de aspecten die je leuk vindt, kom je er wel.

Betaald werk vinden als softwareontwikkelaar

Het laatste stukje van de puzzel is het vinden van betaald werk, als een aannemer, een full-time werknemer vanuit huis of een freelancer.

Freelance werk vinden is voornamelijk een kwestie van het gebruik van vacaturesites, freelancingsites zoals PeoplePerHour of UpWork.

Er zijn ook freelance-sites die specifiek zijn gericht op softwareontwikkelaars en ingenieurs. Deze omvatten Rent-a-code en zelfs Stack Overflow.

Er zijn ook andere manieren om geld te verdienen met expertise als softwareontwikkelaar. Je zou een schrijver kunnen worden (zoals ik uiteindelijk deed) en zelfstudies schrijven voor blogs of boeken voor technische uitgevers. Je kunt lesgeven via online cursussen; waarom maak je niet je eigen Skillshare-cursus?

Een dektopmodu i ontdekt in het eerte Android Q-ontwikkelaarvoorbeeld dat giteren i gelanceerd. De functie werd opgemerkt door Twitter-gebruiker @ had0wKn1ght93 in de Android AOP (via XDA-ontwikkelaar...

Pixel 4 inhoud wordt u aangeboden door MNML Cae, maker van ' wereld dunte telefoonhoeje. Bepaar 25% op uw Pixel 4 of Pixel 4 XL hoeje met de kortingcode AAPixel4De Google Pixel 4 en Google Pixel ...

Deel