Uppsala universitet, Institutionen för informationsteknologi

Postdoktor i datavetenskap: minnessäkerhet och samtidighetssäkerhet för “managed” programspråk

Institutionen för informationsteknologi har en ledande position inom såväl forskning som utbildning på alla nivåer. Vi är idag Uppsala universitets tredje största institution och har i dag drygt 350 anställda varav 120 lärare och 120 doktorander. C:a 5000 grundutbildningsstudenter läser en eller flera kurser vid institutionen varje år. Mer information om oss hittar du på institutionen för informationsteknologis webbplats. https://www.uu.se/institution/informationsteknologi

Beskrivning av ämnesområdet
Minnessäkerhet har är centralt för cybersäkerhet. Minnessäkerhet är en egenskap hos program som inte gör åtkomst till eller manipulerar minne på oavsiktliga sätt. Exempelvis lider minnessäkra program inte av otillåten eller ogiltig pekaråtkomst, “use-after-free”-fel, “double-free”-fel eller buffertöverskridningar. Programspråk som exekverar i en “managed runtime” ger starka garantier för minnessäkerhet genom automatisk minneshantering eller "skräpsamling". Samtidighetssäkerhet (eng. concurrency safety) avser att ett program beter sig som förväntat även när flera delar av det körs samtidigt,  detta innefattar till exempel frihet från kapplöpningsproblem (eng. data races), säkerställande av atomicitet och korrekthet under synkronisering. Det finns flera exempel på hur dessa två säkerhetaspekter kan hanteras tillsammans, till exempel i programspråket Rust (genom ett starkt statiskt typsystem med ägare) och Erlang (helt dynamiskt). I detta projekt undersöker vi hur man kan attackera båda dessa problem i imperativa programspråk genom deras exekveringsmiljö. Specifikt kommer vi att samarbeta med en stor mjukvaruleverantör för att göra ett vanligt programspråk samtidghetssäkert. Vårt angrepssätt är att lägga till begrepp som ägarskap till språkets exekveringsmiljö. Korrekt hantering av ägarskap kommer att säkerställas främst genom körtidskontroller vilket get bakåtkompatibilitet med befintlig fungerande kod. Effektiv kontroll möjliggörs genom att bygga på konstruktioner för samtidig skräpsamling och kommer att designas tillsammans med samtidighetsmodellen (eng. concurrency model). I slutet av projektet kommer en hel klass av problem och defekter att vara omöjliga i program som körs ovanpå denna exekveringsmiljö. Den framgångsrika kandidaten förväntas bedriva forsknings- och implementeringsarbete inom detta område samt ta en aktiv roll i att rådgiva doktorander.

Arbetsuppgifter 
Forskning inom programspråk med stark koppling till hårdvara.
Design och implementation av samtidighetsmodeller i en exekveringsmiljö skriven i C++.
Handledning av doktorander och masterstudenter inom ramarna för projektet, och angränsande projekt.
Fysiska och digitala möten med ingenjörer och utvecklare för programspråket.
Upp till 20% undervisning beroende på intresse och kvalifikationer. 

Kvalifikationskrav
Doktorsexamen i datavetenskap eller en utländsk examen som bedöms motsvara doktorsexamen i datavetenskap. Examen ska vara uppfyllt senast vid tidpunkten då anställningsbeslutet fattas. Främst bör den komma ifråga som har avlagt examen för högst tre år sedan. Vid beräkning av ramtiden om tre år är utgångspunkten sista ansökningsdag. Om det finns särskilda skäl kan sådan examen ha avlagts tidigare. Med särskilda skäl avses ledighet på grund av sjukdom, föräldraledighet, förtroendeuppdrag inom fackliga organisationer, etc.

Den sökande måste kunna arbeta bra i grupp, vara bra på att ge och ta emot konstruktiv kritik, och ha en stark förmåga till kritiskt tänkande och strukturerat arbete. Dessa kompetenser är lika viktiga som de tekniska kvalifikationerna. Utmärkt muntlig och skriftlig engelska är ett krav. Den sökande måste bevisa hög självmotivation i ansökan.

Önskvärt/meriterande i övrigt
Vi letar efter en kandidat med expertis inom programspråk, idealiskt inom "concurrency safety". Erfarenhet av programspråksdesign och -implementation är en stor fördel, men inte ett krav eftersom vi har expertis inom projektet som kan hjälpa kandidaten att lära sig det som behövs. Dokumenterad erfarenhet av “behaviour-oriented concurrency”.

Om anställningen 
Anställningen är tidsbegränsad i 2 år. Omfattningen är heltid. Tillträde enligt överenskommelse. Placeringsort: Uppsala

Ansökan
Ansökan skall innehålla en redogörelse (högst 2 sidor) om kandidatens motivation för att söka tjänsten, inklusive forskningsintressen och hur de kommer att stödja detta projekt, en beskrivning av doktorsavhandling, och bevis på självmotivation och konstruktivt arbete i ett team. Ansökan skall också innehålla ett CV, examina och betyg (översatta till engelska eller svenska), en kopia av doktorsavhandlingen, publikationer (och specifika beskrivningar av kandidatens egna bidrag), andra relevanta dokument och tidigaste möjliga startdatum. Minst ett rekommendationsbrev och kontaktinformation för referenser ska tillhandahållas direkt av referenserna till professor Wrigstad.

Upplysningar om anställningen lämnas av: professor Tobias Wrigstad, tel 018-471 1072 tobias.wrigstad@it.uu.se eller Professor David Black-Schaffer, tel. 018-471 6830, david.black-schaffer@it.uu.se.

Välkommen med din ansökan senast den 6 september 2024, UFV-PA 2024/2681.

Anställningsform Tidsbegränsad anställning
Anställningens omfattning Heltid
Tillträde enligt överenskommelse
Löneform Individuell lönesättning
Antal lediga befattningar 1
Sysselsättningsgrad 100%
Ort Uppsala
Län Uppsala län
Land Sverige
Referensnummer UFV-PA 2024/2681
Facklig företrädare
  • Seko Universitetsklubben, seko@uadm.uu.se
  • ST/TCO, tco@fackorg.uu.se
  • Saco-rådet, saco@uadm.uu.se
Publicerat 2024-08-14
Sista ansökningsdag 2024-09-06

Tillbaka till lediga jobb