HRM-system virksomhed webapplikation

Vi har opbygget et internt HRM-økosystem, der strømliner HR-processer som personalesporing, personalegoder, rekruttering, onboarding, læring og udvikling og meget mere.

Kunde

Industri
Informationsteknologi
Region
EU
Kunde siden
2007

Innowise is a global full-service custom software development company that delivers smart digital ideas to customers worldwide. Over the past 18+ years, the company has implemented about 1300+ projects in various industries and won the trust of dozens of customers. By 2022,  Innowise has grown to over 2500+ top-notch IT professionals, several development centers, and representative offices across Europe and North America.

Udfordring

HR-medarbejdere er ansvarlige for en lang række små, men betydningsfulde opgaver. En forsinkelse i sådanne opgaver vil hæmme organisationens operationelle flow. Vores virksomhed voksede hurtigt, men den eneste bekymring, vi havde, var at styre og håndtere personaleproblemer. HR-afdelingen havde brug for en automatiseret løsning til at lette deres byrde med at håndtere rutinemæssige administrative opgaver, såsom fremmøde, ferie og sygefravær.

Vi indså, at det ville være godt, hvis alle oplysninger blev gemt centralt i systemet, men det ville være endnu mere effektivt, hvis alle disse oplysninger kunne opdateres hurtigt og nemt.

Vores mål var at skabe en webløsning af typen "admin first" med en fleksibel database, der muliggør nem og pålidelig personalestyring:

  • gemme og opdatere alle oplysninger om medarbejdere;
  • skabe nye og justere eksisterende arbejdsgange;
  • administrere brugere;
  • integreres problemfrit med andre systemer.

Vi havde brug for at udvikle en modulær web HR-softwareløsning med et bruger- og adgangskontrolmodul, et proceskontrolmodul og et datastyringsmodul, der er modstandsdygtigt og kan tilpasses alle eksterne og interne ændringer. En anden udfordring var at integrere informative dashboards med analyser, hvor brugerne kan spore driftsparametre.

Vi skulle ikke skabe et fast, men et fleksibelt system med mulighed for at tilføje nye funktioner uden større forbedringer (feedback på medarbejderens faglige aktivitet, tildeling af en-til-en-samtaler, kommentarer til prøvetid osv.) og samtidig udpege den person, der er ansvarlig for en bestemt proces.

Vi fokuserede på at muliggøre datacentralisering i ét system ved at integrere og ændre eksisterende forretningsprocesser og samtidig optimere arbejdsgange og reducere virksomhedens driftsomkostninger.

Løsning

Vi har udviklet et modulopbygget webbaseret system, der gemmer oplysninger om medarbejdere og virksomhedsstruktur på ét sted.

Desuden giver webappen mulighed for at oprette enhver forretningsproces for at udarbejde en personlig udviklingssti, anmode om eller godkende ferie, dokumentere en prøvetid, forlænge kontrakten osv.

Medarbejderside

Der manglede en central medarbejderbase med alle nødvendige oplysninger. For eksempel skal en personlig udviklingsplan godkendes af fire autoriserede personer, som skal indsende kommentarer skriftligt eller via mail. Fordi alle de relaterede oplysninger var decentraliserede, var det svært at forstå, hvorfor en sådan beslutning blev truffet.

Det HRM-system, vi har udviklet, gør det muligt at gemme alle processer i et enkelt system. Det gør det muligt at tildele enhver opgave til den person, der er ansvarlig for beslutningstagningen, og efterlade kommentarer til beslutningen. Desuden giver systemet mulighed for at filtrere data efter medarbejdere, gemme filterresultater i regneark og generere analyse- og statistikrapporter.

Vi har implementeret denne funktionalitet via fanen Medarbejderprofil med følgende sektioner:

  • Oplysninger med medarbejderens generelle oplysninger, organisatoriske enheder, en linjeleder osv.
  • Mulighed for at tilføje hårde, domæne- og bløde færdigheder til de tilsvarende felter, f.eks. sprogvurderinger og eksamensdatoer.
  • Udviklingsplan for at se medarbejderens fremskridt.
  • En-til-en til at planlægge samtaler med HR-chefer og linjeledere og indsamle deres feedback.
  • Nyttige links med mulighed for at tilføje links til ethvert dokument, der kan være nyttigt for hver enkelt medarbejder.

Virksomhedens struktur

Decentraliseret informationslagring gjorde det næsten umuligt at få fat i de nødvendige data med det samme. Derfor var det en udfordring for salgscheferne at finde de rette kandidater til et projekt. Derudover var medarbejderne ikke tilstrækkeligt opmærksomme på, hvad der foregik i virksomheden på grund af hyppige ændringer i organisationens struktur, funktioner eller forretningsprocesser. Vi har gjort virksomhedsoplysningerne særligt nyttige for salgschefer med mulighed for at:

  • Adgang til den organisatoriske struktur;
  • Filtrer medarbejdere efter fagligt niveau, færdigheder osv;
  • Søg efter medarbejdere ved hjælp af filtre efter navn, organisationsenheder, stillinger, ledere osv;
  • Se kollegernes profiler.

