Tag Archives: freelancer

Zivot freelancera

Živeti i raditi kao freelancer

Kao freelancer radim već nekoliko godina, a radnog iskustva imam i u velikom i u malom korporativnom okruženju, tako da se može reći da sam isprobao različite tipove zaposlenja. Iz razloga koje ćemo ubrzo navesti primetio sam da mi freelance način života najviše pogoduje i odlučio sam se držati toga. Ne mogu reći da je to za svakoga, treba biti izuzetno disciplinovan i vredan, takođe treba biti i vrlo strpljiv i moći podneti blage stresove prouzrokovane nestabilnim/neredovnim poslom. Ko uspe da izađe na kraj sa tim moći će zaista da ubire velike pogodnosti samostalnog zaposlenja.

Šta znači biti freelancer?

Vrlo jednostavno, umesto da ste zaposleni u nekoj firmi i u njoj radite poslove za neke klijente, kao freelancer imaćete direktnog kontakta sa klijentima, izuzećete firmu kao “posrednika” i direktno isporučivati rezultat svojeg rada krajnjem korisniku. Kao freelancer takođe proširićete skup svojih aktivnosti, i umesto striktnog fokusiranja na kreiranje i isporuku vašeg proizvoda, morećete i da vodite komunikaciju sa klijentima, potražujete nove poslove, vodite računa o pravnim obavezama i slično. Banalno posmatrajući – vodićete malu firmu za sebe i u isto vreme bićete njen direktor i jedini zaposleni radnik.

Koje su prednosti rada kao freelancer?

Freelancerski život nudi mnoge pogodnosti koje će, sasvim sigurno, svima zvučati vrlo primamljivo, no nemojte zaboraviti da i one dolaze sa cenom.

    Freelancer

  • Samostalnost i samostalan rad – freelanceri su u mogućnosti da organizuju svoje vreme i život na način koji im odgovara, a kojim će moći da ispune sve poslovne obaveze. Opštijim terminima rečeno to znači klizno radno vreme, mogućnost baratanja slobodnim danima po volji, mogućnost odabira načina realizacije projekta i slično. Naravno, pri ovome uvek treba paziti da klijent bude zadovoljan i obaveze prema njemu ispunjene.
  • Recimo, jedna od čestih pojava koje kompanije praktikuju, po mom iskustvu, je nedovoljno dobra organizacija i uposlenost svojih radnika. To ume da dovede do pojava poput praznog vremena radnika (zbog loše organizacije) tokom kojeg on mora da sedi u kancelariji čekajući formalni kraj radnog vremena, ili često ostajanje za prekovremeni rad.
    freelanceri su, najčešće, u mogućnosti da kotrolišu to i time maksimalno efikasno iskoriste svoje radno vreme, ostavljajući dovoljno vremena i za vanposlovne aktivnosti.

  • Radno okruženje – freelanceri mogu da biraju po želji. Neko voli da radi sam, neko voli da bude okružen ljudima (za to postoje HUBovi), neko voli da sedi napolju, poenta je da možete svoje radno okruženje da organizujete onako kako vam najviše prija, uz naravno ograničenja koja se tiču vaše profesije. Takođe, radna okruženja možete i periodično menjati, što takođe ume da razbije monotoniju svakodnevnog posla.
  • Rad van kancelarije – usko povezano sa prethodnom stavkom, moguće je svoj posao organizovati i van kancelarije. Parkovi, kafići, planine, plaže, kolibe su sve mesta gde biste mogli odraditi svoj posao. Internet i povezanost koju on omogućuje danas ljudima pruža sposobnost da rade sa udaljenog radnog mesta, a da se njihovo fizičko odsustvo praktično ne primeti.
  • Putovanje – neretki su freelanceri koji spakuju svoja sredstva za rad, bio to laptop, foto-aparat, alat ili nešto treće, i otputuju negde na određeni period, bio on par dana, nedelja ili meseci. Promena sredine uglavnom ljudima prija, novo okruženje vam pruža nova iskustva i provode, a pri svemu tome svoj posao obavljate na isti način kao da ste kod kuće ili u svojoj kancelariji.
  • Prosečno veća zarada po odrađenom projetku – kada radite kao freelancer često ćete biti u mogućnosti da ugovorite posao kojim biste dobili više novca nego kroz platu u nekoj firmi, a razlog za to je što se firma izuzima kao posrednik između vas i klijenta.
  • Eksperimentišite – niko vam ništa neće nametati, imaćete punu slobodu u izboru načina vašeg profesionalnog rada. Isprobavajte nove stvari, menjajte radno okruženje, alate, usmeravajte se ka drugim, zanimljivijim oblastima rada, menjajte radno vreme, periode odmora itd. Praktično, šta god vam padne na pamet možete da pokušate jer, na kraju krajeva, vi ste sami svoj šef.

