Zhvillues softuer
Kodi Shqiptar i Profesionit
2512.06
Fusha Profesionale
Sipas klasifikimit ISCO 2008
Analistë dhe zhvillues të softueri dhe aplikacioneve (ISCO 251)
Fusha Ekonomike
Sipas klasifikimit NACE Rev. 2
Shërbime të teknologjisë së informacionit (NACE 62)
Përshkrim i përgjithshëm
Përcakton në mënyrë të detajuar specifikat dhe ndihmon drejtpërsëdrejti në krijimin dhe/ose modifikimin e sistemeve softuerike komplekse duke përdorur standardet dhe instrumentat e përshtatshëm. Sigurohet që rezultatet u përgjigjen kërkesave të projektimit teknik dhe janë në përputhje me specifikat e funksionalitetit të pritshëm. Është i informuar mbi standardet e disponueshme, metodat dhe instrumentat që janë të rëndësishme për mjedisin e punës: identifikon përparësitë dhe mangësitë e secilës dhe i zbaton në mënyrë efikase për të sjellë produkte të krijuara mirë, që sigurojnë cilësi të nevojshme të tilla si përshtatshmëria ndaj qëllimit, besueshmëria, efikasiteti, siguria informatike, siguria fizike, qëndrueshmëria dhe vlerë ekonomike të përshtatshme. Zhvilluesi i softuerit krijon projekte të detajuara të cilat mbajnë parasysh fuksionet teknike dhe joteknike dhe kufizimet e mjedisit ku do të bëhet zbatimi përfundimtar. Ai merret me problematikat teknike në projektet e zbatimit të softuereve dhe në fazat e tjera të ciklit të zhvillimit të tyre të tilla si: hetimi, analiza, specifikimi, hartimi, zbatimi, testimi, përditësimi, migrimi dhe mirëmbajtja e programit. Siguron përditësimin dhe prodhimin e dokumentancionit të duhur. Përdor sistemet e menaxhimit të bazës së të dhënave dhe mjetet e përshtatshme për analizimin e statistikave, që lidhen me përformancën e bazës së të dhënave për të kërkuar raporte sipas kërkesës, duke përfshirë këtu edhe propozime për përmirësimin dhe zgjidhjen e problemeve. Interpreton objektet/modelet e të dhënave në skemat e përshtatshme të bazës së të dhënave në përputhje me kufizimet e përcaktuara (si: qëndrueshmëria, siguria, pronësia) dhe prodhon komponentë të objekteve të bazës së të dhënave ashtu siç kërkohet. Ai kryen konfigurimin e bazës së të dhënave dhe mund të ofrojë mbështetje gjatë instalimit dhe përditësimit të programeve të serverit (server software) dhe instrumentave të aplikacionit, duke u siguruar që janë respektuar procedurat e kontrollit të versionit, duke bërë korrigjime dhe duke mbajtur dokumentacionin e furnizuesit dhe përdoruesit. Në rastet kur interesi përqendrohet në sistemet e bazuara në internet, zhvilluesi i softuerit përzgjedh mjetet, modelet dhe standardet e përshtatshme për të krijuar faqe dhe aplikacione në internet. Ai verifikon faqet dhe korrigjon gabimet e kodimit. Përcakton standardet e kodimit për shoqërinë punëdhënëse duke pasur parasysh problematikat e bandës dhe të përputhshmërisë me aplikacionit e navigimit (browser). Përcakton harduarin e duhur për serverin në internet dhe lidhjen e rrjetit për sistemet informatike të përmasave të vogla dhe të mëdha. Përgatit dhe koordinon testimin e moduleve softuer: identifikon problemet dhe shkaqet e dështimeve dhe përmirëson programet dhe konfigurimin e sistemit.
Veprimtaritë / Përgjegjësitë kryesore
Zhvilluesi i softuerit duhet të jetë në gjendje të hartojë zhvillimin e softuerëve dhe këtu përfshihen këto veprimtari: siguron qëndrueshmërinë dhe tërësinë e specifikave të sistemit dhe të arkitekturës në përputhje me kërkesat dhe kufizimet teknologjike dhe të projektimit; vlerëson zgjedhjet teknike që kontribuojnë në arkitekturën e sistemit; strukturon softuerin sipas një modeli me objekte; menaxhon hartimin e softuerit sipas një qasjeje të konsoliduar; gjen zgjidhje teknike efikase ndaj problemeve në hartimin e softuerit; krijon një arkitekturë softueri në përputhje me kërkesat; identifikon objektet me të cilat lidhen vetitë dhe metodat; harton dhe zbaton sisteme menaxhimi të transaksioneve. Zhvilluesi i softuerit duhet të jetë në gjendje të kryejë zhvillimin e sistemit softuer dhe këtu përfshihen këto veprimtari: krijon përbërësit individualë të softuerit në përputhje me kërkesat; teston dhe integron përbërësit duke siguruar funksionimin e saktë të sistemit të përgjithshëm; zbaton zhvillimin e programit softuer dhe të funksioneve; vlerëson zbatueshmërinë e instrumentave CASE dhe IDE; ndihmon në përcaktimin e rregullave, marrëveshjeve dhe të punës në grup; harton dhe verifikon kodin burimor; harton dhe zbaton aplikacione kritike dhe të shpërndara; siguron qëndrueshmërinë e sistemit. Zhvilluesi i softuerit duhet të jetë në gjendje të projektojë dhe të zbatojë baza të dhënash dhe këtu përfshihen këto veprimtari: zgjedh me kompetencë midis llojeve të ndryshme të arkitekturave të bazave të të dhënave (të tilla si relacionale, hierarkike, me matrica, orientuar nga objektet) të përshtatshme për kërkesat e aplikimit; përdor funksionet përkatëse që të pakësojë dhe riorganizojë të dhënat, të shndërrojë të dhënat përmes funksioneve me një rresht të vetëm, të shfaqë të dhënat e përfshira në tabela dhe pamje të ndryshme, të grupojë të dhënat duke përdorur funksionet e grupimit, të nxjerrë rezultate komplekse përmes subqueries dhe të përpunojë të dhënat (komandat DML); prodhon të dhëna të lexueshme përmes SQL-së interaktive; nxjerr të dhënat në format XML; menaxhon manipulimin e të dhënave duke përdorur procedurat e ruajtura, transaksionet, trigger, dhe funksionet e përcaktuara nga përdoruesi; përcakton sigurinë në nivelin e objektit duke përfshirë lejet në nivelin e kolonës, duke përdorur GRANT, REVOKE dhe DENY; përdor ndërfaqet standarde të bazës së të dhënave të tilla si ODBC, JDBC; modifikon objektet në një bazë të dhënash për të mbështetur përsëritjet dhe pamjet e ndara; identifikon dhe zgjidh keqfunksionimet e krijimit të dështuar të një objekti. Zhvilluesi i softuerit duhet të jetë në gjendje të hartojë dhe zhvillojë aplikacionet Web dhe këtu përfshihen veprimtaritë e mëposhtme: zgjedh platformat që mbështesin secilën gjuhë programimi dhe mjedisi; zotëron servlet dhe JSP, që janë përbërësit më të njohur të standardit J2EE dhe përfaqësojnë elementët kritikë të përdorur nga ndërmarrjet për të ndërtuar faqet e internetit për tregtinë elektronike; realizon aplikacione të bazuara në Web duke përdorur servlet Java dhe faqe Java Server (JSP); njeh konceptet dhe përdorimin e API të servlet, si dhe zhvillimin produktiv të aplikacioneve përmes Java Server Pages; njeh shumë mirë COM/COM+/.NET dhe ASP; ndërton aplikacione të bazuara në web duke përdorur ASP ose VBA në një mjedis. NET; krijon module, duke përfshirë përbërësit për ndërveprim midis bazës së të dhënave dhe kontrolleve grafike të ndërfaqes së përdoruesit; ri-përdor objekte dhe kode; zgjedh burimet e duhura për blloqet e të dhënave; garanton sigurinë e aplikacionit; krijon dhe menaxhon aplikacione interneti me module të shumëfishta.
Njohuritë e nevojshme
Mjediset e zhvillimit dhe mjetet (CASE - IDE), aplikacionet kritike dhe të shpërndara, qasjet e hartimit konceptual, qasjet për krijimin dhe mirëmbajtjen e bazës së të dhënave, arkitektura softuer, bazën e të dhënave, komponentët COM, COM+,.NET dhe ASP, menaxhimin e lejeve mbi objektet dhe komandat (GRANT, REVOKE, DENY), identifikimin e zgjidhje informatike, ndërfaqet standarde të bazës së të dhënave (ODBC, JDBC), gjuhët e programimit, manipulimi i të dhënave të një baze të dhënash (procedura e ruajtjes, transaksione, trigger), metodat e programimit softuer, modelet e aplikacioneve internet, modelet e të dhënave, modelin Object Oriented për analizën e sistemeve, platformat e zhvillimit për aplikacione web, parimet e programimit të sigurt, procesi i zhvillimit të softuerit, hartimi dhe zhvillimi e aplikacioneve në web, hartimi i softuerëve sipas një qasjeje të konsoliduar, realizimi i programimit e orientuar nga objekti, njohje mbi sigurinë e aplikacioneve web, njohje mbi sigurinë e bazës së të dhënave, sistemet e menaxhimit të transaksioneve, sistemet operative, SQL (Structured Query Language), Standard J2EE, instrumentat e hartimit të bazës së të dhënave (Oracle Designer, ERWin), teknologjitë web.
Aftësitë profesionale dhe cilësitë e nevojshme
Të zbatojë parimet e hartimit të softuerit. Të zbatojë metodologjitë për përcaktimin e një arkitekture softueri. Të zbatojë teknikat e analizës së fizibilitetit. Të zbatojë teknikat e analizës të orientuara nga objekti për analizën e sistemeve. Të zbatojë teknikat e menaxhimit të përjashtimit. Të zbatojë teknikat e programimit të orientuara nga objekti. Të përdorë gjuhën UML. Të përdorë mjete për krijimin e bazës së të dhënave (Oracle Designer, ERWin). Të zbatojë parimet e programimit të sigurt. Të zbatojë metodologjitë e zhvillimit të softuerit. Të zbatojë procedurat e lëshimit (për specifikimet dhe softuerin). Të zbatojë teknikat e zgjidhjes së problemeve në një sistem operativ. Të përdorë gjuhë programimi. Të përdorë metodologjitë e programimit të softuer. Të përdorë mjetet CASE dhe IDE. Të përdorë mjete bashkëpunimi (p.sh. mesazhe, forume) dhe kontrolli të versioneve. Të përdorë mjetet e matjes së performancës. Të përdorë XML dhe gjuhë të tjera për formatimin e të dhënave grafike. Të zbatojë procedurat e ruajtura, transaksionet, trigger, funksionet e përcaktuara nga përdoruesi dhe shikimet. Të përdorë gjuhën SQL dhe mjetet e tjera për bashkëveprimin me një bazë të dhënash. Të përdorë ndërfaqet standarde të bazës së të dhënave ODBC, JDBC. Të përdorë mjete për krijimin e bazës së të dhënave (Oracle Designer, PowerDesigner). Të përdorë XML dhe gjuhë të tjera për formatimin e të dhënave grafike. Të zbatojë teknika të krijimit të aplikacionit në internet me disa module. Të përdorë ASP ose VBA në mjedisin .NET.
Konteksti i ushtrimit të profesionit
Zhvilluesi i softuareve mund të funksionojë brenda ndërmarrjeve që ofrojnë shërbime informatike apo edhe brenda ndërmarrjeve të mesme e të mëdha që i përkasin ndonjë sektori të interesuar për të përmirësuar proceset përmes zhvillimit të brendshëm të sistemeve informatike. Mund të jetë në marrëdhënie punësimi me kohë të plotë ose si i jashtëm. Zakonisht është me orar fleksibël dhe pjesërisht i lidhur me nevojat sipas projekteve. Një pjesë mbizotëruese e kohës së punës i kushtohet hartimit dhe zhvillimit të sistemeve përmes përdorimit të drejtpërdrejtë të kompjuterit.