Vi har især implementeret følgende funktionalitet i HRM-applikationen:

  • Fanen Virksomhedsstruktur;
  • Organisationsstruktur i to repræsentationsformer (træ/liste);
  • Liste over alle medarbejdere med filtreringsmuligheder (stillingsbetegnelse, fagligt niveau, ledelsesniveau, afdeling osv;)
  • Søgning og visning af medarbejdernes profiler med generelle oplysninger.

Processer

Forskellige lande har specifikke forretningsprocesser: ferieadministration, prøvetid, kalenderplaner, kontraktmodeller osv. Jo flere kontorer vi har i andre lande, jo mere skal der tages højde for sådanne særheder, og de skal afspejles i systemet.

Vi har lanceret en fleksibel mekanisme til lokalisering af forretningsprocesser til forskellige lande. Den HRM-softwareløsning, vi har udviklet, har en modulær struktur, der gør det muligt at skabe enhver nødvendig proces i systemet uden ændringer i selve systemet.

Som resultat er webløsningen blevet beriget med følgende funktioner:

  • Fanen Processer giver mulighed for at oprette procesudkast og nemt administrere eksisterende processer;
  • Automatisk besked til alle medarbejdere om procesændringerne, når den endelige version er klar og offentliggjort;
  • Understøttelse af forskellige sprog er aktiveret i systemet.

Fritid

Afhængigt af kontorets placering er der specifikke juridiske normer eller processer for afholdelse af ferie, vilkår for prøvetid, antallet af fridage osv. Ud over at give medarbejderne mulighed for at anmode om ferie, kan lederne på deres side godkende den i dette system. Det er tidligere sket, at når medarbejdere flyttede, var de ikke opmærksomme på de lokale processer/lovgivningsspecifikationer samt andre særegenheder, som skabte yderligere udfordringer.

Som en del af systemets funktionalitet har vi gjort det muligt at sende anmodninger om sygedage samt at vise den aktuelle fridagssaldo, kommende fridage og en samlet historik over alle anmodninger.

Vores team har tilføjet fanen Fritid med følgende sektioner:

  • Min balance med nuværende, kommende og tidligere fridage;
  • Mine anmodninger med oplysninger om afspadseringstype, dato, periode, antal og status;
  • Anmodninger fra underordnede med navn på de underordnede og deres afspadseringstype, dato, periode, antal og status;
  • Upload af data til regnskabsprogrammerne.

Systemindstillinger

Det var vigtigt, at en fremtidig løsning kunne udvise stor fleksibilitet i sine indstillinger på grund af hyppige ændringer i virksomhedens struktur, medarbejderfunktioner eller forretningsprocesser. Vi indså, at det ville være godt, hvis alle oplysninger blev lagret centralt i systemet, men det ville være endnu mere effektivt, hvis alle disse oplysninger kunne opdateres hurtigt og nemt.

Vi har implementeret muligheden for masseændring og smart filtrering i sektionen for virksomhedsstruktur. Det gør det muligt at flytte nogle medarbejdere til den nye lokation eller afdeling med et enkelt klik, hvis de flytter. Smart filtrering henviser til flere valg af forskellige parametre for at få de relevante oplysninger med et par klik.

Vi har implementeret fanen Systemindstillinger med følgende sektioner:

  • Virksomhedsstruktur med mulighed for at filtrere oplysningerne på enhed, division, afdeling, team, gruppe osv;
  • Masseændring til anvendelse af ændringer i organisationsstrukturen på én gang;
  • Muligheden for at ændre strukturen simpelthen via UI.

Integration med virksomhedens mobilapplikation

Der er mange måder, brugerne arbejder på: på stationære computere, på mobile enheder (på grund af hyppige forretningsrejser) eller en kombination af begge dele. Vi prioriterede at gøre virksomhedens oplysninger så tilgængelige som muligt, så vi kunne arbejde effektivt på farten.

Vi har aktiveret systemintegrationen med en mobilapplikation til virksomheden, som duplikerer en del af funktionaliteten i det primære HRM-system.

Løsningen implementeres derefter i applikationen på følgende måde:

  • Integration med virksomhedens mobile HR-app til medarbejdere;
  • Behandling af afspadsering;
  • Mulighed for at se virksomhedsstruktur;
  • Mulighed for at se medarbejderprofiler.

Teknologier og værktøjer

Java 17, WebFlux / Reactor, Lombok, MapStruct, Spring støvle, Spring Security, Spring Data R2DBC, Spring Data Mongo, WebSockets / gRPC / REST, Redis, Firebase, Kafka, Debezium, ElasticSearch, Camunda Modeler
React, Redux, Redux-Saga, Reselect, Mui5, React-Final-Form (for kompatibilitet med React-Admin), React-i18next, Axios
MongoDB, PostgreSQL
Platform
Sømløs integration
Bitbucket-pipelines, Helm
Konfigurationsstyring
K8S configmaps
Containerisering og containerstyring
AWS EKS
Overvågning af servere
 
Prometheus, Grafana
Håndtering af hændelseslog
 
ELK