Koje su mane rada kao freelancer?

Kao što je već pomenuto, freelancerski posao donosi i pojedine nepogodnosti koje mogu prouzrokovati stres. Naravno, postoje načini kako se izboriti sa svim tim, i o tome će biti reči malo kasnije.

    Freelancer

  • Nestabilnost i nesiguran posao – retki su profesionalci koji mogu sebi da priušte da rade kada požele i da odmaraju kada im se odmara. Najčešća pojava je da se ljudi prihvataju posla kada ga bude (a nekada ga bude i previše), a odmaraju onda kada ne rade ni na jednom projektu. Poslovne prilike freelancerima (mada se ovo može odnositi i na kompanije) umeju da dolaze u talasima, što znači da nekih meseci možete imati puno posla i zaraditi dosta novca od toga, dok drugih meseci nećete imati puno prilika za rad i živećete od ušteđevine. Zbog ovoga je izuzetno bitno da pažljivo baratate svojim finansijama, i da sa te strane uvek budete spremni na mesec-dva-tri praznog hoda.
  • Izolovanost – često freelanceri koji samostalno rade postanu izolovani od svojih kolega i radnog okruženja njihove profesije. Profesionalne kolege umeju da budu sjajan izvor novih, zanimljivih stvari, novih pristupa vašem poslu, tehnologija, alata itd. Ukoliko ste izolovani od njih, morate na drugi način da se informišete o novitetima iz oblasti vaše profesije, da biste se konstantno usavršavali i napredovali kao profesionalac.
  • Prekomerni rad – ovo ume biti direktna posledica kliznog radnog vremena i preopterećenosti projektima. Često freelancerima se desi da rade i više od klasičnih osam sati dnevno, jer se unesu u previše projekata i posao ih uvuče u sebe. Uvek će biti još jedan task da se uradi, još jedna slika da se obradi, još jedan problem da se reši, i osim u retkim situacijama kada je to izuzetno hitno, treba paziti na ovu pojavu jer će negativno uticati na vaš privatni život, a moguće i na zdravlje.
  • Dodatne aktivnosti – kao freelancer morate misliti na neke stvari koje niste puno mislili do sada. Recimo, morate štedeti novac za godišnji odmor, pošto tokom odmora nećete imati primanja (za razliku od rada u firmi), štedeti novac za periode bolovanja, skoro konstantno biti angažovani na traženju novih projekata i novih klijenata i slično. Takođe, recimo socijalno i zdravstveno osiguranje morate sami za sebe organizovati, morate voditi računa i poboljšavati svoju opremu itd.

Šta je izuzetno bitno ako se krenete da radite kao freelancer?

    Freelancer

  • Štedite novac – ne mogu dovoljno da napomenem koliko je ovo bitno. Ušteđevina će vam pomoći da prebrodite periode bez posla bez pretrpljenog stresa, a takođe omogući će vam i da birate projekte koji vam se sviđaju i na kojima želite da radite, jer najčešće kad je problematično stanje sa finansijama niste baš u prilici da odbijate ponude. Budite racionalni, svoja primanja ravnomerno raspoređujte i uvek sačuvajte deo.
  • Samousavršavajte se – ovo je nešto o čemu bi vodio računa HR odeljak firme u kojoj ste zaposleni. S obzirom da freelanceri nemaju nekoga ko će tako paziti na njihov profesionalni razvoj, morate sami da se pobrinete za to. Istražujte nove alate, metode, tehnologije, pratite dešavanja, posećujte konferencije, sajmove i okupljanja drugih vrsta vezanih za vašu profesiju.
  • Disciplina – vrlo je bitno da ste disciplinovani i predani u svom pristupu vašim profesionalnim obavezama. Kada radite kao freelancer ne postoji niko ko će vam stajati nad glavom, nadgledati šta radite i kako, što ume da vas uljuljka u lažnu sigurnost, po principu “lako ćemo”, a što se onda najčešće završi kao nešto što nam je dosta poznato iz studentskih dana – kampanjski rad nekoliko noći pre zadatog roka. Organizujte svoje obaveze, raspodelite ih ravnomerno tokom roka koji ste zadali i ispunjavajte ih redovno pa takvih problema nećete imati.
  • Strpljenje i ljubaznost prema klijentima – uvek budite ljubazni i korektni u komunikaciji sa klijentima. Desiće se da vas izbace iz takta, no ovim pristupom smanjujete mogućnost da izgubite klijenta zbog konflikta, što se može loše odraziti na vaš finansijski plan, ali i rezultovaće povratnom reakcijom u kojoj će vaši klijenti biti ljubazni i obraćaće vam se sa poštovanjem. Kada su odnosi takvi mnogo je lagodnije poslovati i sarađivati.
  • Zaštitite sebe – ukoliko sklapate dogovor sa nepoznatim klijentima (dakle, ne preko neke konekcije), uvek gledajte da obezbedite sebe i svoj rad, bilo da to podrazumeva avansnu uplatu, ili isplatu honorara na nedeljnom nivou, ili neki drugi vid dogovora. Imajte na umu da klijent ne zna ništa o vama lično, ali i da vi ne znate ništa o njemu, pa sa te strane budite obazrivi da bi ste izbegli slučaj gde ćete utrošiti vreme i trud radeći nešto za šta na kraju nećete dobiti novac.

