AI som kodpartner: vad jag lärt mig efter månader med Claude Code
Av David Beck, senior utvecklare på nvrmind
Efter att ha använt Claude Code en del är min bild ganska tydlig: AI är ett enormt produktivitetsverktyg, men bara om man fortsätter tänka själv.
Vad AI faktiskt gör bra
I praktiken märker jag att jag idag kan:
- Spinna upp POC:er och skriva om mindre appar väldigt snabbt
- Sätta mig in i stora kodbaser betydligt snabbare
- Bryta ner enorma stack traces till något begripligt, fortare
- Få hjälp att hitta rätt dokumentation inom områden där min egen kunskap är ytligare, exempelvis vissa nischade DevOps-detaljer
- Testa hypoteser och lösningar mycket snabbare än tidigare
Jag blev också positivt överraskad av hur försiktigt Claude Code arbetar med den lokala utvecklingsmiljön. För exempelvis databasversionering och API-smoketester skapade den separata Docker-instanser istället för att röra min befintliga stack.
Men det finns tydliga problem
Claude gör ofta "sin egen grej." Trots explicita instruktioner om att använda ett dedikerat komponentramverk byggde den egna frontend-komponenter. Det slutade med att jag fick rensa kod och styra tillbaka implementationen.
Säkerhet kommer inte automatiskt. Jag har behövt styra den mot säkrare hantering av cookies, SQL-injection och andra grundläggande säkerhetsfrågor. En utvecklare som inte vet vad den ska leta efter riskerar att acceptera dåliga lösningar utan att förstå konsekvenserna.
Den gör klassiska juniormisstag och löser symptom lokalt istället för att leta efter grundproblemet. I ett auth-flöde ville Claude exempelvis skicka en special-boolean genom flera lager av funktioner för att lösa ett edge case. Först när jag styrde den tillbaka till rätt call site blev lösningen ren.
Den viktigaste lärdomen
"AI förstärker erfarenhet men accelererar även dåligt beslutsfattande."
Som senior utvecklare upplever jag ofta 2–5x högre produktivitet, eftersom jag relativt snabbt kan se när något är elegant, tveksamt, onödigt komplext eller direkt fel. Men just den produktivitetsökningen bygger på att någon faktiskt kan göra den bedömningen.
Därför tror jag att vi behöver vara extra försiktiga med hur AI används av juniora utvecklare. En AI-genererad PR på 55 filer bör varken förväntas eller accepteras, den bör granskas minst lika noggrant som handskriven kod, kanske noggrannare.
AI förändrar inte heller behovet av tekniskt ledarskap. När ett team har kommit överens om arkitektur och riktning bör AI-genererad kod följa samma principer. Avvikelser behöver fortfarande motiveras.
Impulsstyrd och utan kontakt
"Claude är lite som en femåring: impulsstyrd och utan kontext."
Det är en liknelse jag återkommer till, för den fångar något viktigt. En instruktion som känns självklar för en "vuxen" kan resultera i en imponerande mängd sidouppdrag. När man säger till sin femåring att vi ska till McDonald's kanske barnet går rätt ut i trafiken, eftersom McDonald's ligger över vägen. Då behöver man som vuxen förklara att vi först måste gå till övergångsstället, vänta på grönt ljus, och sedan passera.
På samma sätt kan du inte be en AI "fixa så att lösenordsåterställningslänken inte skickar användaren till inloggningssidan." AI:n ser problemet och hittar snabbt en väg runt det, exempelvis genom att skicka en skipAuth-flagga genom flera lager av applikationen. Det fungerar. McDonald's är nått. Men det är inte så du själv hade gjort det.
Och kanske viktigast: en dålig dag på jobbet blir inte en bra dag bara för att man har AI. Om ditt omdöme är sämre den dagen kan AI lika gärna hjälpa dig att fatta dåliga beslut snabbare.
Verktyg, inte magi
Min slutsats är ändå väldigt positiv. AI-kodverktyg är i många fall en massiv produktivitetsökning. Men jag ser dem som verktyg, inte som magi.
Läs ändringarna. Förstå dem. Utmana lösningarna. Fråga dig själv: hade jag gjort samma sak, och är detta sämre, eller faktiskt bättre?
Används AI på det sättet frigörs enormt mycket mental kapacitet till det som faktiskt är viktigast i mjukvaruutveckling.
Om skribenten:
David Beck är senior fullstack utvecklare på nvrmind med fokus på backendarkitektur. Han har jobbat med AI-assisterande utvecklarverktyg sedan de började dyka upp. Här delar han sina lärdomar och insikter
Publicerat av: