Hoppa till innehållet

Teknikstack

Teknikerna Engineer ApS bygger med: språk, dataplattformar, moln och infrastruktur, och hur vi avgör vad vi ska använda.

Ett verktyg är ett medel. Det en kund köper är omdömet som väljer rätt verktyg och disciplinen att driva det väl — men du frågade vad vi arbetar med, så här är det, och varje rad backas upp av arbete i portföljen.

Språk och körmiljöer

Python för dataarbete, automatisering och tjänster. Go där en enda statisk binär och låg overhead spelar roll. TypeScript och modern JavaScript i webbskiktet. SQL som ett fullvärdigt språk snarare än något en ORM genererar — det mesta av det prestandaarbete vi kallas in för finns där. Bash för limmet, skrivet för att läsas.

Data

PostgreSQL är standardvalet, och vi kommer långt med det innan vi sträcker oss efter något annat — partitionering, replikering, tillägg och frågeplaneraren. Vi driver också MS SQL Server, BigQuery, SQLite och Redis, och den geografiska stacken ovanpå: PostGIS, QGIS, GDAL och ArcGIS. Pipelines byggs för att kunna köras om och vara idempotenta, eftersom frågan efter en incident alltid är ”kan vi spela upp det igen”.

Varje verktyg nedan är valt av någon som har kört det i produktion klockan tre på natten.

Listan är lång för att problemen var olika, inte för att verktygen samlades på.

Moln och infrastruktur

Google Cloud och AWS, med Azure där kunden redan finns. Linux under allt — Debian och Ubuntu. Docker och Kubernetes för de arbetslaster som förtjänar dem, och vanliga systemd-enheter för dem som inte gör det. Ansible och Terraform beskriver maskinerna, så att en miljö är ett dokument snarare än ett arkeologiskt projekt. Caddy och nginx längst fram.

Att driva det i produktion

Prometheus och Grafana för mätvärden, strukturerad loggning för resten, och larm som går på symtom en användare skulle märka snarare än på varje ryck i en graf. CI-pipelines som bygger, testar, skannar och driftsätter utan en människa i loopen. Säkerhetskopior som tas, och återställningar som testas.

Webbskiktet

Statiskt först där det passar, eftersom en sida som är en fil är en sida som inte kan falla omkull: Hugo bygger den här webbplatsen. Django och PHP där det finns en applikation att leverera. Semantisk HTML, handskriven CSS och tillgänglighet behandlad som ett krav snarare än ett granskningsfynd.

Hur vi väljer

Tråkig teknik, vald med avsikt, slår ny teknik vald av slentrian. Vi väljer efter problemet, efter vad ditt team kan driva när vi har gått och efter hur saken fallerar snarare än hur den ser ut i en demo. När rätt svar är stacken du redan har säger vi det — och när det inte är det säger vi det också, med resonemanget nedskrivet.

Den här webbplatsen är sitt eget skolexempel: kolofonen namnger varje teknik bakom den, ända ned till typsnittet och verktyget för säkerhetskopior.

Om du hellre vill ha en leverantör med åsikter än en med en lista över preferenser, berätta vad du bygger.

Engineer-maskoten: en vänlig blå och vit robot i en kretsmönstrad mantel, som arbetar vid en bärbar dator och ger tummen upp över axeln

En lista över verktyg är ingen kvalifikation — att veta vilket ditt problem behöver är det.

Varje teknik på den här sidan står bakom arbete du själv kan öppna och läsa.