Na kraju, napomenuo bih možda i samu suštinu freelancerskog posla – niko ne treba da gleda šta radite, kako radite, kad i gde radite. Jedino što je bitno je rezultat koji isporučite, budite profesionalni, odadite ga na najbolji mogući način i klijent će biti zadovoljan. A zadovoljan klijent može značiti i dugotrajniju saradnju ili preporuku, što dalje dovodi do konstantnijeg priliva posla čime bi se iskorenila možda i glavna negativna stavka freelancerskog tipa poslovanja. Ako se time vodite verujem da nećete imati problema.

Kako da postanem programer

Kako da postanem programer?

Iz razloga u koje nećemo sad ulaziti, ali koji su uglavnom svima jasni, sve više prijatelja i poznanika me u poslednje vreme pita jedno naočigled jednostavno pitanje – “Kako da postanem programer“?

Pre svega, neophodno je da razjasnimo neke stvari pre početka – programerski zanat je težak i komplikovan, često ni akademski školovani programeri nisu odmah u stanju da se uhvate nekog posla u nekoj od aktuelnih tehnologija bez dodatnog usavršavanja i doučavanja. Učenje programiranja je dug i mukotrpan proces, pogotovo ako do sada niste imali nikakvih dodirnih tačaka sa nekim oblikom programerskog koda. Iz tog razloga budite spremni da uložite izuzetan napor za savladavanje programerskog umeća. To znači da morate biti spremni da izdvojite i po nekoliko sati dnevno za učenje, da ćete često udarati u zid iz razloga koji vam neće biti jasni i da će to učenje iziskivati velike mentalne napore i koncentraciju. Ukoliko niste u mogućnosti to sebi da priuštite, zbog redovnog posla ili nekih drugih razloga, razmotrite mogućnost da svoje obaveze preorganizujete tako da vam to bude moguće. U suprutnom rizikujete da izgubite puno vremena, doživite velike frustracije jer vam nešto nije jasno i zbog njih izgorite u procesu i prestanete sa daljim radom. Onoga trenutka kada prestanete sa daljim radom gurnuli ste sebe dva stepenika unazad, i to dva stepenika koja ste savladali velikim naporom i posvećenošću.

S druge strane, ako se odlučite na ovaj korak i uspete da istrajete, što dalje odmaknete sve lakše će vam ići, i kad savladate neke osnove korišćenjem istih savladaćete i sledeće lekcije, sve dok se jednog trenutka ne osetite dovoljno sposobnim da se prihvatite nekog stvarnog posla. Tog trenutka vaše učenje zaista počinje 🙂 jer nove tehnologije, paradigme i metodike se pojavljuju svaki dan, i što ih više savladate bićete sposobniji i kvalifikovaniji programer. No, u tom trenutku ćete se programiranjem već baviti profesionalno tako da vam bilo kakvo doučavanje neće teško padati.

Druga stvar koju bih želeo da napomenem je, s obzirom na to da danas postoji veliki broj dostupnih tehnologija u svetu programiranja, da ne postoji tačan i jedinstven put kojim treba pristupiti učenju programiranja. Svaki programer će vam reći, na osnovu svog nekog iskustva i škole koju je prošao, da treba da se prvo prihvatite ovoga ili onoga iz tog i tog razloga, i svaki će delom biti u pravu. Na taj način ću pristupiti i ja – plan koji ću izneti dalje je po mom mišljenju najbolji za početnike u programiranju iz razloga koje ću dodatno objasniti. Ovo, naravno, ne znači da je to jedini način, ima drugih, možda će vam neki više odgovarati, biti lakši ili zanimljiviji, na vama je da izaberete jedan pravac i da ga se držite.

