Components

7 Vaardigheden voor IT Fame and Fortune

Meet Horizon – Apex Legends Character Trailer

Meet Horizon – Apex Legends Character Trailer
Anonim

Met de economische neergang op ieders brein, aannames over werkzekerheid komen in vraag en iedereen begint zijn vaardigheden opnieuw te onderzoeken. Er worden veel waardevolle taken uitgevoerd in IT, maar sommige vaardigheden worden zelfs nog meer gewaardeerd dan andere. Met alle ontreddering die we ervaren in IT, zijn er veel nieuwe vaardigheden die veel gevraagd zijn of snel in waarde toenemen. Hier zijn mijn Top 7-vaardigheden die je kunnen helpen om niet alleen die baan te behouden, maar ook om een ​​nog betere nieuwe baan te krijgen, waardoor je kunt werken aan de volgende generatie IT-toepassingen en softwareproducten in het tijdperk van online webtoepassingen.

Webapplicatieontwerp: Ik heb een passie voor geweldig productontwerp en mensen die dit heel goed weten te doen. Het ontwerpen van een geweldige web-applicatie is heel anders dan het ontwerpen van een geweldige website. Ze zouden in mijn boek niet anders kunnen zijn. De meeste UI-ontwerpers moeten kunnen werken onder uitdagende omstandigheden - de meeste mensen om hen heen zullen niet begrijpen wat ze doen, hoe ze het doen, wanneer ze moeten worden binnengebracht, welke informatie en bronnen ze nodig hebben en hoeveel ze eraan besteden neemt om niet alleen een bruikbare UI-ontwerp te maken, maar ook een nuttige. Je moet een vindingrijk persoon zijn, iemand die zichzelf kan invoegen in de gesprekken tussen architecten, ontwikkelaars, gebruikers, QA, testen, productbeheer en alle anderen die er zijn en denken dat ze een betere UI-muizenval kunnen ontwerpen. UI-ontwerp is als NFL-voetbal: iedereen kan een goed spel herkennen als ze het zien, maar slechts weinigen kunnen het spel daadwerkelijk spelen. En we hebben allemaal een mening hierover.

Een van de beste kritieken die ik kreeg van een klant die naar mijn product keek, was: "Deze gebruikersinterface ziet eruit als een ontwikkelaar die het heeft ontworpen." Dat zei vrijwel alles over wat ze vonden van het gebruiksgemak van die applicatie. Als u een ontwikkelaar bent die denkt dat u misschien oog heeft voor UI-ontwerp, kan dat een beledigende verklaring van een klant zijn. Misschien ben je een ontwikkelaar die een goede, fatsoenlijke of adequate UI-ontwerper is, maar je bent veruit de zeldzame uitzondering. Als u denkt dat UI-ontwerp eenvoudig is en niet begrijpt waar het allemaal om draait, hebt u zeker hulp nodig van een UI-ontwerper.

Als u uw vaardigheden als UI-ontwerper wilt laten groeien, zoekt u gebruikersgroepen in informatieontwerp, bouw een aantal vaardigheden op met menselijke factoren, leer hoe u gebruikersinterviews plant en uitvoert, ontwikkel gebruikerspersoonlijkheden en voer goed ontworpen producttestsessies uit met gebruikers. Het belangrijkste is om te beginnen met te weten wie de gebruikers zijn voor de software die u aan het bouwen bent. Het is verbazingwekkend hoe vaak weinig bekend is over de echte gebruiker van een product of IT-systeem.

Ontwikkeling van webapp: als je applicaties schrijft die afhankelijk zijn van een zware of geïnstalleerde client, moet ik je geloven ' zijn waarschijnlijk niet in de voorhoede van waar de ontwikkeling van toepassingen wordt geleid. Webtoepassingen zijn waar software voor staat, met een scheutje SaaS en PaaS (platform-as-a-service) om op te starten. Het afleveren van applicaties via de webbrowser is waar de meest interessante applicatie-ontwikkeling plaatsvindt, of dat nu met ASP.NET-applicaties is, Sharepoint portal-applicaties, LAMP (Linux Apache MySQL PHP), Java of Ruby on Rails. Voeg daarbij nog de mogelijkheden van PaaS-providers, zoals Amazon, Salesforce / Force.com en Google, en dingen worden best interessant.