Proces

Efter at have defineret applikationens funktionalitet og løst problemerne i udviklingsprocessen kom vi frem til følgende:

  • skabe designet af applikationen og dens arkitektur;
  • implementere ideerne i applikationens funktionalitet;
  • vedligeholdelse af applikationen efter udgivelsen.
Opdagelse
Først analyserede vores team medarbejdernes smertepunkter og fandt frem til de bedst mulige teknologiske løsninger. Vi designede den grundlæggende arkitektur for medarbejdernes HR-app og skabte mock-ups for at beregne udviklingsomkostningerne. For at få et mere præcist estimat lavede vi en detaljeret plan for udviklingen af hvert modul.
Valg af teknologi
Det er vigtigt at vælge teknologier, der gør det muligt at udvikle og implementere applikationer hurtigt, og som sikrer nem vedligeholdelse og videreudvikling. I dette tilfælde er udvikling på tværs af platforme nødvendig. Det er også vigtigt at muliggøre integration med tredjepartssystemer som Friendwork, Jira, Atlassian, Google Calendar osv.
Sikkerhed
    Vi har aktiveret overvågning af IP-enhedens placering, når applikationen er i brug (anti-svindel), og sender de relaterede meddelelser til brugeren via e-mail. Der er en grænse for, hvor mange enheder der kan bruge appen på et givet tidspunkt. Googles to-faktor-godkendelsesfunktion er også inkluderet, så kun virksomhedens medarbejdere kan logge ind på systemet.

    Vi har også aktiveret anmodningen med fuld bekræftelse af personlige data/kontaktdata (via telefon, Telegram, WhatsApp) for at forhindre lækage af personlige medarbejderdata. Eksport af kontaktdata er ikke tilladt. Alle disse foranstaltninger giver fuldstændig applikationssikkerhed.
MVP-udvikling
Vi leverede modul for modul ved hjælp af en iterativ og inkrementel tilgang, diskuterede opgaver på Slack og sporede opgaver i Jira. Der blev udført enhedstests og manuelle tests i slutningen af hver udviklingsfase for at opdage og rette selv de mindste fejl.
Vedligeholdelse og forbedring
Efter at have introduceret MVP'en tog vi den i brug for at teste medarbejderne. Efter et par ugers brug af systemet indsamlede vores medarbejdere feedback. På baggrund af dette løste vi alle problemerne og implementerede derefter systemet fuldt ud. Resultatet er, at vores medarbejdere nu har en applikation på tværs af platforme til at strømline alle arbejdsgange. Vi forbedrer hele tiden vores app, tilføjer nye funktioner og forbedrer processerne.

Hold

1
Projektleder
1
Forretningsanalytiker
1
UI/UX-designer
4
Back-end-udviklere
3
Front-end-udviklere
2
QA Engineers
1
DevOps-specialist
team-intelligent

Resultater

HRM er en centraliseret database, en kilde til samlet information for alle andre afdelinger (økonomi, salg, HR osv.).

Det lykkedes os at levere en af de bedste HR-softwareløsninger på markedet med et rigt udvalg af muligheder, herunder integration og hurtig skalering af funktionalitet samt personaliserede funktioner og adgang baseret på brugerroller.

Selv om antallet af systembrugere vokser, og mange processer hele tiden ændrer sig, forbliver systemets ydeevne og sikkerhed upåvirket.

Det har allerede forbedret arbejdsgangene og reduceret virksomhedens driftsomkostninger for den internationale virksomhed med mere end 1.000 ansatte og kontorer spredt over hele kloden.

Projektets varighed
  • 6 måneder for MVP
  • Projektet fortsætter, og i denne fase understøtter vi platformen og implementerer ny funktionalitet.

    Kontakt os

    Book et opkald eller udfyld formularen nedenfor, så vender vi tilbage til dig, når vi har behandlet din anmodning.

    Send os en talebesked
    Vedhæft dokumenter
    Upload fil

    Du kan vedhæfte 1 fil på op til 2 MB. Gyldige filformater: pdf, jpg, jpeg, png.

    Ved at klikke på Send accepterer du, at Innowise behandler dine personlige data i henhold til vores Politik for beskyttelse af personlige oplysninger for at give dig relevante oplysninger. Ved at indsende dit telefonnummer accepterer du, at vi kan kontakte dig via taleopkald, sms og beskedapps. Opkalds-, besked- og datatakster kan være gældende.

    Du kan også sende os din anmodning
    til contact@innowise.com

    Hvad sker der nu?

    1

    Når vi har modtaget og behandlet din anmodning, vender vi tilbage til dig for at beskrive dine projektbehov og underskriver en NDA for at sikre fortrolighed.

    2

    Når vi har undersøgt dine ønsker, behov og forventninger, udarbejder vores team et projektforslag med forslag med arbejdets omfang, teamstørrelse, tids- og omkostningsoverslag.

    3

    Vi arrangerer et møde med dig for at diskutere tilbuddet og få detaljerne på plads.

    4

    Til sidst underskriver vi en kontrakt og begynder at arbejde på dit projekt med det samme.

    pil