Blog

Blog je mesto gde možeš da čitaš o navikama IT-evaca, najavama IT dešavanja, aktuelnostima na tržištu, savetima i cakama kako da uspeš na ovom dinamičnom polju.
Mi pratimo trendove, na tebi je da se zavališ u fotelju i čitaš :)

Blog DevOps
Tag: DevOps (56 rezultata)
30.01.2024. ·
7 min

Trendovi u IT industriji - pogledajte najvažnije poruke sa 9inspiration konferencije (deo 1)

IT konferencija 9Inspiration, koju kompanija Levi9 organizuje po drugi put, već je prepoznata kao odlična prilika da se od priznatih eksperata sazna šta je najnovije i najvažnije u njihovom poslu.  U Jugoslovenskom dramskom pozorištu su se zbog toga i okupili krajem septembra prošle godine, svi zainteresovani da isprate predavanja  domaćih i stranih stručnjaka, u oblasti IT-ja. Ova konferencija polako postaje tradicionalna platforma za razmenu znanja, iskustava i povezivanje IT -jevaca koji žele da prate svetske trendove.  Ako biste pitali zaposlene u Levi9 rekli bi vam da su učenje i umrežavanje ključni faktori za postizanje ličnog i profesionalnog uspeha. Zato je cilj konferencije 9inspiration da pored IT profesionalaca, pre svih developera, DevOps inženjera, IT i Product menadžera, i šira IT zajednica dobije priliku da obogati svoje znanje, usavrši veštine i uspostavi vredne konekcije u zajednici.  Eksperti prenose iskustvo  A kako je to tačno izgledalo? Serijal predavanja sa agende, gde su govornici delili svoje iskustvo iz prakse, pratio je i niz prilika za networking i zabavu. A učesnici 9inspiration konferencije mogli su da koriste i mobilnu aplikaciju specijalno pripremljenu za ovu priliku, uz koju je umrežavanje dobilo novi tvist.  Jedan od zaslužnih za izradu iOS & Android mobilnih aplikacija u Levi9 timu je i Mirko Tomić, Mobile developer. Do sada je u Levi9 radio na jednom od najpopularnijih servisa u Holandiji za slušanje radio stanica, podkasta, audio knjiga i muzike. Sa Mirkom smo porazgovarali o 9inspiration konferenciji i on je za vas izdvojio uvide sa svakog od predavanja.   Među ključnim porukama ovaj Najner izdvaja one koje je imao Kevlin Henney. Kao keynote govornik, on je i otvorio 9inspiration konferenciju i to predavanjem: “Software is details”.  - Pretpostavljate da je glavni fokus izlaganja bio na detaljima, koje, po mišljenju ovog predavača nikako ne smeju da se previde. To je često slučaj kada nas “zavede“ velika slika toga šta sve softver može da uradi za nas. Kevlin je naveo slučaj ogromne gužve na britanskom aerodromu, prošlog leta, kada softver za National Air Traffic Service nije bio dostupan. Hiljade letova je otkazano, stotine hiljada ljudi su izgubili konekcije, a gužva je trajala narednih nekoliko dana. Uzrok problema? Jedan pogrešan podatak koji je neimenovana avio-kompanija unela u plan letenja. Kada je pisan softver vladalo je uverenje da su uneti podaci uvek tačni. To je bila pretpostavka i nije implementirana provera unosa - ispričao je prisutnima Kevlin i dodao:  - Pretpostavke su kao lego kockice, na podu, u mraku - našalio se Henney. - Ako nikada do sada niste bosi nagazili na njih, pa, probajte.   Lepa je i paralela i koju je povukao sa korišćenjem ChatGPT-ja, CoPilota, na konto stvaranja legacy code-a.  - Kako je rekao, često na svojim radionicama pita učesnike šta je za njih legacy code. Iako je čuo mnoge definicije, najviše mu se sviđa ova: „Legacy code je kod koji je napisao neko drugi“ kako god se taj neko drugi zvao - prenosi Mirko utiske sa ovog keynote predavanja koje možete u celini da pogledate ovde.   Konferencija 9Inspiration, kako napominje naš sagovornik, približila je publici i nova saznanja kako najbolje organizovati timove. Njihova efikasnost bila je tema predavanja Jelene Pavlović, osnivača Koučing centra i vanredne profesorke psihologije rada na Univerzitetu u Beogradu.   Efikasan tim je sinergija zajedničkog rada  Jelena je najpre objasnila da se, sa razvojem poslovnog okruženja, fokus sa individualnog pristupa organizaciji preselio na timski. Uz slikovitu analogiju sa sportskom ekipom, ukazala je na to da efikasni timovi nisu skup pojedinaca sa odličnim veštinama, već sinergija zajedničkog rada.   - Lepo je imati zaposlenog koji je superstar, ali organizacije ne bi trebalo da promovišu tim lidove bazirano isključivo na individualnom radu odnosno postignućima - slikovito je predstavila Jelena Pavlović.  Ona je ukazala na to da zajednička odgovornost deluje kao „lepak“koji drži tim.  - Svaki član treba da razume zajedničke ciljeve tima i da se oslanja na druge da bi se ti ciljevi ostvarili - pojasnila je ona.   - U dobrom fudbalskom timu igrač doda loptu onom saigraču koji ima bolju poziciju za šut, i tako se odrekne ličnog interesa zarad timskog uspeha. Ali da li je to u biznis okruženju uvek tako?  Kompanijska kultura veoma utiče na to koliko će određeni lider doprineti efektivnosti tima. Zato je važno proučiti kulturu organizacije pre izbora samog lidera.  - Raniji zaključci su sugerisali da je ekstrovertni tip odličan izbor tim lida. Empirijski podaci su pokazivali da je to tip lidera koji najviše doprinosi efikasnosti. Međutim, u timovima koji su „flat“ mnogo će se bolje snaći lider koji je uvek spreman za saradnju, empatičan, prijateljski nastrojen - kaže Jelena Pavlović.  Perspektiva iz ugla Najnera  Mirko navodi da se u firmi Levi9  vode time da je, bez obzira na senioritet, u svim fazama karijere učenje veoma važno, kao i deljenje znanja. To je jedan od glavnih benefita koji zaposleni u Levi9 prepoznaju. Kompanija organizuje tradicionalne događaje kao što su Secure9, Hack9 i 9Inspiration konferencija - kaže Mirko i ističe ih kao sjajne primere za podršku deljenju znanja.  Kako kaže, znanje se umnožava i kroz rad na projektima, ali i na konferencijama, pa mu je drago da su i Najneri mogli da podele svoju perspektivu i na ovoj konferenciji.   Marina Zvicer i Jovana Milanović su sa publikom razmenile svoje iskustvo u kompaniji Levi9, gde su gradile karijere Test Developera. Sa pozicije Test Lead, odnosno Test Consultant, skrenule su pažnju na važnost postavljanja pitanja, zajedničkog razumevanja, pisanja detaljnih izveštaja i dokumentacije.   Na osnovu primera iz karijere, kako ističe Mirko Tomić, pokazale su kako se u svakom delu razvoja softvera može insistirati na kvalitetu. Upravo to doprinosi efikasnosti i razvoju najboljih softvera. Svojom prezentacijom prenele su poruku da je kvalitet odgovornost celog tima, a klikom na link možete da pogledate predavanje u celosti.  Nije više teško utvrditi koji timovi su uspešni  Šta nam sve donosi razvoj tehnologije, pokušao je da predvidi Radovan Baćović, Staff Data Engineer u GitLab-u.  - DevOps i DevSecOps su kao timski sportovi u svetu izrade softvera. Umesto da svako radi za sebe, svi rade zajedno, brže se prilagođavaju promenama i više se fokusiraju na inovacije nego kod starog načina rada - ovako je Radovan Baćović počeo svoje predavanje „When nimble is not fast enough: Will AI and Data leverage your DevSecOps journey“.  On je pojasnio da nije više tako teško precizno utvrditi koji su timovi uspešniji od drugih. Tome služe DORA metrike.   - Frekvencija uspešnog postavljanja nove verzije, vreme potrebno za izmenu, vreme za oporavak servisa i stopa neuspeha postavljanja nove verzije su standardizovani pokazatelji efikasnosti i performansi DevOps timova. I upravo će DORA pokazati razliku između uspešnih i neuspešnih timova - rekao je Radovan i naglasio:  - Na osnovu seta podataka i veštačke inteligencije ćemo u budućnosti dobijati metrike koje će nam pomoći da još agilnije pristupamo i dobijemo još bolju sliku našeg procesa. Stvari će se tek menjati, a Radovan podvlači i to da je veomo uzbudljivo što smo baš sada deo tech scene i što ćemo moći da učestvujemo u progresu - sumira Mirko Tomić njegovu poruku.  Gde će nas dovesti razvoj veštačke inteligencije? Pitanje od milion dolara  Mnoga pitanja “vrzmala” su u networking pauzama.   Na kafe i pauzi za ručak između predavanja moglo se čuti da posetioci vole ovu konferenciju i zato što uvek imaju šansu da nekoga novog stručnjaka upoznaju i pitaju za savet, dobiju konkretan uvid, i izađu sa konferencije “pametniji, nego što su bili”. Podrška NURDOR-u, organizaciji kojoj je doniran novac od ulaznica, takođe je velika motivacija za sve učesnike. Zajedničkim trudom i ove godine je prikupljeno više od 1.200.000 dinara, koji će biti uloženi u Roditeljsku kuću za porodice sa decom obolelom od raka koje u Beogradu traže izlečenje.  Drago nam je da u saradnji sa Levi9 možemo da vam ponudimo snimke nekih od predavanja, pa ako ste propustili priliku da direktno ispratite konferenciju, eto šanse da početkom godine uradite osvrt na najvažnije zaključke. Uskoro vas očekuje i drugi deo izveštaja sa 9inspiration konferencije u u kome ćete pronaći najbitnije uvide sa drugih predavanja, kao i linkove koji do njih vode.

