Zdravo.

Ja sam Amel Rahmanović. Živim u Donjem Vakufu.

Uvijek sam bio zainteresovan za informatiku te težim stalnom usavršavanju svojih znanja. Upisao sam Fakultet Informacijskih Tehnologija i trenutno sam na trećoj godini.

Posjedujem znanja iz ove oblasti a ona su:

1. Desktop operativni sistemi

Instalacija, konfiguracija. Nije dovoljno samo instalirati neki sistem i reči to je to. Mnogi mogu da instaliraju sistem i to je dobro ali nakon nekog perioda se javi potreba da izgovore „joj kako mi je spor računar“. Gdje se javlja potreba za dodatnom konfiguracijom sistema. Instalacije mogu biti bazirane na Windows (7, 8, 10) ili Linux (Ubuntu, CentOS, Kali itd.).

2. Server operativni sistemi

Oni koji rade kao server administratori shvataju kolika je odgovornost imati ovu privilegiju. Lahko je instalirati Server OS. Moje znanje i iskustvo nije se baziralo samo na jednom OS-u pa vrijedi pomenuti da znam instalirati kao i podignuti servise kao i sigurnost za: Windows Server, Linux Server (CentOS, Ubuntu ...), UNIX (FreeBSD, FreeNAS), servisi "IIS/APACHE, FTP, Mail Server, DNS/BIND ...". Najveća mana je ta kad se desi da je server zaražen i kad je napadač preuzeo kontrolu nad istim. Ima mnogih vrsta mana a jedan od njih je da se sa servera šalje SPAM što uzrokuje da nam često na e-mail dolaze poruke raznog sadržaja koji nam nije namijenjen. Radio sam u jednom datacentru gdje sam ga održavao pa shvatam kolika je odgovornost ove grane informatike. Danas posjedujem svoj lični server.
*Imam iskustva sa instalacijom, podešavanjem kao i održavanjem cPanel-a i Plesk-a.
*NIC Teaming. Ukoliko imamo na serveru više od jedne mrežne kartice i više od jednog switcha i želimo da imamo sigurnost sa mrežnog aspekta da ako nam iz nekog razloga prestane raditi neki switch ili se desi fizički kvar na samom kablu ili switchu a želimo i dalje da server bude online e u tom slučaju koristimo NIC Teaming.
*SSL certifikati od kupovine do instalacije.

3. Baze podataka

Ako imalo dublje pogledamo u informatiku dolazimo do zaključka da su podaci smješteni u neku bazu podataka. Posjedujem znanja iz ove oblasti a ona su:
a. T-SQL
b. SELECT, UPDATE, DELETE, INSERT
c. Relacioni model
d. Kreiranje auto backup
e. Optimizacija tabela i upita
f. Migracije
g. Join
h. Backup/Restore

4. ASP.NET

Izrada web stranica po zahtjevu naručioca. Naravno kombinuje se ASP.NET tehnologija sa MSSQL. Bitno je pridodati da bez obzira na tehnologiju koja se koristi da se mora poznavati i HTML, CSS, JavaScript koji su obavezni dodaci svakoj web aplikaciji. Neki od mojih gotovih projekata će biti prikazani u nastavku.

5. MVC

Jedna od modernih tehnologija za prikaz web stranica. Naravno i ova tehnologija je bazirana na ASP.NET. Bitno je napomenuti da je MVC iskoristiv i kod ostalih tehnologija za izradu web stranica.
*AJAX
*ASP.NET Razor

6. Windows programi

Ukoliko Vam nije potrebna web stranica ili želite da imate i web stranicu i windows program e ovo je ta stavka. Izrada windows programa baziranim na Windows Forms + Microsoft SQL Server. Izrada programa po narudžbi što ukazuje da takav program ne postoji dok se ne napravi i ne može se kupiti na internetu.

7. Mreže

Ako posjedujete svoju mrežu ili je želite realizovati od nule. Znanja koja posjedujem su:
a. Kablovi vrste „straight through, crossover“, cat 5E/6, optic cable
b. Krimpanje kablova
c. Mrežni uređaji „Router, Switch, AP, Bridge, Hub“
d. Donošenje odluke o propusnosti „10/100 ili 1 000 ili više Gbps“ razlika je u tome što je veća propusnost i uređaji su skuplji
e. Odabir protokola za komunikaciju „Statičke rute, RIP, EGRP, EIGRP, OSPF ...“
f. Rad sa optičkim kablom i uređajima
g. Sigurnost i zaštita mreža
h. PPPoE Server "RADIUS"
i. Limitiranje brzine po IP adresi
j. Servisi: DHCP Server, DNS, Traffic Analysis, IP Leases ...

8. C & C++ & C#