Webinterfaces in applicaties kunnen grappig zijn. Is de webinterface iets dat op een goed ontworpen toepassing is gepropt? Leidt het Web UI-ontwerp tot de rest van het applicatieontwerp? Wat is het eerst ontworpen, de back-end of de gebruikersinterface? Welnu, het is waarschijnlijk een combinatie van beide, met één zeer belangrijke drijffactor. 7 Habits productiviteitsgoeroe Steven Covey zegt: "Begin met het einde in gedachten." Een beetje het idee dat je niet verdwaalt als je niet weet waar je naartoe gaat. Ik heb Covey's gezegde aangepast: Begin met de eindgebruiker in gedachten. Het creëren van die effectieve balans van front-end en back-end ontwerp in een webapplicatie is een kunstige vaardigheid om te worden gekoesterd door die webapp-ontwikkelaars die niet alleen hebben ontdekt hoe ze dat kunnen vinden evenwicht, maar ook anderen in het team helpen om het te zien, waarderen en waarderen.

Het aantal web-apps dat we de komende maanden en jaren zullen maken, zal alleen maar toenemen. Teams en technische leiders die dit goed kunnen, zijn hun gewicht in goud waard. Doe dit goed en je hebt de keuze uit projecten en bedrijven om mee te werken.

Benutting van de virtualisatie: Ik sprak onlangs met een aantal collega's over de financiële drivers achter virtualisatie. Er zijn een aantal manieren om dit aan te tonen, en het eerste wat ik zou zeggen is; Virtualisatie is de beste vriend van een CFO (ik sprak hierover een tijdje terug op mijn podcast.) Het tweede ding dat ik zeg is: Er zijn drie soorten CFO's: degenen die vragen IT hoe virtualisatie geld kan besparen, degenen die door IT zijn getoond hoe virtualisatie geld kan besparen, en ten slotte mensen die op zoek zijn naar hun volgende IT-hoofd.

Wilt u punten scoren met het bedrijf? Maak grote vooruitgang in hardware-, datacenter-, software- en faciliteitenbesparing door overal waar mogelijk gebruik te maken van virtualisatie. Het is niet altijd gratis, met name om de beheermogelijkheden te krijgen die u nodig hebt om virtualisatie op elke schaal in te zetten, maar de harde kostenbesparingen ten opzichte van alleen de normale hardware-aankopen zouden de softwarekosten op een consolidatie-ROI gemakkelijk kunnen rechtvaardigen. Neem dat nu op het volgende niveau en laat zien hoe je via virtualisatie load balancing, failover, disaster recovery en andere mogelijkheden kunt krijgen, en je CFO zal je een ere houder van het Gouden Spreadsheet maken voor het volgende Green Visor accountingconventie.

Virtualisatie is niet alleen voor het datacenter. Als applicatie-ontwikkelaar kunt u plannen hoe u gebruik kunt maken van virtualisatie in uw applicatiearchitectuur, inzetopties, unit testing en QA-testen. Virtualisatie zorgt voor een geweldige sandbox bij het testen van ontwerpideeën, het simuleren van netwerk- en serverconfiguraties en het laden van grote aantallen gesimuleerde eindgebruikersmachines. De QA-voordelen alleen al maken net zo'n overtuigend argument voor de kostenbesparingen van virtualisatie als in het datacenter. Als uw QA- en labomgevingen groter worden in plaats van kleiner, doet u iets verkeerd.