HelloWorld
0
25.01.2024. ·
6 min

Istine i zablude o radu u srpskoj IT industriji

U Srbiji 104.000 ljudi radi u IT sektoru, a ovaj broj svake godine se uvećava za po nekoliko hiljada. Poslovi u ovoj industriji su među najplaćenijima, sa dobrim uslovima i velikom potražnjom na tržištu rada. Zvanični podaci Republičkog zavoda za statistiku kažu da prosečna neto plata u oblasti „računarsko programiranje, konsultantske i s tim povezane delatnosti“ iznosi 262.011 dinara. Bez iskustva, na početničkim pozicijama, zaposleni u IT kompanijama dobijaju od 800 do 1.200 evra, dok inženjeri sa velikim znanjem i iskustvom mesečno mogu da zarade i više od 5.000 evra. A osim visoke plate, zaposlenima su zagarantovane i mnoge pogodnosti, kao što su fleksibilno radno vreme, rad od kuće, privatno zdravstveno osiguranje, sportske aktivnosti, tim bildinzi i slično. Nije IT za svakoga Sve ovo razlozi su što su studije informacionih tehnologija u vrhu liste želja mnogih maturanata, a i oni koji su se školovali za neke druge profesije, sa ili bez fakultetske diplome, sve češće se prekvalifikuju i pronalaze posao u IT industriji. Poslodavcima u ovom sektoru nije obavezna diploma, već znanje, pa su mnogi zaposleni završili samo kurseve od nekoliko meseci ili su čak potpuno samouki. Ipak, ljudi koji imaju ozbiljne karijere smatraju da je zabluda da je IT za svakoga i da realnost nije baš – naučiću tehnologije i odmah ću zarađivati 5.000 evra mesečno. - Veliki zalet IT industrije privukao je u poslednje vreme pažnju „non-tech“ ljudi koji misle da po principu „je l možeš malo da mi objasniš“ mogu da nauče posao. Stvari ne funkcionišu tako, jer je većina nas provela decenije gledajući u komandnu liniju računara. Ono što mogu da uradim je da nekome pokažem šta treba da uči i da pomognem ako „zapne“, ali bez velikog truda ne može se dobiti neophodno znanje – objašnjava za HelloWorld.rs Nikola Novković, DevOps inženjer u kompaniji „Symphony“. Kako kaže,  posao u IT-u je lep i zanimljiv, ali je ponekad i težak i iscrpljujući. - Postoje rokovi koji su usaglašeni sa klijentom, tehnologije koje evoluiraju na dnevnom nivou, postoje noći kada nešto jednostavno krene po zlu, pa se zapitam da li sam dovoljno dorastao ovome, ko je meni dao ovoliku odgovornost - dodaje Nikola. Vrhunski uslovi za rad i nerad On navodi da je još od detinjstva voleo video igre, sklapanje računara, a tokom studija započeo je svoju IT karijeru u Vazduhoplovnoj akademiji u Beogradu, gde je kasnije radio i kao nastavnik programiranja, osnova bezbednosti informacionih sistema, osnova računara i srodnih predmeta. Nakon decenije rada u školi, prešao je u privatni sektor, u kompaniju Verisec International, u kojoj je napravio prve DevOps korake. Kolege su ga, kaže, dočekale otvorenih ruku, deleći sa njim znanje i iskustvo i upućujući ga šta treba da uči. Posle tog iskustva, u kratkom roku, promenio je nekoliko firmi, gde je, navodi, bilo i loših iskustava. Sadašnja kompanija, dodaje, zadovoljava sve njegove potrebe i želje, koje su, kako kaže, možda i „razmaženi prohtevi“. - Istina je da su uslovi za rad u IT kompanijama natprosečni. Moja kompanija ima fantastične prostorije u centru Beograda, opremljene vrhunskom opremom i ostalim uslovima za rad i nerad. Najčešće radim iz kancelarije, jer tamo su ljudi, tamo su obezbeđena tri obroka, tamo je pikado, tamo je bazen. Ali, ako se probudim, a napolju veje sneg ili se dete razbolelo, pa ne može u vrtić, nije nikakav problem da radim od kuće – kaže Nikola. Prema njegovom mišljenju, svakako najveća prednost rada u IT industriji je to što, i pored kriznog perioda, potreba za dobrim inženjerima uvek postoji, što ostavlja prostor i za pregovore o dobroj plati i uslovima rada. - Dobra strana je i to što imaš mogućnost da radiš na tehnologijama koje si kao klinac gledao sa sjajem u očima, što praviš nešto što će izmamiti osmeh na licu nekim novim generacijama. Naravno, važno je i što radiš sa mahom fakultetski obrazovanim ljudima od kojih može puno da se nauči,  pričamo dosta o poslu,  životu i ostalim temama za razbibrigu. Spuštanje kriterijuma uticalo na ukupan kvalitet IT-ja I Aleksandar Marković, Senior Software Developer in Test u kompaniji Snap One, saglasan je da u srpskoj IT industriji postoje finansijska stabilnost, zdravo radno okruženje i mogućnosti neprekidnog učenja. Loše je, kaže, što je tržište u jednom u trenutku, zbog velike potražnje, dosta spustilo kriterijume, pa je to uticalo na kvalitet isporuke, radnu etiku i poslovnu atmosferu, ali dodaje da deluje kako se i to polako koriguje u poslednjih godinu, dve. Poslovi u ovoj industriji menjaju se često, svaka nova kompanija donosi i malo veću platu, ali prema Aleksandrovom mišljenju, treba dobro promisliti o svakoj promeni. - Mlade kolege treba što više da uče. Mislim da je stav većine koji uglavnom misle samo o tome da zarade veliki novac potpuno pogrešan i promašen. Velika je zabluda da svako može da se ostvari i pronađe u ovoj profesiji – kaže Aleksandar i dodaje: - Do promene posla valjda dovodi splet različitih okolnosti - od nezadovoljstva platom, preko prezasićenja projektom i stagnacije u učenju, nekih strateških odluka višeg menadžmenta, pa do međuljudskih odnosa. Promena je donekle postala i trend, jer se danas mnogo lakše menjaju poslovi nego ranije. Ne mislim da je promena nužno dobra i da dugoročno uvek donese korist. Pretpostavljam da je u pitanju stvar izbora, afiniteta i apetita. Ja se nadam da ću u Snap One-u dočekati penziju - kaže Aleksandar. Aleksandar je u IT sektoru počeo da radi nakon studija na Elektrotehničkom fakultetu. Za devet godina rada promenio je pet kompanija, uglavnom radeći na pozicijama koje se bave automatizacijom testova, definisanjem testnih procesa u okviru tima, testiranjem performansi sistema i manuelnim testiranjem. On dodaje i da su uslovi za rad u srpskoj IT industriji dobri, da se poslodavci trude da omoguće sve što je potrebno za rad i više od toga. Pored adekvatne opreme i plate, kaže, tu su tri vrste kafe, voće, privatno zdravstveno, fleksibilno radno vreme, tim bildinzi… - Ne verujem da tu nešto mnogo može da se zameri. Možda zvuči čudno, ali mislim da su uslovi u IT sektoru kod nas možda i bolji nego u Americi, bar što se tiče benefita, odmora i radnog okruženja. Što se plate tiče, verujem da je to stvar tržišta, da ne kažem - plata je stvar ukusa - ocenjuje Aleksandar. Oprezno sa „golubom na grani“ Kada je reč o istinama i zabludama o platama, Nikola Novković dodaje da postoje firme koje svoje uslove rada usklađuju sa tržištima sa kojima sarađuju, dok neke firme to ne rade. - Sa finansijskim uslovima koje IT firme pružaju u Srbiji, životni standard može da bude jako visok, u odnosu na ostale industrije. U Srbiji IT inženjeri nemaju previše razloga za brigu. Posla ima, a uslovi su više nego dobri - zaključuje Nikola. Na srpskom IT tržištu posluju mnoge kompanije sa odličnom reputacijom, ali ima i drugačijih primera - poslodavaca koji se hvale odličnim uslovima, iako je realnost drugačija. Da bi na vreme prepoznali šta je istina, a šta ne, kandidati za posao treba dobro da se raspitaju. Nikola Novković im savetuje da više veruju ljudima koji tamo rade. - Najbolje je da vam neko izunutra ispriča kako se stvarno negde radi. Verujte, to nema zamenu. Promena pozicije i posla je individualna stvar, ali ne treba posezati za „golubom na grani", ako niste sigurni da donosi veliki boljitak. Svaka promena firme iziskuje period prilagođavanja, upoznavanja i postavljanja pravila. Zvuči teško, ali pronađite firmu iz koje nećete želeti da odete - zaključuje Nikola.

