Hvem skal du ansætte til dit Site Reliability Engineering-team (SRE)?

Hvem skal du ansætte til dit Site Reliability Engineering-team (SRE)?

  • Blog
I vores blog Hvad er SRE (Site Reliability Engineering) diskuterede vi, hvad SRE er, og hvilke fordele det kan give en organisation. I denne blog har vi til formål at fokusere på at identificere teammedlemmerne i et site reliability engineering-team.

Genopgørelse af betydningen af et SRE-team

SRE-teamet er et team af ingeniører, der er ansvarlige for at sikre pålideligheden og tilgængeligheden af en given tjeneste. De arbejder på at forbedre systemets ydeevne, systemets pålidelighed og systemdesigns, så de er, der er pålidelige nok til missionskritiske arbejdsbelastninger. Et SRE-team bør have tekniske færdigheder inden for softwareudvikling, automatisering af infrastruktur og DevOps-praksis.

SRE er opstået som et svar på at bygge bro over kløften mellem udvikling og drift. SRE-teamets primære mål er at sikre sømløst frigivne projekter. De har en dyb forståelse af både produktet og infrastrukturen, så de kan administrere dem korrekt.

Et SRE-teams ansvarsområder og roller

Du har måske hørt om rollen “site reliability engineer”, men i virkeligheden består site reliability engineers af et helt team af forskellige roller. Hver rolle tilføjer et unikt sæt af færdigheder og erfaringer til dette specialiserede område.

Et site reliability-team er ofte en kombination af personer fra forskellige teams: DevOps-teams, softwareudviklingsteams, systemadministratorer og systemarkitekter. De arbejder sammen for at skabe et omfattende ingeniørteam, der kan håndtere kravene fra en kompleks teknologistak (f.eks. webservere, databaser, containerorkestrering) og forbedre systemets pålidelighed.

Rollerne og ansvarsområderne for et SRE-team varierer afhængigt af det specifikke produkt eller den specifikke tjeneste, som de er ansvarlige for.

Lad os tage et kig på nogle af de almindelige teammedlemmer, der udgør et SRE-team.

Site Reliability Manager

Site Reliability Manager er ansvarlig for den overordnede strategi for SRE-teamet. De har ansvaret for at skabe en plan, der opfylder forretningsmålene, forvalte ressourcerne og opbygge SRE-praksis, der fører ingeniørerne til succes. De er også ansvarlige for at kommunikere strategierne og målene til andre teams.

SRE-chefer skal have stor erfaring inden for softwareudvikling, DevOps og infrastrukturarkitektur. De skal være i stand til at tænke strategisk og lede teamet til at finde løsninger, der kan løse problemer hurtigt og effektivt.

Softwareudviklere og softwareingeniører

Softwareudviklere og softwareingeniører er ansvarlige for at opbygge og vedligeholde den software, der driver et system. Deres ansvarsområder i et SRE-team omfatter udvikling af kode, skrivning af automatiseringsskripter og sikring af pålidelig levering af tjenester.

Det primære ansvar for en softwareudvikler eller softwareingeniør på et SRE-team er at udvikle softwareapplikationer, der opfylder organisationens behov. De samarbejder med softwareingeniører om at planlægge, designe og opbygge nye funktioner eller funktionalitet. Udviklere foretager også fejlfinding og løser fejl ved at undersøge de grundlæggende årsager og udvikle løsninger.

Desuden kan de være ansvarlige for at skrive eller opdatere dokumentation, f.eks. brugermanualer eller tekniske specifikationer.

DevOps-ingeniører

DevOps-ingeniører er ansvarlige for at automatisere en tjenestes livscyklus fra udvikling til implementering. De bruger værktøjer som Ansible og Terraform til at automatisere infrastruktur som kode (IaC). Dette giver dem mulighed for hurtigt at implementere applikationer i forskellige miljøer med minimal manuel indsats.

I SRE-teams overvåger og analyserer DevOps-ingeniører også systemets ydeevne for at identificere potentielle problemer, før de bliver til problemer. De bruger deres viden om applikationsarkitekturen til at designe, udvikle og implementere automatiserede løsninger.

Systemadministratorer

Systemadministratorer er ansvarlige for at vedligeholde en tjenestes infrastruktur. Dette omfatter opsætning og konfiguration af servere, implementering af softwareopdateringer, installation af sikkerhedspatches og udførelse af regelmæssige vedligeholdelsesopgaver.