Programer

Web za početnike

Tehnologija koju vam ja preporučujem je PHP + HTML/CSS. Razlog je jednostavan – PHP je još uvek najrasprostranjenija web tehnologija danas, bilo da planirate da radite kao freelancer ili da se zaposlite u nekoj firmi, kao programer početnik, bez portofolioa, najlakše ćete naći posao u PHPu jer ga ima puno na tržištu. Druga bitna stvar je to što se pomenute tehnologije koriste najčešće za izradu web sajtova, a to su najmanji i najjednostavniji projekti od kojih bi početnici trebalo da krenu. Takođe, to su i projekti koje jedan programer može samostalno da odradi, tako da vam za to nije neophodna pomoć i tim ljudi. Naravno, postoje i mnogo složeniji i kompleksniji sajtovi koje pojedinac ne može sam da obuhvati, ali o tome nećemo ovom prilikom.

Korak prvi – HTML/CSS

HTML i CSS su tehnologije putem kojih se vrši vizuelni prikaz sadržaja na web sajtovima. Svaki sajt koji otvorite u svom browseru (kao i ovaj koji trenutno čitate) je iskodiran putem HTML i CSS direktiva.
HTML je skraćenica za Hypertext Markup Language, i u suštini to je koderska sintaksa putem koje se pozicioniraju i ispisuju elementi na web stranici.
CSS je skup pravila i direktiva kojim se dizajniraju elementi neke web stranice. Putem CSSa se formatiraju tekstovi, bira font i veličina teksta, postavljaju margine, boje elementi itd. HTML i CSS su vrlo usko povezani, praktično ne mogu jedno bez drugog, i iz tog razloga učenje i svi materijali i kursevi im pristupaju kao jednoj celini.

Korak drugi – PHP

Web programerSkoro svaka web stranica sadrži statički i dinamički sadržaj. Statički sadržaji su oni koji su uvek isti za sve posetioce sajta, na primer uvek isti logo se prikazuje u vrhu stranice, uvek isti tekst u futeru i slično. Dinamički sadržaj je ono što se menja od posetioca do posetioca. Primera radi, to može biti nešto vrlo prosto poput današnjeg datuma (gde će danas pisati jedan tekst, a sutra drugi), do onih kompleksnijih stranica poput korisničkog profila (ukoliko neki sajt ima opciju registracije i prijavljivanja), raznoraznih anketa, korisničkih korpi kod e-commerce sajtova itd.

Dinamičkim sadržajima na webu se upravlja putem PHPa (ili nekog drugog programskog jezika, opcije su zaista brojne). Možemo kao primer uzeti stranicu rezultata pretrage nekog sajta, pošto je ona uvek stranica sa dinamičkim sadržajem jer zavisi od toga koje ključne reči pretražujemo. Kako to najčešće ide, korisnik ukuca ključne reči i pritisne “Pretraži”, nakon čega PHP program prihvata te ključne reči, kroz svoju implementiranu logiku pretražuje bazu podataka i nakon toga sortira i formatira rezultate pretrage tako da se oni mogu lepo ispisati kroz HTML/CSS. Uopštenije govoreći, PHP služi za sve moguće vidove izračunavanja i postavljanja logike funkcionisanja sajta, upravljanja korisnicima i njihovim sesijama.
S druge strane, PHP je jedan sasvim prosečan programski jezik u kojem postoji 90% komandi i akcija koje postoje i u drugim programskim jezicima, te ako naučite logiku i principe programiranja u PHPu, to znanje moći ćete da iskoristite i u drugim jezicima.

Korak treći – Javascript

Što nas dovodi do JavaScripta. Odmah da razbijemo iluzije – JavaScript nema veze sa programskim jezikom Java, iako delimično dele ime. JavaScript je interni programski jezik svakog web browsera putem kojeg se mogu vršiti neke opreacije na stranici bez kontaktiranja servera. Primera radi, JavaScript se koristi za sve one fine vizuelne efekte na web stranicama, slideshow, pop-up prikaz fotografija, validaciju podataka pri registraciji, dropdown meni funkcije i slično. Naravno, on se može koristiti i za mnogo naprednije stvari, ali će svima za početak biti dovoljno jednostavno poznavanje JavaScripta za implementaciju nekih već gotovih rešenja, kojih ima puno. Danas postoji veliki broj gotovih JavaScript biblioteka, među najpoznatijim su jQuery i Prototype, putem kojih možete implementirati neko od rešenja dosta jednostavnim pozivima u JavaScript kodu. Vremenom ćete, kako sve više budete stasavali kao programer, pisati i neka sopstvena rešenja, a ono što je verovatno najbitnije – znanje koje ste stekli tokom učenja PHP-a će vam dosta koristiti i ovde jer su, kao što je već pomenuto, neke osnovne sintaksni i logički konstrukti isti za skore sve programske jezike.