HelloWorld
2
07.09.2023. ·
7 min

How I made the Spring Boot startup analyser

It's no secret that Spring applications can sometimes freeze at startup. This is especially noticeable as a project develops: the new service starts quickly and shows great responsiveness, then it acquires some serious functionality, and the final distribution package swells by dozens of megabytes. Now, to simply launch that service locally, you have to wait for half a minute, a minute, two... At such moments of waiting, the developer may ponder: why on Earth is it taking so long? What’s going on? Maybe I shouldn't have added that particular library? Hi, my name is Alexey Lapin, and I am a Lead Developer at Luxoft. In this article, I’ll talk about a web application for analysing the startup phase of Spring Boot services, which uses data from the startup actuator endpoint. This tool may help answer the questions above. Foreword I made this application for myself to understand a new Spring module that I hadn't seen before and practice on the front end. I saw various solutions on the internet, but they either did not work or have not been updated for a long time, and I wanted to create an up-to-date auxiliary tool for the Spring Boot functionality. Spring Boot Startup Endpoint Starting with version 2.4, Spring Boot has an ApplicationStartup metric that records events (steps) that occurred during the service startup and an “actuator endpoint” that makes a list of these events. Here's what it looks like: {     "springBootVersion": "2.5.3",     "timeline": {         "startTime": "2021-09-06T13:38:05.049490700Z",         "events": [             {                 "endTime": "2021-09-06T13:38:05.159435400Z",                 "duration": "PT0.0898001S",                 "startTime": "2021-09-06T13:38:05.069635300Z",                 "startupStep": {                     "name": "spring.boot.application.starting",                     "id": 0,                     "tags": [                         {                             "key": "mainApplicationClass",                             "value": "com.github.al.realworld.App"                         }                     ],                     "parentId": null                 }             },             ...             {                 "endTime": "2021-09-06T13:38:06.420231Z",                 "duration": "PT0.0060049S",                 "startTime": "2021-09-06T13:38:06.414226100Z",                 "startupStep": {                     "name": "spring.beans.instantiate",                     "id": 7,                     "tags": [                         {                             "key": "beanName",                             "value": "org.springframework.boot.autoconfigure.internalCachingMetadataReaderFactory"                         }                     ],                     "parentId": 6                 }             },             ...         ] ….} } A detailed description of all message fields can be found in the Spring Boot Actuator documentation, but I think it’s all in all pretty straightforward. The event has an “id” and a “parentId”, which allows one to have a tree view. There is also a “duration” field, which shows the time spent on the event + the duration of all associated events combined. The “tags” field contains a list of event attributes, such as the name or class of the generated bean. To enable the collection of data on load events, you must pass an instance of the BufferingApplicationStartup class to the setApplicationStartup method of SpringApplication. In this case, a constructor is used that accepts the number of events to record. All events above this limit will be ignored and will not be included in the startup endpoint’s output. @SpringBootApplication public class App {     public static void main(String[] args) {         SpringApplication application = new SpringApplication(App.class);         application.setApplicationStartup(new BufferingApplicationStartup(1000));         application.run(args);     } } By default, this endpoint has a path of /actuator/startup and supports GET methods for receiving events and POST for receiving events and clearing the buffer, so subsequent calls to this endpoint will return an empty list of events Okay, let's go. We will consider the information provided by the startup endpoint as our data for analysis. The analyser web application is a single-page application (SPA) without a back end. It works like magic: you just need to upload the events that occurred during the service startup, and it will visualise them. The uploaded data is neither transferred nor stored anywhere. I chose Typescript as my go-to programming language, as it seemed like a better option for a Java developer compared to Javascript due to its strong typing and object-oriented programming features. I found it very easy to switch from Java to Typescript and quickly write a working code. As my UI framework, I chose Vue.js 3. To be clear, I have nothing against React, Angular and other front-end frameworks, but at that time Vue.js seemed like a good option due to the low entry threshold and excellent preset tools. Then it was time to choose the component library. It needed to be compatible with Vue.js 3 and have components for working with tables. I considered Element Plus, Ionic Vue, and Naive UI, but due to the availability of customisable components for working with tables, I ended up using the PrimeVue library. The application has a navigation bar with Analyser elements (this is the main screen of the application), Usage (user instructions) and a link to the project's GitHub repository. The main page of the application displays a form for entering data, which can be done in three different ways. The first way is to put a link to the deployed Spring Boot service. In this case, an HTTP request will be made to the specified endpoint and the data will be uploaded automatically. This method is applicable for cases when the service is available from the internet or is deployed locally. Note that loading by url may require additional service configuration in terms of CORS headers and Spring Security. The second and third ways are loading a JSON file or its actual content. The deployed application is located at https://alexey-lapin.github.io/spring-boot-startup-analyzer/ For the analyser demo, I used my own Spring Boot service deployed on Heroku. This service implements the back end of the RealWorld project. The desired endpoint can be found at https://realworld-backend-spring.herokuapp.com/actuator/startup. The service is configured to send correct CORS headers to GET requests from the analyser. Once you load the events using one of the specified methods, the data is visualised in a tree structure. Note that all rows that have child items are hidden. To navigate through this tree, you can use the “>” icons to the left of the item ID, or expand/hide all rows simultaneously using the Expand All / Collapse All buttons. If there are many events, it may take some time to render the expansion of all rows. In the table view, all events are displayed at once. All columns, except for Tags, can be sorted. CI + hosting On one of the previous projects, I was involved in the global DevOps transformation of our client and worked on automating the release cycle processes and building CI/CD pipelines. It was an interesting experience, which now helps me to resolve issues related to writing the source code of products. In this case, as with most of my open-source software projects, I used GitHub as my git hosting, as it provides many useful tools for CI, artefact storage, documentation, project management, static site hosting, etc. For the needs of the analyser, I specifically used Actions and Pages. GitHub Actions is configured to run a workflow on events like “pull request”, “commit to master”, and “push a tag”. Pushing a tag will also deploy the assembled project to GitHub Pages, as well as build the Docker image and send it to Docker Hub. In addition to the analyser’s public instance on GitHub Pages, you can use the Nginx-based Docker image. The latter can be useful, for example, for those cases when Spring Boot services are located on the organisation's internal network, from which there is no internet access, but Docker is available and it is possible to load the image. To start the container, run the following command: docker run -d --name sbsa -p 8080:80 lexlapin/spring-boot-startup-analyzer If you need to access this container through a reverse proxy, then pass the path through the environment variable: (UI_PUBLIC_PATH): docker run -d --name sbsa -p 8080:80 -e UI_PUBLIC_PATH=/some-path lexlapin/spring-boot-startup-analyzer Things to improve In the future, I plan to refine the screen with the analysis results. Plus, it would be useful to add a tab with a summary of event types, their number and total elapsed time, such as the number and total time spent to create beans. Another possible feature is building charts on short pivot tables — especially since PrimeVue provides such an opportunity through the Chart.js library. In tree view and table view, colour coding can be done to highlight long events. Additionally, it is worth adding event filtering — for example, by type. Conclusion The proposed analyser allows one to conveniently visualise the data received from the startup actuator endpoint, estimate in detail the time spent on various types of events that occur during the service startup, as well as generally process startup information more efficiently. The application has a public instance on GitHub Actions and is also available as a Docker image. This application was successfully used on one of Luxoft’s projects to analyse the loading of slowed-down services and helped to detect several classes with suboptimal logic in the constructors.

HelloWorld
1
24.04.2023. ·
2 min

Srpsko IT tržište: Broj oglasa u padu, sve više se traže mediori

Broj oglasa za IT pozicije u prvom kvartalu 2023. godine je manji za čak 50% u odnosu na isti period prošle godine, pokazali su najnoviji podaci sajta HelloWorld.rs. Ovo je iznenadilo mnoge posmatrače tržišta, s obzirom da je prethodna godina bila obeležena visokom tražnjom za IT stručnjacima i brzim rastom industrije. Međutim, detaljnija analiza pokazuje da se u 2023. godini traži manji broj senior IT stručnjaka u odnosu na prošlu godinu, dok su mediori postali prioritet poslodavcima. Prema podacima sa sajta HelloWorld.rs, u prvom kvartalu 2023. godine, čak 64% svih oglasa upravo je namenjeno mediorima, 18% seniorima, dok su ponude za juniore činile 15% svih oglasa. U poređenju sa prošlom godinom, udeo oglasa za seniore se smanjio za 5%, dok se udeo oglasa za juniore povećao za 7%. Software developeri dominiraju domaćim IT tržištem: Visoko traženi i dobro plaćeni Što se tiče najtraženijih pozicija u 2023. godini, na prvom mestu se nalaze Software Developeri, što nije iznenađujuće s obzirom na njihovu važnost u razvoju softverskih rešenja. IT Help Desk/Support pozicija se takođe nalazi na visokom drugom mestu, dok su System Administrator/Engineer, Frontend Developer i DevOps System Administrator/Engineer na trećem, četvrtom i petom mestu. Kada se uzmu u obzir plate navedene na HelloWorld.rs, vidljivo je da su one ostale na istom nivou kao i prethodnih godina. Ipak, primećuje se da su Software developeri i u 2023. godini i dalje najplaćenija grupa IT stručnjaka. Kada je reč o tehnologijama, JavaScript je najtraženiji programski jezik u prvom tromesečju 2023. godine, dok su SQL, Git, Linux i Agile takođe visoko rangirani na listi najtraženijih tehnologija. Takođe, analiza sajta HelloWorld.rs pokazala je i da je značajan broj žena u potrazi za poslom u IT sektoru. Svaki četvrti kandidat koji traži posao na našem sajtu je žena. To samo potvrđuje da je sve veći broj njih zainteresovano da napravi karijeru u IT sektoru. Rast broja žena u IT-ju je izuzetno pozitivan trend i pokazatelj da se polako smanjuje rodna nejednakost u ovoj industriji.