Kërkesat për hyrje në profesion

Nuk ka parakushte detyruese, por në nivelin ndërkombëtar kurse të shumta të kualifikimit dhe certifikimit janë zyrtarizuar nga shoqëritë shumëkombëshe në TIK (p.sh. Microsoft, Cisco, etj.) në teknologji specifike dhe/ose sisteme operative. Këto certifikime, megjithëse nuk kanë asnjë vlerë juridike, përbëjnë një kërkesë preferenciale dhe shpesh të detyrueshme për zgjedhjen e bashkëpunëtorëve të rinj në shoqëritë e TIK-ut.

Kualifikimet e nevojshme profesionale

Kualifikime profesionale në nivelin V të KSHK-së. Diplomë në Shkencë Kompjuterike ose Inxhinieri Kompjuterike ose, si alternativë, diplomë e arsimit të mesëm në fushën e informatikës. Kurse formimi profesional, që mund të shoqërohen me certifikata me vlerë ndërkombëtare.

Institucionet ofruese të kualifikimit profesional
Ekziston një ofertë e gjerë dhe e artikuluar në fushat e teknologjisë së informacionit në të gjithë zinxhirin e formimit profesional, arsimit profesional teknik dhe universitar. Universitetet, shkollat profesionale, që kanë specializime në informatikë, ofrues të licencuar apo të akredituar.
Perspektiva e profesionit / Vendet e punës të shpalluara
Kërkesa për këtë profesion është e vazhdueshme, sidomos për njerëz me kompetencë profesionale të dëshmuar
Mundësitë për karrierë
Shpesh futja në punë bëhet përmes një kontrate trajnimi që mundëson një formim të mëtejshëm në vendin e punës. Me kualifikime mund të arrihet në nivele më të larta të analistit dhe projektuesit, apo në pozicione të drejtuesit të projektit dhe skuadrash. Profesionistë të suksesshëm mund të zgjedhin edhe të punojnë me porosi e projekte e të mos jenë në punësim të vazhdueshëm.
Adresa të dobishme
www.arsimi.gov.al; www.puna.gov.al; www.njoftime.com; www.duapune.com; www.profesionisti.al; www.karriera.al