Systemadministratorer i et SRE-team kan også være ansvarlige for at udvikle automatiserede løsninger for at forbedre systemets ydeevne, tilgængelighed og skalerbarhed. De er også i stand til at reagere hurtigt på hændelser og nedbrud ved at fejlfinde infrastrukturen for at identificere den grundlæggende årsag til eventuelle problemer.

Systemingeniører

Systemingeniører er ansvarlige for at konfigurere, administrere og vedligeholde den underliggende infrastruktur. De bruger værktøjer som Kubernetes til at implementere applikationer i containere og overvåge systemets ydeevne. Dette er med til at holde tjenestens tilgængelighed og stabilitet høj, samtidig med at de sikrer skalerbarhed over tid.

I SRE-teams samarbejder systemingeniører ofte med udviklingsteamet og DevOps-ingeniører om at designe, opbygge og vedligeholde en pålidelig infrastruktur. De bruger deres viden om applikationsarkitekturen til at optimere systemets ydeevne.

Arkitekter

Arkitekter er ansvarlige for at designe en overordnet systemarkitektur, der opfylder organisationens behov. Dette omfatter forståelse af brugernes behov, undersøgelse af gennemførlige teknologier og udvælgelse af de bedste løsninger til at opfylde disse behov.

I SRE-teams er arkitekter også ansvarlige for at designe en systemarkitektur, der er skalerbar, sikker og pålidelig. De bruger deres ekspertise inden for distribuerede systemer til at udvikle strategier til overvågning og styring af ydeevne på tværs af flere miljøer.

Netværksingeniører

Netværksingeniører er ansvarlige for at opsætte og administrere hele netværket. De bruger værktøjer som Cisco IOS og Juniper JUNOS til at konfigurere routere, switche, firewalls, VPN’er og andet netværksudstyr. Dette er med til at sikre sikker adgang til tjenester og data fra overalt i verden.

I SRE-teams er netværksteknikere også ansvarlige for overvågning og vedligeholdelse af netværksinfrastrukturen. De identificerer proaktivt potentielle problemer med netværket og arbejder på at løse dem hurtigt for at sikre kontinuerlig tjenestetilgængelighed.

Testingeniører

Testingeniører er ansvarlige for at udvikle og udføre tests for at sikre kvaliteten af en tjeneste. Dette omfatter skrivning af automatiseringsskripter og implementering af CI/CD-pipelines (Continuous Integration/Continuous Delivery).

I SRE-teams samarbejder testingeniører med udviklere om at teste nye funktioner eller funktionalitet, før de går live. De bruger deres viden om applikationsarkitekturen til at udvikle strategier for automatisering, hvilket er med til at reducere behovet for manuel testning. Derudover bruger de deres ekspertise til at udvikle præstationstest, der hjælper med at identificere potentielle problemer, før de bliver til problemer.

Kan du outsource SRE?

Ja, du kan outsource SRE. Mange organisationer beslutter sig for at hyre et eksternt team af SRE-eksperter i stedet for at opbygge deres eget interne SRE-team. Dette er en god mulighed for de virksomheder, der ikke ønsker de overheadomkostninger eller omkostninger, der er forbundet med at udvikle og vedligeholde et internt SRE-team.

Når det drejer sig om outsourcing af SRE-tjenester, er der et par ting at overveje. For det første skal du finde den rigtige SRE-partner og sikre dig, at de har de nødvendige færdigheder til at levere de tjenester, du har brug for, med høj kvalitet. Du bør også se på deres erfaring med lignende projekter og vurdere, hvordan de vil være i stand til at implementere dem for din organisation.

Endelig bør du sikre dig, at SRE-partneren har de rette værktøjer og processer til at støtte din organisation. Dette omfatter at sikre, at de har et robust system til overvågning af ydeevne og oppetid samt automatiseringssystemer til hurtigt at identificere og løse potentielle problemer.

Sidste tanker

Når du ansætter et SRE-team, er det vigtigt at lede efter personer med den rette blanding af teknisk ekspertise, problemløsningsevner og kundefokus. Systemadministratorer, systemingeniører, arkitekter, netværksingeniører og testingeniører er alle vigtige roller i et SRE-team. Hver rolle spiller en afgørende rolle for at sikre tjenestens pålidelighed, skalerbarhed og ydeevne.

Ved at investere i de rigtige teammedlemmer kan organisationer sikre, at deres tjenester er pålidelige og sikre, og at de yder godt for deres kunder. I sidste ende vil dette hjælpe dem med at nå deres ønskede forretningsmål og give en positiv kundeoplevelse.