13.04.2023. ·
5 min

3 digitalne veštine koje će biti najtraženije u 2023.

Sajber bezbednost, kodiranje i upravljanje podacima su veštine koje kompanije vrednuju poput zlata, a potražnja za njim će u 2023. samo nastaviti da raste. Potražnja za digitalnim veštinama znatno se ubrzala u 2022. godini zahvaljujući sve većem broju kompanija koje su počele da se oslanjaju na tehnologiju kako bi inovirale svoje proizvode i spremile svoje poslovanje za budućnost. Sa druge strane, dostupnost zaposlenih sa ovim veštinama nastavlja da se smanjuje. Uprkos tome što će rizik od recesije pojedine kompanije sprečiti da dalje šire svoje timove kako bi optimizovale svoje poslovanje, efekat tih odluka na zapošljavanje tehnološkog kadra biće relativno mali. Čak i u ekonomski nestabilnim vremenima, tehnologija nastavlja da bude prilično bezbedno mesto. Jedan od sektora koji prosto vape za talentovanim radnicima jeste sajber bezbednost. Broj otvorenih pozicija u ovom sektoru između 2013. i 2022. godine porastao je za 350 odsto, sa jednog miliona na 3.5 miliona. Organizacije koje ne obraćaju pažnju na sajber bezbenost stavljaju sebe u prilično ranjivu poziciju kada su u pitanju sajber napadi i rizikuju gubitak profita i reputacije u očima korisnika. Sa druge strane, vrlo lako je okružiti zaposlene najnovijim firewall tehnologijama i anti-virus softverom, ali tek kada ih kompanije nauče da štite svoje onlajn identitete, mogu da kultivišu jaku kulturu sajber bezbednosti. Davno su prošli dani kada su zaposleni mogli da koriste ime svog ljubimca kao lozinku, uz nekoliko brojeva i karaktera na kraju. Ni najboljli bezbednosni softver ne može da uradi puno ako zaposleni nisu dovoljno edukovani. Velika potražnja za programerima Kodiranje i dalje nastavlja da bude jedna od najtraženijih profesija. Broj oglasa za pozicije data inženjera je u poslednje tri godine porastao za 116%, dok za kompjuterske analitičare taj broj iznosi 72 odsto, uz prilično stabilnu potražnju za developerima koji poseduju C#, C++, Angular, Node, Java, Google Cloud i Azure znanje. Sudeći po podacima koje je objavio hackajob, Java programeri obezbedili su sebi najbolju proporciju ponuda za posao i čine 15.8% svih zaposlenih između 2021. i 2022. godine. Odmah iza su C# developeri (15.3%), DevOps profesionalci (10.8%) i JavaScript programeri (10.6%). U poslednje vreme pojavljuje se i sve veći broj developera koji navode Golang u svojim CV-jevima, ne kao komercijalnu veštinu, već kao nešto što su savladali u svoje slobodno vreme. To može dovesti do određenih promena koje bi Golang mogle da, sa prostog interesovanja, pretvore u ključnu veštinu. Usled velike potražnje, visoke plate, bonusi i deonice su samo neke od stvari koje developeri očekuju pre dolaska u neku kompaniju, a vrlo često se može desiti i da ih odbiju ako im cifre nisu baš po volji usled velike potražnje. Posebno se izdvaja DevOps pozicija zbog centralne uloge koju ima u ubrzavanju puta kompanija do softverske vrednosti, menadžerskih sposobnosti i razumevanja operacija. Savladavanjem modernih procesa isporuke softvera, developeri mogu da pokažu da pružaju dodatnu vrednost i sposobnost da se suoče sa svim poslovnim izazovima koje kompanija može da ima. Novi tip softverskog developera? Kako se razvoj softvera ubrzava, uz sve veći uticaj AI tehnologije na programiranje, uloga softverskog developera se menja. AI menja svet programiranja na isti način na koji su digitron i kompjuter to uradili. Tehnološki napredak polako na sebe preuzima neke od najzamornijih poslova na koje su developeri trošili svoje vreme. Oni sada mogu da posvete više vremena većoj slici i rešavanju kritičnih problema. Brzi rast novih tehnologija neće samo promeniti način na koji ljudi rade, već i veštine potrebne da se napreduje u digitalnoj ekonomiji. Potreba za ljudima koji poseduju ove veštine se širi kroz sektore znatno brže u poređenju sa onima koji poseduju prosečne veštine. Ljudske osobine koje nas odvajaju od mašina, poput empatije i kreativnosti, i dalje ostaju ključne stvari prilikom zapošljavanja, i to je nešto što bi trebalo da se nađe u samom vrhu prioriteta, na samo zaposlenih, već i kompanija koje ih zapošljavaju. Izazovi za vodeće pozicije Ljudi na vodećim pozicijama će takođe imati veoma veliku ulogu u pružanju stabilnosti i rasta kompanije jer izazovi koji se odnose na angažovanje, zadržavanje i edukaciju talenta i dalje nastavljaju da predstavljaju problem za mnoge. Investiranje vremena i resursa u menadžerske veštine predstavlja najvažniju stvar kojoj bi kompanije i zaspoleni trebalo da se posvete. Vođe će biti zadužene za pružanje strukture i resursa za razvijanje novih veština unutar timova i njihovo dalje širenje unutar cele kompanije. Osobe na vodećim pozicijama će sada biti odgovorne za interakciju i osnaženje timova, koji svoj posao sada vrlo često obavljaju na daljinu. Sredine sa visokim nivoom produktivnosti sada pokreće visoka psihološka sigurnost unutar timova, i to će u budućnosti predstavljati jedan od najvećih izazova za sve lidere. Pogotovo jer mnogi od zaposlenih više nisu unutar same kompanije, već na udaljenim pozicijama, a vrlo često i u drugim zemljama i kontinentima. Situacija u Srbiji vs. Situacija na zapadu Zahvaljujući sve većem broju kompanija koje započinju svoje poslovanje, situacija u Srbiji donekle je povoljnija za sve tipove IT stručnjaka, prvenstveno zbog velike potražnje i manje ponude. Ovo možda najbolje oslikavaju i same ponude za posao. Posmatrajući ponude na sajtu HelloWorld, u Srbiji su trenutno najtraženije sledeće pozicije, koje proporcionalno zauzimaju i najveći broj oglasa u ponudi: Software Developer / Programer / Inženjer – 719 otvorenih oglasa (6.7% udeo u ukupnom broju oglasa) Frontend developer – 342 otvorene pozicije (3.20% udeo u ukupnom broju oglasa) IT Help Desk / Support – 341 otvorena pozicija (3.19% udeo u ukupnom broju oglasa) JavaScript Developer – 325 otvorenih pozicija (3% udeo u ukupnom broju oglasa). Sam broj ponuđenih pozicija jasno pokazuje da se IT stručnjaci nalaze u znatno boljoj situaciji nego njihove kolege u drugim zemljama. Ovo se posebno odnosi na medior i senior pozicije, jer se čini da su stručnjaci sa potrebnim znanjem izuzetno deficitarni. Ovakva situacija povoljna je i za sve na juniorskim pozicijama jer se pred njima otvara prilično jasan put i kompanije u nedostatku iskusnih radnika svoju pažnju moraju da znatno više poklanjaju početnicima ne bi li uspeli da ih za nekoliko godina pretvore u kadar koji im je trenutno izuzetno potreban, a sve su šanse da će se ovaj trend nastaviti i u budućnosti. Izuzetno mala ponuda stručnjaka koji razmišljaju o promeni posla dodatno podiže cene na tržištu, što se opet, povoljno odražava na zaposlene na svim pozicijama koji razmišljaju o daljem napretku.

