AI i jobbet för en frontendare - Andreas Jönsson på Rebel and Bird

AI i jobbet för en fullstackutvecklare

Flera av oss på Rebel and Bird använder AI dagligen i vårt arbete. Med vad använder vi för verktyg? Och vilket värde ger det oss i våra olika roller? Idag berättar Andreas Jönsson, fullstackutvecklare, om hur han använder Github Copilot och ChatGPT i sitt arbete med ramverken Gatsby/React och kodspråket Typescript.

Hej Andreas! Berätta, vad har du för roll på Rebel and Bird och vad gör du om dagarna?

- Jag är fullstackutvecklare och jobbar för närvarande med Parks and Resorts som frontendutveckare. Plattformen jag jobbar med är byggd i Gatsby/React med Typescript. 

Vilka AI-verktyg använder du i ditt jobb som fullstack och hur använder du dem?

- Jag använder främst GitHub Copilot och det använder jag via ett plugin till Visual Studio Code. Det ger “code suggestions” i koden och man kan man skriva prompts baserat på markerad kod, eller fritt i en chattruta. Jag har inte använt det så länge så jag har inte testat och utvärderat det så mycket som jag vill ännu, utan det finns nog mer att upptäcka!

Vilket värde ger det dig i ditt jobb? 

- Framförallt har Copilot varit bra för att hjälpa mig att minska mängden monotona/tråkiga uppgifter, t.ex. boilerplate för att skapa nya React-komponenter, actions/reducers i state-hanterare, samt fylla i input för testdata i enhetstester. Ibland har den hjälpt till med att översätta data/kod från ett format till ett annat, typ “konvertera denna lista av orders till typen OrderRows”. Den har även hjälpt till med att fylla i översättningar, och skapa upp JSDocs-dokumentation för funktioner/komponenter. 

Ser du några utmaningar med att använda AI i ditt jobb?

- Ja, det finns ju förstås flera. En grej som sker (och händer ofta) är att AI-verktygen föreslår dålig kod. Jag har kommit till den punkt att jag ser förslagen främst som boilerplates som man fyller med rätt värden och att det alltså aldrig är färdiga lösningar man får. Jag blir istället positivt överraskad när förslagen faktiskt är exakt vad jag vill ha! Något som är irriterande är att den i vissa fall är sämre än IntelliSense, till exempel att den föreslår properties som inte finns på typen, vilket bara sänker min produktivitet jämfört med när jag bara använde IntelliSense.