Ako se pitate kako se izgradi neki program e to je taj C++ koji kasnije dodatnim znanjem prelazi u C#. Dajem instrukcije iz C++ programskog jezika a oblasti su:
a. Vrste podataka "int, double float, string, bool, char ..."
b. Iskazi "if, if-else"
c. Petlje "for, switch, do-while, while"
d. Strukture
e. Rekurzija
f. Statički i dinamički tipovi podataka
g. Nizovi "jednodimenzionalni, višedimenzionalni"
h. Klase
i. Polimorfizam
j. Algoritmi pretraživanja i sortiranja
k. Surogat klase

9. Visual Basic

Ovaj programski jezik je jako zastupljen u informatici. Potisnuli su ga svi noviji programski jezici ali i dalje je aktuelan i može se koristiti. BASIC (Beginners All–Purpose Symbolic Instruction Code) je programski jezik koji je pretežno povezan grafičkim interfejsom. VB spada u grupu RAD (Rapid Application Development) što znači da je zamišljen kao alat za brzo kreiranje i izradu programa.

10. Statistika i vjerovatnoća

Mnogi bi rekli da je statistika zanemariva u poslu tako i u segmentu informatike ali je neizostavni dio svakodnevnice. Učimo još od školski dana koji će nam biti prosjek na kraju školske godine. Ako gledamo neki dio firme koji se bavi prodajom onda je taj neko ko upravlja u pozadini sa artiklima ima proračune koliko je to proizvoda maksimalno dozvoljeno kupiti pa do prosječne potrošnje pa i do minimuma koji može biti na skladištu nakon čega je potrebno izvršiti ponovnu nabavu. Statistikama se može doznati i koliko se predpostavlja da će se prodati proizvoda u narednom periodu. Proračunom možemo da dobijemo i to da li firma napreduje ili u suprotnom pada po pitanju poslovanja.

11. Failover Clustering

Šta je clustering? Ako nam se pojavi potreba da se od nas traži da je neki servis online bez obzira da li je pao server iz nekih razloga „update+reboot, pregorio server, pregorio HDD, potreban update programa ...“ dolazimo do zaključka da će sever bez obzira biti offline. Zamislite da idete na bankomat da dignete pare a podaci koji su smješteni na nekom serveru padne iz nekog razloga! Pao server = poteškoće u poslovanju = gubitak kapitala. Clustering služi da bi ublažio sve ovo. Kad server na kojem je podignut neki servis padne onda preuzimaju ostali nodovi njegovu radnju i nema gubitaka. Sve to zvuči idealno ali za kreiranje jednog clustera potrebno je ~5 servera.
Mali dio toga je prikazan na slikama. Opširnije

12. RAID - redundant array of inexpensive disk

Kada imamo više od jednog HDD a želimo iz nekih razloga da imamo brži rad diska, rezervnu kopiju ako bi disk pregorio sam od sebe ili se desio nenadani kvar. Kad imamo sistem za koji moramo da garantiramo pouzdanost i dostupnost tu uskače RAID. Ako imamo npr. neki sistem na kojem nam treba neki kapacitet koji standardni HDD ne može da ponudi onda su tu ujedinjavanja svih diskova da rade kao jedan. Raid konfiguracija ima jako puno i bitno je da prije same konfiguracije odabrani naj idealniju kombinaciju za sistem a ona zavisi od mnogo faktora.

13. UML - Unified Modeling Language

Kada imamo jako opširne programe potrebno ih je osmisliti kako se ne bi odlutalo od same ideje kao i zahtjeva korisnika. Kad treba napraviti kuću za cuku nije nam potreban plan. Uzmemo par daski, testeru, eksere. Ako uzmemo nešto kompleksnije a to je kuća za čovjeka onda nema treba detaljan plan izrade iste. Ako uzmemo jos kompleksnije a to je izrada jedne zgrade onda taj projekt postaje jako ogroman sa puno dokumentacije. To isto se radi i kod izrade programa. Što je program manji ne treba ništa puno sjedne se i napravi a što je program kompleksniji iza sebe ima jako puno dokumentacije kao i analize i dizajna.

14. Web API + Windows Forms + ASP.NET + ASP.NET MVC + Windows Phone + Android Phone

Aplikacijsko programsko sučelje (engl. application programming interface, API). API se koristi kad želimo da komuniciramo sa mobilnim platformama ali se može iskoristiti i kad želimo svoje podatke učiniti dostupne drugim firmama ili aplikacijama. API komunicira sa bazom podataka a neke od poznatijih su: MS SQL, MySQL, PSQL. API se poziva u aplikacijama korištenjem HTTP metoda.

15. VISUAL SVN SERVER "VisualSVN Server"

Visual SVN Server služi kada imamo ogromne projekte koji zahtjevaju paralelno programiranje više od 1 programera. Kako je poka. SVN koristim još od 2014 godine aktivno.


Ukoliko ste zainteresovani za neku od stavki tu su kontakt podaci pa izvolite.