07.03.2023. ·
2 min

Srpski developeri opravdali poverenje

Planirana nova zapošljavanja u jednoj od najvećih regionalnih IT kompanija

HelloWorld
1
16.01.2023. ·
3 min

DevOps – sve traženije zanimanje u IT svetu

Gotovo svaka treća IT firma u našoj zemlji ima potrebu za DevOps kadrovima, pokazuje istraživanje koje je sprovelo više Regionalnih privrednih komora. Posle Web Development-a, ovo je najtraženija oblast u okviru koje IT kompanije traže stručne kadrove. Upravo zbog toga, ne čudi sve veća potražnja za DevOps edukacijom, jer je posao za stručnjake iz ove oblasti gotovo zagarantovan.

HelloWorld
0
16.12.2022. ·
5 min

One of our stories: Continuous Learning

In our first story, we talked about career development at Insightful. However, we all know that our skills don't magically enhance overnight. This is why here we would like to walk you through the way we actually support our team members to expand their level of competencies, preparing them for their current and new responsibilities and roles.

HelloWorld
0
08.12.2022. ·
2 min

Learning by Always Being Up to the Challenge: The Story of IT Labs’ Nikola Angelkovski

It’s really easy to get overwhelmed by the amount of information, technology, and all the opportunities you can choose from – what will you do? Which tech stack? Where do you see going with that? A million possibilities.

HelloWorld
0
Da ti ništa ne promakne

Ako želiš da ti stvarno ništa ne promakne, prijavi se jer šaljemo newsletter svake dve nedelje.