Als u op zoek bent naar een plek om te beginnen uw tanden te zetten in virtualisatie, download dan de gratis versies voor Hyper-V, Xen en VMware. U zult snel zien dat er behoefte is aan extra beheermogelijkheden, maar de gratis dingen zijn geweldig om mee te beginnen.

SaaS multi-tenant en schaalbaarheid: SaaS is waar het op is, of u nu spreekt over on-demand-applicaties van bedrijven of door het web geleverde producten en services. Het is momenteel een van de meest populaire gebieden in onze branche. Maar SaaS brengt een aantal nieuwe uitdagingen met zich mee die voorheen niet werden aangepakt, wat leidde tot een tekort aan vaardigheden in nieuwe gebieden. Waarschijnlijk de meest onheilspellende is wat wordt aangeduid als multi-tenant: de mogelijkheid om meerdere klanten (bedrijven) volledig te ondersteunen binnen één gehoste online applicatie.

Wat is het probleem, zegt u? We ondersteunen al complexe organisatiestructuren in onze applicaties? Welnu, onthoud dat u dit waarschijnlijk doet binnen één onderneming of SME / SBM. Stel je nu de aanpassing van de complexe behoeften van honderden of duizenden bedrijven voor. Of, als uw service aan particulieren wordt verkocht, gaat het om het omgaan met die vereisten voor duizenden kleine klanten. Multi-tenant betekent ook dat alle configuratie-opties kunnen worden gewijzigd door de gebruiker. Er zijn geen systeemstandaarden die voor alle gebruikers werken, omdat we niet allemaal een grote gelukkige zakelijke familie zijn. Er zullen nog veel meer configuratie-opties moeten worden getoond die gebruikers kunnen aanpassen aan hun eigen individuele of organisatorische behoeften. De derde uitdaging die ik zie in multi-tenant-omgevingen is schaalbaarheid. Beeldvorming dat u al die klanten op uw software uitvoert. Hetzelfde ontwerp van database, clusterontwerp en transactiebeheer (om een ​​paar problemen te noemen) werkt mogelijk niet op de schaal van een SaaS-service.

Als je deze problemen begrijpt en nog beter, ze hebt opgelost in een gebruikte SaaS-applicatie, behoor je tot de elite. Zelfs als je het nog niet als een SaaS-applicatie hebt gedaan, zijn dezelfde vaardigheden en ervaringen op het gebied van systeem- en softwarearchitectuur de basis om van te bouwen om door te gaan naar de SaaS-omgeving. Als uw volgende generatie toepassingen webtoepassingen zijn en mogelijk een SaaS-component bevatten (of volledig SaaS zijn), is dit het moment om die vaardigheden aan te scherpen en anderen te laten weten dat u ze hebt. Het zal je veel waardevoller maken.

Schrijf veilige code: Elke ontwikkelaar schrijft code, maar niet elke ontwikkelaar schrijft beveiligde code. Hoewel het geen vaardigheid is die veel managers (of anderen overigens) begrijpen, kunnen ontwikkelaars die niet alleen veilige code kunnen schrijven, maar ook mentor zijn en andere ontwikkelaars leren hoe ze beveiligde code kunnen maken, een onschatbaar teamlid zijn.

Schrijven van beveiligde code is meer dan alleen zorgen te maken over obscure bufferoverloopaanvallen of raceomstandigheden. Je hebt nu duidelijk mijn thema gezien dat steeds meer applicaties webapps zijn, en in toenemende mate worden die in veel gevallen ook SaaS-applicaties. Webaanvallen lopen voorop bij risico's waarbij goede, veilige software-ontwikkelingspraktijken moeten worden toegepast. SQL-injectie, cross-site scripting, magische URL's en verborgen formulieren, voorkoming van datalekken, het beveiligen van webservices en slechte implementaties van SSL zijn allemaal voorbeelden van beveiligingsproblemen die door softwareontwikkeling moeten worden overwogen en die geschikt zijn voor het schrijven van beveiligde code.

