# Automatisering och CI/CD

> Utvalt arbete från Engineer ApS som visar Automatisering och CI/CD — resultaten som bevisar det.

- [Byggde en pipeline som aggregerar elförbrukning per timme i Python / SQL / Bash + Jq och nådde 180 ms för datamängder på 30 dagar från heterogena JSONL‑källor.](https://engineer.company/sv/portfolio/engineered-hourly-electricity-consumption-aggregation-pipeline-in-python-4/)
- [Löste 1 000 problem i geodata och tidsseriedata med GDAL, ArcGIS, PostGIS, Mapbox, QGIS, SQL (PL/pgSQL, Transact‑SQL) och Bash, vilket säkrade en högkvalitativ bearbetning av stora datamängder.](https://engineer.company/sv/portfolio/resolved-1-000-issues-in-geographical-data-and-7/)
- [Utformade, implementerade och administrerade 6 ETL/ELT‑pipelines med Google BigQuery, MSSQL, PostgreSQL, Shell‑skript, PL/pgSQL och Transact‑SQL och integrerade data för effektiv bearbetning i ett Python‑API.](https://engineer.company/sv/portfolio/designed-implemented-and-administered-6-etl-elt-pipelines-8/)
- [Utvecklade och lanserade företagets första dashboard för observerbarhet, med realtidsinsikt i systemens prestanda och datavisualisering på den stora tv:n på kontoret.](https://engineer.company/sv/portfolio/developed-and-launched-the-company-s-first-observability-9/)
- [Utformade, driftsatte och underhöll 10 PostgreSQL- och MS SQL‑servrar på VPS:er med Ubuntu Linux och säkerställde optimal serverprestanda och tillförlitlighet.](https://engineer.company/sv/portfolio/designed-deployed-and-maintained-10-postgresql-and-ms-13/)
- [Stärkte datasäkerheten genom att införa 1 000 RBAC‑regler för utvecklare, applikationsinstanser, PostgreSQL, MS SQL och andra Linux‑servrar, vilket förhindrade obehörig åtkomst; dokumenterade reglerna som automatisering i Ansible.](https://engineer.company/sv/portfolio/enhanced-data-security-by-implementing-1-000-rbac-14/)
- [Automatiserade driftsättningen av en GIS‑applikation som SaaS, databearbetningen och rapporteringssystemet med GitHub Actions CI/CD, Python, Bash och SQL.](https://engineer.company/sv/portfolio/automated-gis-saas-application-deployment-data-processing-and-16/)
- [Automatiserade leveransen av 20 GIS‑datapipelines och ETL‑processer för applikationsdata, vilket effektiviserade infrastrukturautomatiseringen och rapporteringen.](https://engineer.company/sv/portfolio/automated-delivery-of-20-gis-data-pipelines-and-17/)
- [Automatiserade 100 kritiska säkerhetskopior av data med Barman, Google Cloud, Bash och Python och säkerställde dataintegriteten i samtliga databaser.](https://engineer.company/sv/portfolio/automated-100-critical-data-backups-using-barman-google-18/)
- [Driftsatte och underhöll 20 containeriserade Docker‑applikationer, felsökte med Podman och Kubernetes och förvaltade R‑baserade appar på Google Cloud och AWS.](https://engineer.company/sv/portfolio/deployed-and-maintained-20-docker-containerized-applications-troubleshooting-19/)
- [Förhindrade säkerhetsintrång genom att leda initiativ för behörighetshantering med M365, 1Password, Red Hat SSO och OKTA SSO.](https://engineer.company/sv/portfolio/prevented-security-breaches-by-leading-access-management-initiatives-21/)
- [Minskade driftriskerna genom att införa en dashboard för övervakning med Grafana och Prometheus, vilket förbättrade systemets tillförlitlighet.](https://engineer.company/sv/portfolio/mitigated-operational-risks-by-implementing-a-monitoring-dashboard-22/)
- [Förbättrade teamets kommunikation och samarbete genom att införa Slack, Mattermost, 1Password och Jira, vilket sparade 8 000 arbetstimmar.](https://engineer.company/sv/portfolio/improved-team-communication-and-collaboration-by-implementing-slack-34/)
- [Gjorde en genomgripande översyn av de interna processerna och sparade 8 000 timmar genom att förbättra mjukvaruarkitekturen, systemen och effektiviteten i schemaläggningen.](https://engineer.company/sv/portfolio/overhauled-internal-processes-saving-8-000-hours-by-38/)
- [Administrerade nätverksinfrastrukturen för över 1 000 servrar och säkerställde optimal driftsättning, säkerhet och felsökning av systemen.](https://engineer.company/sv/portfolio/administered-network-infrastructure-for-over-1-000-servers-39/)
- [Automatiserade skapandet av SSL/TLS‑certifikat för 100 Docker‑applikationer och säkerställde säkra anslutningar på alla värdar med Ubuntu Linux.](https://engineer.company/sv/portfolio/automated-ssl-tls-certificate-creation-for-100-docker-41/)
- [Effektiviserade CI/CD‑processerna och sparade 4 000 timmar genom att införa automatisering i pipelines för mjukvaruutveckling.](https://engineer.company/sv/portfolio/streamlined-ci-cd-processes-saving-4-000-hours-42/)
- [Effektiviserade processerna för dataanalys och mjukvaruutveckling och sparade 4 000 timmar genom att införa CI/CD‑arbetssätt med GitHub, GitLab, Bash och Python.](https://engineer.company/sv/portfolio/streamlined-data-analysis-and-software-development-processes-saving-43/)
- [Utvecklade ett rapportsystem för dataanalys som ökade de kvartalsvisa mjukvaruintäkterna med 400 % genom Python‑baserade PDF‑rapporter.](https://engineer.company/sv/portfolio/developed-a-data-analytics-reporting-system-increasing-quarterly-44/)
- [Automatiserade uppgifter inom databearbetning med Shell‑skript, PL/pgSQL, Python och Transact‑SQL och ökade produktiviteten och effektiviteten.](https://engineer.company/sv/portfolio/automated-data-processing-tasks-using-shell-scripting-pl-45/)
- [Effektiviserade projektarbetet och sparade 150 timmar per månad i 30 projekt genom att optimera arbetsflöden och resurshantering.](https://engineer.company/sv/portfolio/enhanced-project-efficiency-saving-150-hours-per-month-46/)
- [Byggde 600 PL/pgSQL‑baserade ETL/ELT‑pipelines för att effektivisera komplexa arbetsflöden för databearbetning i flera utvecklings- och produktionsmiljöer för PostgreSQL.](https://engineer.company/sv/portfolio/engineered-600-pl-pgsql-based-etl-elt-pipelines-54/)
- [Genererade API‑kontraktet utåt från databasen — OpenAPI, en typad TypeScript‑klient på 44 076 rader, 61 mock‑hanterare och de gränser som gränssnittet upprätthåller — med en spärr i varje led som fäller vid avvikelse.](https://engineer.company/sv/portfolio/built-a-request-schema-validation-contract-with-automated-61/)
- [Provisionerade Azure‑infrastruktur som kod med Bicep — Container Apps, PostgreSQL Flexible Server, Front Door/WAF och nätverk — i utvecklings-, staging- och produktionsmiljöerna.](https://engineer.company/sv/portfolio/provisioned-azure-infrastructure-as-code-with-bicep-container-68/)
- [Byggde CI/CD‑pipelines i GitHub Actions med en distroless‑image för frontenden i produktion och uppflyttning mellan flera miljöer.](https://engineer.company/sv/portfolio/built-github-actions-ci-cd-pipelines-with-a-69/)
- [Skrev 578 automationsmål i go‑task som täcker utvecklingslägena native, Docker och HTTPS samt lintning, testning, databas och driftsättning.](https://engineer.company/sv/portfolio/authored-578-go-task-automation-targets-70/)
- [Ansvarade för plattformens driftsättningar till Azure från början till slut och hanterade releaser i utvecklings-, staging- och produktionsmiljöerna.](https://engineer.company/sv/portfolio/owned-end-to-end-deployments-of-the-platform-71/)
- [Etablerade ett internationaliseringssystem för engelska och danska med 12 027 meddelanden per språkversion i 458 namnrymdsfiler, med ett ordförråd som lintern upprätthåller och en budget på 400 rader per fil.](https://engineer.company/sv/portfolio/established-an-english-danish-internationalization-system-with-linter-78/)
- [Satte kvalitetsribban vid noll varningar i sex språk — Go, TypeScript, SQL, Python, Shell och Markdown — upprätthållen av pre‑commit‑hookar.](https://engineer.company/sv/portfolio/set-a-zero-warnings-quality-bar-across-six-79/)
- [Utformade ett system för tidshantering och rapportering som användes i produktion i flera år utan större ändringar.](https://engineer.company/sv/portfolio/designed-a-time-management-and-reporting-system-that-88/)
- [Automatiserade teamets samarbete, lösenordshantering samt uppgifts- och tidshantering och byggde ett halvautomatiskt system för att visa upp projekt, vilket höjde teamets produktivitet.](https://engineer.company/sv/portfolio/automated-team-collaboration-password-management-task-and-time-89/)
- [Integrerade ett företagsövergripande system för lösenordshantering, vilket stärkte säkerheten och effektiviserade åtkomstkontrollen.](https://engineer.company/sv/portfolio/integrated-a-company-wide-password-management-system-strengthening-90/)
- [Byggde en skiktad automatiserad testsvit — 981 Go‑tester, 543 specifikationer för frontend och webbläsare, 494 beteendetester i SQL — med mutationstestning, egenskapsbaserade tester och en tillgänglighetsgrind.](https://engineer.company/sv/portfolio/built-a-layered-automated-test-suite-across-four-layers-94/)
- [Byggde repots kontrollmotor — 268 registrerade commit‑kontroller, 277 lintregler och 15 egna ESLint‑regler — plus 146 tester av själva kontrollerna, så att det är bygget som håller standarden, inte granskningen.](https://engineer.company/sv/portfolio/built-the-repository-s-guard-engine-of-268-checks-95/)
- [Flyttade långsamt arbete från anropsvägen till en jobbkö i River — 15 workermoduler, 8 schemalagda uppgifter och 20 pg_cron‑jobb — så att ett anrop returnerar medan arbetet bakom det fortsätter.](https://engineer.company/sv/portfolio/moved-slow-work-onto-a-river-job-queue-97/)
- [Etablerade ett kontinuerligt säkerhetsprogram — kodskanning, DAST, kontroller av beroenden och sårbarheter, generering av SBOM, skanning efter hemligheter och SHA‑låsta actions — vid sidan av 21 skriftliga säkerhetsgranskningar.](https://engineer.company/sv/portfolio/established-a-continuous-security-programme-104/)
- [Byggde företagets egen infrastruktur som 19 Ansible‑playbooks och 34 roller på 12 065 rader YAML, som konvergerar en värd i drift mot ett deklarerat tillstånd, där varje play är idempotent.](https://engineer.company/sv/portfolio/built-the-companys-infrastructure-as-code-108/)
- [Härdade SSH till 24 kontrollerade direktiv med validering i tre steg — kandidatfilen, den sammansatta konfigurationen och sedan daemonens egen återläsning — efter att återläsningen hade avslöjat att den körande servern tyst åsidosatte två av de tjugofyra.](https://engineer.company/sv/portfolio/hardened-ssh-with-three-stage-validation-111/)
- [Bevisade spärrkedjan mot intrång från början till slut vid varje härdningskörning genom att spärra en reserverad testadress, läsa den kärnregel som uppstod och häva spärren i ett städblock som alltid körs, så att en jail som slutar fungera fäller körningen i stället för att rapportera att allt är i ordning.](https://engineer.company/sv/portfolio/proved-the-intrusion-banning-path-on-every-converge-112/)
- [Verifierade brandväggsregler efter position snarare än förekomst och läste den numrerade regellistan och den aktiva paketfilterkedjan, eftersom en regel som finns inte är detsamma som en regel som något paket når.](https://engineer.company/sv/portfolio/verified-firewall-rules-by-position-113/)
- [Byggde krypterade säkerhetskopior utanför värden med restic, med gallring enligt lagringstid, en integritetskontroll och en månatlig automatiserad återläsningsövning, granskade sedan återställningsförmågan och skrev ner luckorna i stället för att låta dem upptäckas under en incident.](https://engineer.company/sv/portfolio/built-encrypted-backups-with-a-monthly-restore-drill-114/)
- [Byggde övervakning med dödmansgrepp som pingar bara så länge minne och disk är i gott skick, så att en försämrad värd larmar genom att tystna — och upptäckte sex variabelnamn som sa ”free” där kontrollen korrekt mätte ”available”, en storleksordning isär på en maskin med 464 MB.](https://engineer.company/sv/portfolio/built-dead-mans-switch-monitoring-115/)
- [Fick check mode att tala sanning i hela plattformen efter att ha hittat sex sonder som fattade beslut utifrån ett värde som värddatorn aldrig gav, eftersom command‑modulen i Ansible rapporterar framgång under --check medan den hoppar över kommandot helt.](https://engineer.company/sv/portfolio/made-ansible-check-mode-tell-the-truth-116/)
- [Lade till en play för förhandskontroll som kör samma kod som konvergeringen mot operatörens lokala hemligheter på ungefär en sekund, efter att en halvt tillämpad produktionskörning kraschade vid sin nionde uppgift med swapinställningarna redan skrivna till värden i drift.](https://engineer.company/sv/portfolio/added-a-preflight-play-for-secrets-117/)
- [Stämde av en DNS‑zon med 20 poster deklarativt mot Cloudflare‑API:t med separata ingångar för granskning och BIND‑export, och stängde av CDN‑proxyn igen av integritetsskäl efter att ha byggt den.](https://engineer.company/sv/portfolio/reconciled-a-dns-zone-declaratively-118/)
- [Minskade exponeringen i systemd‑sandlådan för varje enhet som plattformen installerar — en tjänst för dödmansgrepp från 9,6 UNSAFE till 1,5, en internetexponerad git‑forge från 8,3 EXPOSED till 1,5 — och lade till en parserkontroll vid konvergering efter att ha hittat ett felstavat direktiv som tyst ignorerades i tre enhetsmallar.](https://engineer.company/sv/portfolio/cut-systemd-sandbox-exposure-across-every-unit-119/)
- [Byggde sju skrivskyddade rapportroller som återger en värd i drift som Markdown — fakta, åtkomst, git, mätvärden, trafik, säkerhet och leverantörsinventering — under regeln att inget tal skrivs ut som körningen inte har mätt.](https://engineer.company/sv/portfolio/built-seven-read-only-host-reporting-roles-120/)
- [Driftsatte företagets egen git‑forge på Soft Serve, privat som standard, utan webbpanel och med SSH‑porten bunden till loopback bakom en hoppserver, och gjorde landningssidan framför den till en byggartefakt från huvudwebbplatsen i stället för en manuellt underhållen kopia.](https://engineer.company/sv/portfolio/deployed-the-companys-own-git-forge-121/)
- [Driftsatte en containermiljö på Podman och Quadlet under systemd i stället för Docker, eftersom Docker publicerar containerportar ovanför värdbrandväggens egna regler — och gav driftsättningarna en oprivilegierad användare med ett enda fast kommando i stället för root.](https://engineer.company/sv/portfolio/deployed-a-container-plane-on-podman-and-quadlet-122/)
- [Automatiserade provisioneringen av en andra server hos en andra molnleverantör och skapade brandväggen före maskinen så att den föds bakom en, med båda leverantörernas brandväggar skrivna direkt mot deras REST‑API:er för att undvika en collection från tredje part.](https://engineer.company/sv/portfolio/provisioned-a-second-server-from-code-123/)
- [Skrev in en avgränsningsregel i repot efter att en omstrukturering hade fört in ett annat företags värdförteckning, brandväggsundantag och text i det — och höll de karantänsatta resterna kvar under skanningen efter hemligheter i stället för att undanta dem.](https://engineer.company/sv/portfolio/wrote-a-scope-rule-after-a-credential-leak-124/)
- [Delade upp de fyra driftshemligheterna per värd efter att ha konstaterat att två värdar som delar ett dödmansgrepp larmar mindre än två separata grepp, inte mer, och att en delad lösenfras för säkerhetskopior gör två värdar till ett enda repo.](https://engineer.company/sv/portfolio/split-every-operational-secret-per-host-125/)
- [Byggde en commit‑grind med 22 linters på en rad var plus fem som förtjänar ett eget stycke, utan varningsnivå och utan tillåtna inline‑undantag, som täcker HTML, CSS, JavaScript, Python, YAML, Markdown, shell, länkar, stavning, hemligheter och typografi.](https://engineer.company/sv/portfolio/built-a-22-linter-commit-gate-127/)
- [Kortade webbplatsens webbläsarstyrda kvalitetsgrind från 1 636 sekunder till 615 genom att schemalägga kontrollerna med den längsta först i en workerpool begränsad till fyra spår, efter att ha mätt att alfabetisk ordning kostade 320 sekunder mot 224.](https://engineer.company/sv/portfolio/cut-the-visual-quality-gate-to-ten-minutes-128/)
- [Ersatte 27 renderade teckenstorlekar, vars närmaste grannar låg 0,6 % från varandra, med en Major Third‑skala i sex steg, och skrev lintern som fäller den tjugoåttonde.](https://engineer.company/sv/portfolio/replaced-27-font-sizes-with-a-six-step-scale-129/)
- [Hittade och åtgärdade 11 tillgänglighetsbrister som webbläsaren rapporterade som felfria — åtta sidfotslänkar som låg kvar i tabbordningen bakom pointer‑events, en scroll‑tidslinje som klippte bort kolofonen på tre sidor och en regelmotor som körde 70 av sina 105 regler.](https://engineer.company/sv/portfolio/fixed-11-accessibility-defects-the-browser-called-healthy-131/)
- [Stängde färgsystemet vid 28 dokumenterade färger med en linter som fäller ett värde som målas men inte är dokumenterat, dokumenteras men inte målas, är felmätt, skrivs om som en literal eller ligger inom ett perceptuellt avstånd på 0,02 från en befintlig färg.](https://engineer.company/sv/portfolio/closed-the-colour-system-at-28-colours-133/)
- [Upptäckte att det ljusa temat hade saknat ett helsidesöverlägg sedan den dag det skrevs, genom att kräva att båda teman målar varje skiktad yta med samma antal skikt.](https://engineer.company/sv/portfolio/found-the-light-theme-missing-an-overlay-layer-134/)
- [Speglade hela webbplatsen som 777 Gemini‑dokument och 777 Gopher‑dokument från samma driftsatta träd, utan en enda byte ändrad i HTML‑koden.](https://engineer.company/sv/portfolio/mirrored-the-site-to-gemini-and-gopher-137/)
- [Ersatte 963 anonyma block av strukturerad data som upprepade företaget 1 671 gånger med en enda länkad graf av 16 typer, präglade från stabila ursprungsidentifierare.](https://engineer.company/sv/portfolio/replaced-963-structured-data-blocks-with-one-graph-138/)
- [Krympte stilmallspaketet från 87 KB till 31 KB genom att ta ut ett base64‑kodat typsnitt ur det, och tog bort 756 KB i 22 filer som publicerades vid varje driftsättning utan att något refererade till dem.](https://engineer.company/sv/portfolio/cut-the-stylesheet-bundle-from-87kb-to-31kb-139/)
- [Rättade en sitemap där 172 av 176 URL:er delade samma ändringstidsstämpel genom att hämta datumet ur git‑historiken, efter att ha konstaterat att exporten skriver om varje fil vid varje körning.](https://engineer.company/sv/portfolio/fixed-a-sitemap-with-one-shared-timestamp-140/)
- [Satte dokumentationen under en egen linter — en radbudget per fil som bara kan skruvas nedåt, ett krav på index och en kontroll av verkliga sökvägar — som hittade sex av nio planer markerade som klara trots okryssade rutor, och fjorton commit‑spärrande uppgifter som inget dokument nämnde.](https://engineer.company/sv/portfolio/put-the-documentation-under-its-own-linter-142/)
- [Förde in 10 242 rader JavaScript för kvalitetsgrinden under en formaterare och en linter efter att ha konstaterat att det var den största kodmassan i repot och den enda som inget läste, och åtgärdade 13 fynd utan att undertrycka något.](https://engineer.company/sv/portfolio/brought-the-quality-gate-code-under-a-linter-143/)
- [Byggde en databasdriven generator för CV, referenser, portfolio och personliga brev i Python — 41 moduler, 10 580 rader — som renderar sex utdataformat från en SQLite‑källa med 23 tabeller, sammanställd av en idempotent pipeline i 19 steg.](https://engineer.company/sv/portfolio/built-a-database-driven-cv-and-portfolio-generator-144/)
- [Krävde 981 testfall och minst 92 % grentäckning av generatorn, med varningar behandlade som fel, och säkerställde idempotens genom att köra hela byggpipelinen två gånger från en tom fil och kräva att den andra körningen inte ändrade något.](https://engineer.company/sv/portfolio/held-the-generator-to-964-tests-and-a-coverage-floor-145/)
- [Etablerade PDF/UA‑1‑överensstämmelse i nio dokument med 106 av 106 regler, och upptäckte att arkivvarianten föll på en regel av 146 — ett knappt underkännande som ser ut som godkänt för den som inte kör valideraren.](https://engineer.company/sv/portfolio/established-pdf-ua-1-conformance-across-nine-documents-146/)
- [Aktiverade varje regel i Python‑lintern på felnivå och arbetade igenom 1 815 fynd ned till noll, där vart och ett av de få undantagen har ett skriftligt skäl och två av dem backas upp av en kontroll i stället för en kommentar.](https://engineer.company/sv/portfolio/enabled-every-python-linter-rule-as-an-error-147/)
- [Skrev tester för själva kontrollerna efter att ha konstaterat att en kontroll som bara matas med felfri indata en dag rapporterar felfritt för att den inte läste något — lade in en avsiktlig felstavning för att bekräfta att stavningskontrollen hittar den och hämtade ett id‑intervall från databasen i stället för från ett tal i testet.](https://engineer.company/sv/portfolio/wrote-tests-for-the-checkers-themselves-149/)
- [Upptäckte att commit‑hookarna och kvalitetsgrinden körde olika kontroller medan ett dokument lovade att de var desamma, genom att jämföra de två listorna i ett test — de fem som bara någonsin kördes för hand var just de som läste CV‑texten.](https://engineer.company/sv/portfolio/found-the-commit-hooks-and-the-gate-disagreeing-150/)
- [Repeterade CI‑hooken på forge‑sidan och hittade två fel som inte gick att se genom att läsa filen: en reservväg som lade ett argument som inte gick att lösa upp i hookens indata, och en miljövariabel från git själv som följde med grinden in i utcheckningen och gjorde 19 tester röda.](https://engineer.company/sv/portfolio/rehearsed-the-forge-side-ci-hook-151/)
- [Byggde en innehållskontroll mellan språken som fäller när en översättning tappar en siffra som den engelska texten anger, och när ett språk använder en notation som det inte använder — och hittade två danska beskrivningar som saknade ett mätvärde och sexton ukrainska textavsnitt som citerade på engelskt sätt.](https://engineer.company/sv/portfolio/built-a-cross-language-figure-and-notation-check-153/)
- [Skrev en parser som läser den verkliga C‑headern på 7 308 rader och verifierar varje anropsställe, varje enum‑konstant och att varje klass som äger en pekare är final, efter att en handskriven platshållarheader hade låtit anrop till tre borttagna funktioner kompilera, länka och krascha.](https://engineer.company/sv/portfolio/wrote-a-parser-that-verifies-every-ffi-call-site-157/)
- [Tog testsviten från sex tester över en gräns på sextio sekunder till 135 godkända på 8,9 sekunder genom att profilera huvudtråden och ta bort de två anrop som den befann sig i vid 3 989 av 4 017 stickprov.](https://engineer.company/sv/portfolio/took-the-test-suite-under-nine-seconds-158/)
- [Gav varje kontroll i gränssnittet som bara består av en ikon ett namn för skärmläsare efter att ha hittat skicka‑knappen uppläst som ”arrow up circle, button”, och skrev lintern som kräver etiketten inom åtta rader från ikonen.](https://engineer.company/sv/portfolio/named-all-seventeen-interface-icons-for-screen-readers-159/)
- [Byggde ett designsystem med 48 tokens på plattformens eget glasmaterial och skrev lintern som avvisar ett magiskt tal, en hårdkodad teckenstorlek eller en animering som ignorerar inställningen för reducerad rörelse.](https://engineer.company/sv/portfolio/built-a-48-token-design-system-160/)
- [Tog i bruk den hälft av meddelandekärnan som applikationen aldrig hade använt — överföring av säkerhetskopior, försvinnande meddelanden, redigering och omsändning av meddelanden, verifierade inbjudningar, proxyer och krypteringspolicy — och körde varje test mot det riktiga biblioteket utan mockar.](https://engineer.company/sv/portfolio/reached-the-unused-half-of-the-messaging-core-161/)
- [Granskade licenskompatibiliteten hos 644 Rust‑crates vid varje bygge och bevisade att kontrollen slår till genom att skriva om licensen för en crate och genom att flytta den låsta kärnrevisionen utan att generera om.](https://engineer.company/sv/portfolio/audited-644-rust-crates-for-licence-compatibility-163/)
- [Byggde företagets ikon- och favicon‑uppsättningar från två handgjorda teckningar, där varje härledd resurs genereras om med skript och en kontroll fäller när en härledd fil har committats före sin källa.](https://engineer.company/sv/portfolio/built-the-visual-identity-from-two-drawings-164/)
- [Lät fyra repon följa en och samma historikstandard — konventionella commits, fria från emojier, utan attributionsrader, upprätthållen av en hook för commit‑meddelanden — vid sidan av 48 instruktionsdokument som styr hur arbetet utförs.](https://engineer.company/sv/portfolio/held-five-repositories-to-one-history-standard-165/)
- [Mätte tretton adresser enbart utifrån webbserverns egen åtkomstlogg — ingen cookie, ingen spårare och ingen tjänst från tredje part — maskerade klientens nätverk när varje rad skrivs och förde in resultatet i ett permanent arkiv med 21 dagliga räkningar och 20 månatliga fasetter.](https://engineer.company/sv/portfolio/measured-thirteen-addresses-from-the-access-log-alone-166/)
- [Fick sex rapporterande insamlare att ange den del av sin indata som de aldrig läste — filer som förblev stängda, sonder som inte installerats, journalrader som inte kändes igen — och anpassade tröskelvärden till 116 mätningar, efter att ha konstaterat att en blind insamling och en värd i gott skick ger samma sida.](https://engineer.company/sv/portfolio/made-six-collectors-state-what-they-never-read-167/)

<https://engineer.company/sv/categories/automation/>
