Willemse was born in Strand. He attended and played rugby for Paul Roos Gymnasium in nearby Stellenbosch. In 2014, he was selected to represent at the Under-16 Grant Khomo Week held in Pretoria. He started all three of their matches, helping them to three victories, scoring a try in the final match of the tournament, a 26–11 win over hosts the. In 2015, Willemse was selected in the Western Province squad for South Africa's premier high schoolrugby tournament, the Under-18 Craven Week. He started all three of their matches in the tournament held in Stellenbosch, scoring tries in a 65–5 victory over the and in the unofficial final, helping his team to a 95–0 victory over Eastern Province. After the tournament, he was included in the South Africa Schools squad for the Under-18 International Series, involving their counterparts from Wales, France and England. He came on as a replacement in their 42–11 victory over Wales, before starting their 12–5 win over France. He was named on the bench for their final match against England, but remained unused as the hosts completed a whitewash in the competition, winning 23–16. 2016 again saw Willemse selected for the Western Province Craven Week side for the tournament in Durban and he again started all three of their matches. He scored two tries in their first match against Boland, and helped the team to a 27–20 victory in the final match against the Golden Lions. He earned a second call-up to the South African Schools team, this time starting all three of their matches in the fly-half position. South Africa beat Wales in their first match and Willemse scored try in their match against the France Under-19s in a 42–3 win. South Africa again completed a clean sweep, beating England 13–12 in their final match. After his international involvement, Willemse also appeared for the team in the 2016 Under-19 Provincial Championship. He appeared as a replacement in three of their final four matches of the regular season, scoring a try on his debut at this level against the s and kicking conversions in matches against the s and the s in the other two, to help Western Province finish top of the log to qualify for the play-offs. He was promoted to the starting line-up for their 30–15 victory over in the semi-finals, and also started the final, where his team lost 19–60 to the s.
2017: Stormers
Only months after finishing school, Willemse was included in the squad for the 2017 Super Rugby season. He was included in a matchday squad for their Round Three match against the on 4 March, and he made his Super Rugby debut – aged just – by coming on for the final four minutes of the match.
International career
Damian Willemse made his international debut for South Africa in the 2018 Rugby Championship against Argentina at Kings Park Stadium in a 34-21 victory, coming off of the bench and substituting André Esterhuizen. Willemse was not initially named in South Africa's squad for the 2019 Rugby World Cup. However he was called up to replace the injured Jesse Kriel in the pool stage. South Africa went on to win the tournament, defeating England in the final.