Als u ben op zoek naar goede bronnen om je op weg te helpen bij het maken van veilige code. Ik zou twee boeken aanraden 19 Deadly Sins of Software Security van Howard, LeBlanc en Viega en Web Services Security van O'Neill.

QA-automatisering en -statistieken: Als u een QA-persoon bent, hebt u een speciale plaats in mijn hart. Als u een QA-persoon bent die leeft om QA-testen te automatiseren, meetwaarden vastlegt en die gegevens gebruikt om softwareontwikkeling en QA-praktijken te verbeteren, dan hebt u een speciale plaats in de hemel! Zoals je kunt zien, hecht ik veel waarde aan QA-vaardigheden van hoge kwaliteit, in het bijzonder aan ervaren beoefenaars die niet alleen al die vervelende softwarefouten tegenkomen voordat er software de deur uitgaat, maar ook weten hoe ze het testen en het gebruik van de software kunnen automatiseren. opgedane kennis om te verbeteren hoe software wordt gemaakt in het proces. Softwareontwikkelaars zijn misschien de hoofdzangers en gitaristen in de band, maar zoals elke ervaren muzikant weet, zijn het de drums en bas die de band maken of breken. Ik zeg het graag; hou van ontwikkelaars en vertrouw op QA. (Eigenlijk hou ik ook van QA-mensen.)

Wil je jezelf onmisbaar maken als een QA-persoon? Automatiseren, automatiseren, automatiseren. De beste projecten waaraan ik heb gewerkt, hadden tests tot ver in de bovenste 90% geautomatiseerd en tests werden honderden en honderden keren uitgevoerd voordat de software werd verzonden. Nu, dat is wat ik regressietesten noem! Nieuwe functionaliteit kan handmatig worden getest, maar tests werden altijd geautomatiseerd voordat het ontwerp werd uitgevoerd op de volgende softwareversie. Dat is de enige manier waarop CTO's en VP's van engineering ooit in slaap kunnen vallen. Ga nu een stap verder en voorzie uw collega's, technische leiders en management van lessen en inzichten die u behaalt met al die tests en u zult de status van nirvana in mijn boek bereiken. De kennis die in al die testresultaten zit, kan zelfs de beste ontwikkelingsorganisaties naar nieuwe hoogten brengen.

CERTS, iedereen welkom: Ik wil zeggen; Je kunt nooit fout gaan met CERTS. Dat geldt zowel voor de ademmints als de technische certificeringen. Iedereen wil graag ruzie maken over de waarde van certificeringen: of de A + certificering wordt gewaardeerd; als het de moeite waard is om een ​​MCTS te krijgen versus voor de volledige MCSE te gaan; als het hebben van een CISSPs hetzelfde gewicht heeft als vroeger; en hoeveel managers waarde hechten aan certificeringen ten opzichte van werkervaring. Maar aan het eind van de dag zou het het verschil kunnen maken tussen het krijgen van de baan boven de andere uiteindelijke kandidaat. Het is geen kwaad om die certificering te behalen!

CERTS laat zien dat je iets hebt bereikt dat laat zien dat je een bepaald niveau van vaardigheden hebt, en het is aangetoond door te voldoen aan de kwalificaties van de certificering. Ze laten je niet per se het vliegtuig besturen, maar je hebt misschien een betere kans om aan boord te gaan met een IT-organisatie. Je bent altijd te waardevol om te verliezen of te verbruiken als de economische tijden moeilijk zijn.

Als je meer wilt weten over Microsoft-certificeringen, ga dan naar de sectie Leren van de Microsoft-site voor certificeringen. Ik zou ook enkele certificeringstrainingsboeken van Microsoft Press aanraden, zoals de Windows Server Administration Training Kit van McLean, de Windows Vista Client Training Kit van McLean en de IIS (Internet Information Services 7.0) Resource Kit van Volodarsky.