per definitie is een softwareontwikkelaar iemand die iets ontwikkelt — eerlijk genoeg.
wat betekent “ontwikkelen” dan?
ontwikkelen, per definitie, middelen om te groeien of veroorzaken om te groeien en meer volwassen, geavanceerde, of uitgebreide.
goed.
eens kijken wat Wikipedia denkt van softwareontwikkelaars:
een softwareontwikkelaar is een persoon die software maakt. De uitdrukking ‘software ontwikkeling’ betekent vaak meer dan alleen het ontwerpen of schrijven van de software, het betekent meestal iemand die het project beheert, of doet alleen de belangrijkste dingen. De meeste softwareontwikkelaars worden nog steeds geleid door een leidende software engineer die het project begeleidt.
verdomme, zelfs Wikipedia is bevooroordeeld.
goed, laten we het nu even over programmeurs hebben.
My two cents:
als iemand me een programmeur noemt associeer ik mezelf met… een peon… een lazy peon… een lazy peon in the World of Warcraft.
Ik denk dat programmeurs net zo goed junior developers kunnen worden genoemd. Hun taak is om het plan dat is ontwikkeld door senior ontwikkelaars of de tech lead volgen.
een interessant feit: programmeurs besteden meestal 90% van hun tijd in hun favoriete code-editor of op Stack Overflow zoeken naar fixes. De andere 10% van hun tijd gaat naar het spelen van Fortnite.
wat doet een software engineer?
als iemand die een diploma in engineering en ervaring heeft, kunnen software engineers de rol van een senior software ontwikkelaar (of een tech team lead) belichamen, wat betekent dat zij hogere verantwoordelijkheden dragen dan de gemiddelde programmeur.
sommige studenten beschouwen engineering meer als een architectuurtaak — het plannen van een software-oplossing. Software ontwikkeling, aan de andere kant, is meer over knutselen met dingen en het uitproberen van nieuwe dingen.
“In onze leerprogramma’ s gebruiken we Software Engineer om leerlingen te beschrijven die zullen werken aan meer uitdagende algoritmische problemen en zakelijke oplossingen die meer ondernemingsgericht zijn. Onze softwareontwikkelaars werken aan een kleinere lijn van zakelijke applicaties, mobiele apps en websites die UX met een hogere mate van Pools vereisen.”- Mike Roberts, CEO van San Diego Code School
wat doet een software ontwikkelaar
volgens Wikipedia ‘ s definitie, lijkt het erop dat software ontwikkelaars ongeveer dezelfde verantwoordelijkheden hebben als software engineers.
Dit lijkt me eerlijk:
een softwareontwikkelaar is iemand die specifieke instructies krijgt om te volgen, maar die de vrijheid en creativiteit heeft om mee te spelen om de aanpak te volgen die hij het meest geschikt vindt.
het zijn geen “monkey see, monkey do” programmeurs, maar toch … ze volgen een set duidelijke instructies. Soms, software-ontwikkelaars kunnen ook worden beschouwd als full-stack ontwikkelaars / ingenieurs.
Software engineer/developer salarissen
Zoals al eerder gezegd, de software ingenieur en ontwikkelaar voorwaarden kunnen door elkaar worden gebruikt.
alleen voor sommige bedrijven of individuen betekenen ze verschillende dingen.
dus, wanneer we kijken naar salarissen, kunnen we de een beschouwen als een junior ontwikkelaar en de ander als een senior ontwikkelaar of een tech team lead.
laten we bijvoorbeeld zeggen dat programmeurs worden beschouwd als beginnende ontwikkelaars. Daarom kunnen we ze junior developers noemen.
aangezien softwareontwikkelaars boven programmeurs staan, kunnen we ze senior ontwikkelaars noemen.
en omdat software engineers de rol van opzichter hebben (volgens Wikipedia), die meer managen dan coderen, kunnen we ze tech leads noemen.
gebaseerd op Glassdoor, bedraagt het gemiddelde salaris van een junior Ontwikkelaar ongeveer $63.502/jaar.
het mediane salaris voor een senior ontwikkelaar is ongeveer $ 82.518 / jaar.
en het gemiddelde salaris van een tech team lead volgens Payscale is ongeveer $ 101.381 / jaar.een van de belangrijkste voordelen van software engineer zijn is dat je een salaris hebt dat je in de top 1% van de wereldbevolking plaatst met betrekking tot financiële zekerheid.
Software engineer vs software developer — vaardigheden, rollen en verantwoordelijkheden…
Ik denk dat zachte vaardigheden even belangrijk zijn als uw technische vaardigheden. Als een goede communicator als software-ontwikkelaar kunt u een onschatbare bijdrage aan het team.
op een gegeven moment in je carrière, zul je taken tegenkomen die je zelf moeilijk kunt voltooien. In staat zijn om te luisteren naar andere teamleden zorgvuldig in plaats van te onderbreken, en doen paar programmering — dat is wat zal u helpen een positie als een goede software-ontwikkelaar/ingenieur vast te stellen.
Hier zijn drie goede vuistregels waarvan ik denk dat ze je zullen helpen om een betere software ontwikkelaar te worden en je op de ranglijst te zetten.
1. Stel vragen.
2. Nooit multitasken.
3. Als je wilt dat het resultaat 10 is, test dan op 9 en 11. Verkeerde resultaten kunnen een solide oplossing te creëren.
in principe moet iemand die als een software engineer (senior developer of een Tech lead) beschouwd wil worden in staat zijn om de harde dingen waar iedereen voor draait klaar te krijgen.
Onderwijs als software engineer/developer
De beste ding om te doen is natuurlijk om een Bachelor ‘ s degree.
dat denken de meeste mensen tenminste. Als je tijd, geld en geduld hebt, kun je net zo goed wat extra malen om een masterdiploma te halen. Hier vindt u enkele van de beste software engineering scholen.
een groot deel van de professionele ontwikkelaars, ondervraagd door StackOverflow, zei dat hun studies gericht waren op computerwetenschappen en software-engineering.
een kleiner percentage van de ondervraagde respondenten zei dat ze afstudeerden in gerelateerde software engineering gebieden zoals computerprogrammering, computer engineering, of IT.
als het gaat om het belang van een formele opleiding als softwareontwikkelaar, zeggen de meeste ontwikkelaars dat het niet nodig is om er een te hebben. Wat ze denken is veel belangrijker is de mogelijkheid om te leren op uw eigen en groeien uw kennis buiten schooluren … autodidact.
veel ontwikkelaars raden aan om online cursussen of programmeerkampen te volgen. Deze kunnen zeker helpen bij het landen van uw eerste baan.
leren door middel van boeken en het doen van online examens kan ook worden beschouwd als een zeer effectieve praktijk voor het verbeteren van uw codering vaardigheden.
bijdragen aan open source wordt ook zeer gewaardeerd onder ontwikkelaars. U kunt naar GitHub gaan en uw softwareontwikkelaar portfolio opbouwen terwijl u bijdraagt aan andere projecten en uw kennisscope verbreedt.
u kunt ook proberen een mentor te zoeken.
LinkedIn is volgens mij de perfecte plek om in 2020 een mentor te vinden.
je moet je gewoon onderscheiden van de typische man die op zoek is naar een mentor.
als je landt in je toekomstige mentor ‘ s inbox met een bericht dat gaat in de trant van “Hey dear Mike, I’ ve been following you for a while, I love your stuff. Ik zoek een mentor. Ben je beschikbaar?”…de kans is groot dat je niet veel reacties krijgt.
in plaats daarvan, wees geestig. Je bent tenslotte software-ingenieur.
onthoud dit – ” als je iemand kunt laten lachen of lachen, heb je een veel grotere kans om een zinvol gesprek te beginnen.”
Ik heb behoorlijk wat succes gevonden in de volgende regels:
“Hey Mike. Ik wilde mezelf voorstellen op een manier die liet zien dat ik interessant, slim en geestig was — helaas schreef ik dit bericht in plaats daarvan.”
en ga dan verder om uit te leggen waarom u hen een bericht stuurt.
natuurlijk werkt het niet vanaf de eerste keer. In feite, als het werkt de eerste keer, dan noem ik dat een f*cking wonder.
Grit uw tanden en blijf berichten versturen. Je zult uiteindelijk een geschikte mentor vinden. En als je het vindt, zorg er dan voor dat je overbezorgd bent. Bereid zijn om gratis te werken om zoveel mogelijk kennis en vaardigheden te absorberen (persoonlijke gedachten).
uw mentor moet echter iemand zijn die u over 10 jaar wilt zijn (wat heeft het anders voor zin om een mentor te krijgen?).
LinkedIn werkt echter niet altijd voor uw situatie. In dit geval, Google up lokale Ontwikkelaar meetups in uw stad.
of ga naar seminars en wees niet verlegen om met de sprekers in gesprek te gaan.
of misschien naar universiteiten gaan en daar gelijkgestemde mensen vinden. (Dat kan een beetje moeilijk zijn vanwege de huidige covid situatie, maar je begrijpt het punt.)
een andere optie is om te solliciteren naar banen waar je omringd wordt door senior ontwikkelaars en in staat bent om dagelijks kennis te absorberen.
genoeg daarvan.
Het leven van een software-ontwikkelaar vs software engineer
Alle soorten ontwikkelaars zijn waarschijnlijk om te beginnen hun dag met een kop koffie in de hand, terwijl het controleren van hun e-mails.
zodra hun scrum-vergaderingen zijn afgerond, gaan ze verder met hun gebruikelijke taken.
programmeurs (of junior ontwikkelaars) zullen zich hoogstwaarschijnlijk richten op codering.
softwareontwikkelaars (senior ontwikkelaars) kunnen het team controleren om te zien of iemand problemen heeft met het voltooien van een bepaalde taak.
de software engineer (Tech team lead) kan andere vergaderingen bijwonen om ervoor te zorgen dat de doelstellingen en vereisten van het project duidelijk aan het ontwikkelingsteam worden doorgegeven.
na het werk hangen ze samen met vrienden of zitten op hun computer, doen wat freelance werk, kijken naar YouTube-video ‘ s, luisteren naar muziek, of spelen Fortnite om eindelijk die overwinning op de eerste plaats te verzekeren na hun 47e poging.
hun bedtijd routine bestaat uit binge-kijken anime video ‘ s (niet iedereen denk ik lol), het lezen van motiverende boeken Oprah aanbevolen, of scrollen door Hacker nieuws voordat hun ogen uit te geven.