Front end” i “back end” programer

ProgramerU web programiranju, onako dosta generalizovano posmatrano, programerski posao i zadatke možemo podeliti u dva dela – “front end” i “back end“.

Front end” developeri najčešće imaju jedan tipski posao, a to je kreiranje web stranica na osnovu izdizajniranih rešenja. Drugim rečima, web dizajner nacrta prototipove stranica, kako one treba da izgledaju i taj materijal dostavi front end developeru koji od toga kreira HTML/CSS kod, time praktično spremajući dizajn za web sajt.

Back end” developeri, s druge strane, su oni koji su fokusirani isključivo na PHP i one akcije i operacije koje se dešavaju “iza kulisa”, uglavnom rade sa gotovim izdizajniranim web stranicama koje samo pune podacima koji su rezultati njihovih programa.

Ovo je sve bitno znati jer vi već nakon savladavanja znanja iz HTML/CSSa i nekih osnova JavaScripta možete da prihvatite jedan “front end” posao, i da se kroz njega dalje usavršavate, ali i da počnete da stičete nagradu za uložen trud. Profesionalno iskustvo je izuzetno bitan deo procesa učenja i sazrevanja jednog programera, pa vam ovaj “međukorak” može dodatno koristiti – pored toga što ćete zaraditi nešto novca, steći ćete iskustvo rada sa klijentima, osetićete šta to znači i kako to izgleda kada vam neko šalje web development zahteve, i kako je raditi pod pritiskom i imperativom rezultata, koji umeju biti ponekad malo stresni, ali su izuzetno efikasni u vašem procesu učenja. Stvari koje tada postignete i naučite tom prilikom pamtićete jako dugo i primenjivaćete ih bez muke u budućim projektima.

Materijali

S obzirom na popularnost ovih tema materijala za učenje ima neograničeno puno. Mnogi su i besplatni, neki se plaćaju, neki su samo pisani, neki interaktivni, izbor vam je zaista širok i možete odabrati opciju koja vam najviše odgovara.

Moj savet vam je da uzmete po jednu knjigu za obe oblasti (HTML/CSS i osnove JavaScripta najčešće idu u komadu, PHP ide zasebno), i da radite po njima paralelno uz neke od interaktivnih kurseva na webu.
Pri izboru knjiga konsultujte Amazon i pročitajte iskustva kupaca, to će vam pomoći pri odabiru one prave, a sužavanje izbora možete uraditi u Google pretragama.

Interaktivnih kurseva takođe ima veliki broj, moj prvi predlog će uvek biti CodeSchool koji ima odvojene kurseve za HTML/CSS i JavaScript, a organizacija kursa im je jako zabavna i jednostavna. Tutsplus sajt je takođe opcija gde možete naći veliki broj besplatnih kurseva, a recimo Pluralsight je opcija koja se plaća ali sadrži ogroman broj oblasti koje nisu isključivo sužene na IT. Codecademy je još jedna od opcija koja takođe nudi besplatne kurseve.

O kursevima i školama programiranja

Kursevi i škole programiranja mogu da vam pomognu u celom ovom procesu, ali nisu neophodni, i pre svega, nisu dovoljni! I pored kurseva, časova i vežbi najveći deo napora morate vi sami uložiti u samostalan rad i vežbanje. Bez toga ne postoji kurs koji će vas spremiti za ono što želite.
Sa te strane, ja nisam pobornik takvih kurseva jer koštaju puno a većinu materijala imate dostupno online, neke čak i u vidu video tutorijala i vežbi, organizovanih u kurseve. No ako mislite da bi vam školski rad sa tutorom pomogao, pohađanje nekog kursa je dobar način da se učvrsti kontinuitet u vašem radu i učenju, a to je opet bitna stavka za konačan uspeh.

Ukoliko se ipak odlučite za pohađanje, birajte kurseve koji pokrivaju što veći broj oblasti i koji su dugotrajni. Po mojoj proceni, osobi koja nema programerskog predznanja će trebati oko godinu dana i mnogo sati rada da bi postala programer sposobna da odradi neki posao samostalno. Kursevi koji zbijaju gradivo u kratak rok ne pokrivaju dovoljno široko oblasti koje obuhvataju i iz njih ćete izaći sa nekim vrlo ograničenim znanjem, nedovoljnim za bilo kakav profesionalni rad.