# Databaser

> Utvalt arbete från Engineer ApS som visar Databaser — 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/)
- [Gjorde pipelinen för geodata 50 gånger snabbare genom bättre SQL‑programmering och datamodellering i PostgreSQL, MS SQL och Google Cloud BigQuery.](https://engineer.company/sv/portfolio/accelerated-geographical-data-pipeline-performance-by-50x-by-5/)
- [Förbättrade prestandan i en kartapplikation för geodata 10 gånger genom en strategisk databasövergång från MSSQL till PostgreSQL, inklusive själva omställningen av data, och optimerade bearbetningen och datasäkerheten.](https://engineer.company/sv/portfolio/improved-geographical-map-application-performance-by-10x-through-6/)
- [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/)
- [Publicerade 500 analysrapporter om el- och GIS‑data och använde grundlig research och felsökning för att säkerställa korrekta insikter ur stora mängder geodata och tidsseriedata.](https://engineer.company/sv/portfolio/released-500-electricity-and-gis-data-analysis-reports-11/)
- [Utformade, byggde upp och förvaltade 100 datalagerdatabaser i PostgreSQL, MS SQL och Google BigQuery, främst med GIS- och tidsseriedata, och optimerade prestanda och skalbarhet.](https://engineer.company/sv/portfolio/architected-created-and-managed-100-postgresql-ms-sql-12/)
- [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/)
- [Gjorde PostgreSQL 10 gånger snabbare med strategisk indexering, partitionering och optimering av databasfrågor och effektiviserade databasen för användar- och tenantdata, geospatiala data och tidsseriedata om el.](https://engineer.company/sv/portfolio/accelerated-postgresql-performance-by-10x-via-strategic-indexing-15/)
- [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/)
- [Styrde full stack‑utvecklingen av GIS‑kartor med ansvar för PostgreSQL, Mapbox, ReactJS och NodeJS för att leverera en integrerad lösning.](https://engineer.company/sv/portfolio/directed-full-stack-gis-map-development-overseeing-postgresql-25/)
- [Ledde utveckling, driftsättning och support av över 30 GIS‑projekt och visade expertis inom PostgreSQL, Bash, Python, JavaScript, GDAL, ArcGIS, PostGIS och Mapbox.](https://engineer.company/sv/portfolio/led-the-development-deployment-and-support-of-over-35/)
- [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/)
- [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/)
- [Utformade arkitekturen för en skiktad sjöfartsplattform som håller isär en PWA‑frontend i Next.js, ett API i Go (Huma/Fiber) och ett funktionsskikt i PostgreSQL, med all affärslogik i databasen.](https://engineer.company/sv/portfolio/architected-a-layered-maritime-platform-separating-a-next-57/)
- [Utformade en arkitektur för direkt vidarebefordran av JSON, där PostgreSQL‑funktioner returnerar komplett JSON som Go‑API:t skickar vidare ordagrant, vilket tog bort mellanliggande deserialisering och frikopplade frontenden från schemaändringar.](https://engineer.company/sv/portfolio/designed-a-json-passthrough-architecture-where-postgresql-functions-58/)
- [Utformade ett funktionsbaserat dataskikt i PostgreSQL — 1 275 lagrade funktioner i 34 scheman — så att varje läsning och skrivning går via en funktion som databasen kan ge behörighet till, i stället för via en tabell.](https://engineer.company/sv/portfolio/designed-a-postgresql-function-first-data-layer-across-63/)
- [Införde tidsordnade UUID v7‑identifierare (PostgreSQL 18) som entitetsnycklar för att minska fragmenteringen i B‑trädindex och snabba upp databasfrågor.](https://engineer.company/sv/portfolio/adopted-uuid-v7-time-ordered-identifiers-postgresql-18-64/)
- [Implementerade en katalogstyrd djupsammanslagning av lagrade JSON‑inställningar som förhindrar krascher på grund av saknade nycklar när schemat utvecklas.](https://engineer.company/sv/portfolio/implemented-a-catalogue-driven-deep-merge-for-stored-65/)
- [Modellerade sjöfartsdomänen i 348 normaliserade tabeller i 34 PostgreSQL‑scheman — yrkesverksamma, företag, fartyg, jobb, recensioner och resten — med SMALLINT‑uppslag och UUID v7‑nycklar.](https://engineer.company/sv/portfolio/modeled-the-maritime-domain-professionals-companies-ships-jobs-67/)
- [Konfigurerade lagringstiden för databasens säkerhetskopior som infrastruktur som kod, granskade sedan återställningsförmågan och dokumenterade rutinen för återläsning — och pekade ut de återstående luckorna i stället för att låta dem upptäckas under en incident.](https://engineer.company/sv/portfolio/configured-database-backup-retention-as-infrastructure-as-code-72/)
- [Härdade applikationen med nonce‑baserad CSP, HSTS, SameSite‑cookies, databasroller med minsta behörighet och förnyade kontroller av åtkomsträttigheter på serversidan.](https://engineer.company/sv/portfolio/hardened-the-application-with-nonce-based-csp-hsts-77/)
- [Fattade plattformens grundläggande beslut under veckorna efter att repot öppnades i november 2025 — skiktningen, dataåtkomst med databasen först och ribban med noll varningar — och de håller fortfarande nio månader senare.](https://engineer.company/sv/portfolio/set-the-platform-s-founding-decisions-in-november-2025-80/)
- [Byggde skiktet för betalningar och åtkomsträttigheter — Stripe vid sidan av köp i appen via Apple och Google — som spärrar katalogen, sökningen och exporten bakom en åtkomstmodell i 11 tabeller som kontrolleras på servern.](https://engineer.company/sv/portfolio/built-the-payments-and-entitlements-layer-96/)
- [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/)
- [Höll schemat korrekt genom 1 022 migreringar med en CI‑grind som bygger databasen på båda sätten — en ny installation, och en installation plus varje migrering — och fäller när de två skiljer sig åt.](https://engineer.company/sv/portfolio/kept-the-schema-honest-across-1022-migrations-99/)
- [Byggde egen produktanalys i PostgreSQL — 47 funktioner över partitionerade händelsetabeller som rensar sig själva — pseudonymiserad bakom ett roterande salt och villkorad av besökarens samtycke.](https://engineer.company/sv/portfolio/built-first-party-product-analytics-in-postgresql-101/)
- [Byggde lojalitets- och ryktessystemet — 67 funktioner över en huvudbok i 31 tabeller, med ligor, märken och en inlösenbutik — som tar ett radlås på saldot för att stänga fönstret för dubbelspendering.](https://engineer.company/sv/portfolio/built-the-loyalty-and-reputation-system-105/)
- [Byggde plattformens sociala skikt — inlägg, flöde, grupper, omnämnanden, en följargraf och en sammanställning av bemärkelsedagar — på samma funktionsbaserade dataskikt som resten av produkten.](https://engineer.company/sv/portfolio/built-the-platform-s-social-layer-106/)
- [Byggde rekryteringsmarknadsplatsen och karriärarbetsytan för sjöfolk — 151 lagrade funktioner i 48 tabeller — med lediga tjänster, ansökningar, certifikat, befordran i grad och verifierad sjötid.](https://engineer.company/sv/portfolio/built-the-hiring-marketplace-and-career-workspace-107/)
- [Genererade 495 resultatsidor på tre språk från en skrivskyddad SQLite‑export, med sidadressen angiven som data så att en rättad mening inte längre flyttade sidan och bröt länken.](https://engineer.company/sv/portfolio/generated-321-achievement-pages-from-a-sqlite-export-132/)
- [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/)
- [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/)

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